Reprezentace čísel a základní dvojkové aritmetické operace v počítači

Binární čísla se znaménkem

Přímý kód

Kladné číslo se od záporného liší pouze hodnotou nejvyššího bitu (0 – kladná čísla, 1 – záporná čísla)

přímý kód

Příklad převodu:

Doplňkový kód

Číslo s opačným znaménkem se získá inverzí hodnot všech bitů a aritmetickým přičtením 1 k nejnižšímu bitu

doplňkový kód

Příklad převodu:

Kód transformované nuly

Číslo s opačným znaménkem se prakticky získá z čísla v doplňkovém kódu změnou hodnoty nejvyššího bitu.

Obvykle se používá pro zobrazení čísel v pohyblivé řádové čárce.

pro z intervalu

Příklad převodu:

Informací o znaménku čísla ve všech uvedených kódech nese nejvyšší bitznaménkový. Všechny ostatní bity jsou významové.

Základní aritmetické operace

Sčítání

 0101 5   1001  9
+0100 4  +1010 10
-------   -------
 1001 9  10011 19
         ^
         Přetečení

Odčítání

Podobné jako sčítání, ale pokud od 0 odečteme 1, výsledek je 1 a musíme odečíst 1 (vypůjčit si) i ze sloupečku vlevo.

 1001 9
−0101 5
-------
 0100 4

Násobení

Délka výsledku násobení dvou binárních čísel nelze jednoduše odhadnout – výsledek se ukládá do dvojnásobně velkého prostoru.

   1011
  ×1010
  -----
   0000
  1011
 0000
1011
-------
1101110

Pevná řádová čárka

V tomto zobrazení definujeme místa před a místa za řádovou čárkou. Dnes už se pro desetinná čísla téměř nepoužívá. Na klasická celá čísla se dá pohlížet jako na čísla s pevnou řádovou čárkou a 0 místy za čárkou.

Plovoucí řádová čárka

S – znaménko

E – exponent – celé číslo, vyjadřuje řád

M – mantisa – reálné číslo, vyjadřuje hodnotu

B – základ – 2

Příklad:

17

65536

Toto číslo by se na 14 bitů u FX nikdy nevešlo. Problém je s malými čísly ⇒ použije se lichý nebo sudý posuv. Zavede se BIAS (posunutí)

bias

Standard IEEE 754

Ukládá binární čísla v plovoucí desetinné čárce na 32 bitech (jednoduchá přesnost) nebo 64 bitech (dvojitá přesnost). Dané číslo je rozděleno na základ a exponent. Nejlevější bit je vždy znaménkový, následuje 8 bitů pro exponent a zbylých 23 je základ. Na 64 bitech je rozdělení 1, 11, 52.