signerade heltal är siffror med ett ”+” eller ”-” tecken. Om n bitar används för att representera ett signerat binärt heltal, då av n bitar, kommer 1 bit att användas för att representera ett tecken på numret och resten (n – 1)bitar kommer att användas för att representera magnitud del av själva numret.
ett verkligt exempel är listan över temperaturer (korrekt till närmaste siffra) i olika städer i världen. Självklart är de signerade heltal som +34, -15, -23 och +17. Dessa siffror tillsammans med deras tecken måste representeras i en dator med endast binära notationsbanor.
det finns olika sätt att representera signerade nummer i en dator−
-
tecken och storlek
-
ett komplement
-
två komplement
det enklaste sättet att representera ett signerat tal är metoden sign magnitude(SM).
Sign and magnitude − det binära formatet sign-magnitude är det enklaste konceptuella formatet. I denna metod för att representera signerade nummer får den mest signifikanta siffran (MSD) extra betydelse.
-
om MSD är en 0 kan vi utvärdera numret precis som vi skulle göra med ett normalt osignerat heltal. Och vi ska också behandla numret som ett positivt.
-
om MSD är en 1, indikerar detta att siffran är negativ.
de andra bitarna anger storleken (absolut värde) för numret. Några av signerade decimaltal och deras motsvarighet i SM notation följer förutsatt att en ordstorlek på 4 bitar.
signerad decimal | teckenstorlek |
---|---|
+6 | 0110 |
-6 | 1110 |
+0 | 0000 |
-0 | 1000 |
+7 | 0111 |
-7 | 1111 |
intervall
från ovanstående tabell är det uppenbart att om ordstorleken är n bitar, är det antal siffror som kan representeras från -(2n-1 -1) till +(2n-1 -1). En tabell med ordstorlek och intervallet av SM-nummer som kan representeras visas i följande.
Ordstorlek | intervall för SM-nummer |
---|---|
4 | -7 till +7 |
8 | -127 till +127 |
16 | -32767 till +32767 |
32 | -2147483647 till +2147483647 |
Observera att bitsekvensen 1101 motsvarar det osignerade numret 13, liksom numret -5 i SM-notation. Dess värde beror bara på hur användaren eller programmeraren tolkar bitsekvensen.
ett komplement-detta är en av metoderna för att representera signerade heltal i datorn. I den här metoden får den mest signifikanta siffran (MSD) extra betydelse.
- om MSD är en 0, kan vi utvärdera numret precis som vi skulle tolka alla normala osignerade heltal.
- om MSD är en 1, indikerar detta att siffran är negativ.
de andra bitarna anger storleken (absolut värde) för numret.
om siffran är negativ, betyder de andra bitarna 1: s komplement till storleken på numret.
några signerade decimaltal och motsvarande i 1: s komplementnoteringar visas nedan, förutsatt att en ordstorlek på 4 bitar.
signerad decimal | 1 komplement |
---|---|
+6 | 0110 |
-6 | 1001 |
+0 | 0000 |
-0 | 1111 |
+7 | 0111 |
-7 | 1000 |
intervall
från ovanstående tabell är det uppenbart att om ordstorleken är n bitar, är intervallet av siffror som kan representeras är från – (2n-1-1) till+(2n-1 -1). En tabell med ordstorlek och intervallet 1: s komplementnummer som kan representeras visas.
Ordstorlek | intervall för 1: s komplementnummer |
---|---|
4 | -7 till +7 |
8 | -127 till +127 |
16 | -32767 till +32767 |
32 | -2147483647 till +2147483647 2 20+9 (ca.) |