Sign bit

Inom datavetenskap är teckenbiten en bit i en teckentalsrepresentation som indikerar tecknet för ett tal . Även om endast signerade numeriska datatyper har en teckenbit, är den alltid placerad i den mest signifikanta bitpositionen , så termen kan användas omväxlande med "mest signifikanta bit" i vissa sammanhang.

Nästan alltid, om teckenbiten är 0, är ​​talet icke-negativt (positivt eller noll). Om teckenbiten är 1 är talet negativt, även om andra format än tvås komplementheltal tillåter en noll med tecken : distinkta representationer av "positiv noll" och "negativ noll", av vilka den senare inte motsvarar det matematiska konceptet för ett negativt nummer .

I de tvås komplementrepresentation har teckenbiten vikten −2 w −1 där w är antalet bitar. I ettornas komplementrepresentation är det mest negativa värdet 1 − 2 w −1 , men det finns två representationer av noll , en för varje värde på teckenbiten. I en tecken-och-storleksrepresentation av tal bestämmer värdet på teckenbiten om det numeriska värdet är positivt eller negativt.

Flyttal , som IEEE-format , IBM-format , VAX -format och till och med formatet som används av Zuse Z1 och Z3 använder en representation av tecken och storlek.

När du använder en komplementrepresentation, för att konvertera ett tecken med tecken till ett bredare format, måste de extra bitarna fyllas med kopior av teckenbiten för att bevara dess numeriska värde, en process som kallas teckenförlängning eller teckenförökning .