V počítači často potřebujeme pracovat se zápornými nebo desetinnými čísly. Protože však počítače používají pouze nuly a jedničky, je potřeba tato čísla nějakým způsobem zapisovat bez použití mínusu nebo desetinné čárky.
Záporná čísla
Existuje více způsobů, jak zapisovat záporná čísla. Obvykle máme daný určitý počet bitů, se kterými můžeme pracovat, často jeden byte.
V přímém kódu první bit zleva slouží pro uchování znaménka čísla. Obsahuje 0, pokud je číslo kladné, a 1, pokud je záporné. Na ostatních 7 bitů se zapíše absolutní hodnota čísla. Číslo 5_{10} se tedy v jednom bytu zakóduje jako 0000 0101 a -5_{10} jako 1000 0101.
V inverzním kódu nejprve zapíšeme absolutní hodnotu čísla. Pokud je číslo kladné, dál neděláme nic. Pokud je záporné, obrátíme hodnotu všech bitů (vyměníme 0 za 1 a naopak). Číslo 5_{10} se tedy v jednom bytu napíše jako 0000 0101 a -5_{10} jako 1111 1010.
Kódování v doplňkovém kódu (dvojkovém doplňku) začíná podobně jako v inverzním. Nejprve napíšeme absolutní hodnotu čísla a pokud je číslo kladné, dál nepokračujeme. Pro záporná čísla provedeme obrácení (inverzi) bitů a následně ještě přičteme jedničku. Číslo 5_{10} tedy v jednom bytu zapíšeme jako 0000 0101 a -5_{10} jako 1111 1010 + 1 = 1111 1011. Pokud chceme získat hodnotu záporného čísla nebo obrátit znaménko zpět do plusu, provedeme ten samý sled operací. Nejprve obrátíme všechny bity a poté přičteme 1. Pro číslo -5_{10} by to vypadalo následovně: inverze bitů: 1111 1011 → 0000 0100, přičtení jedničky: 0000 0100 + 1 = 0000 0101. Získali jsme číslo 5_{10}.
Ve všech třech kódech poznáme záporné číslo podle toho, že má na prvním místě zleva 1. Kladná čísla na této pozici vždy obsahují 0.
Desetinná čísla
Desetinná čísla mohou být velmi dlouhá, občas mají dokonce nekonečný zápis. Počítače však mají omezený prostor v paměti, proto se i desetinná čísla ukládají na omezený počet bitů. Tento způsob reprezentace se nazývá zápis s plovoucí desetinnou čárkou a kvůli zmenšenému prostoru může být občas trochu nepřesný.
V zápisu s plovoucí desetinnou čárkou se číslo ukládá pomocí dvou hodnot: mantisy a exponentu. Ve speciálním bitu se navíc uchovává znaménko čísla, pro kladná se uloží 0 a pro záporná 1.
Mantisa představuje základ čísla – v podstatě jsou to číslice použité v zápisu. Desetinná čárka se v mantise nachází vždy na předem dohodnuté pozici, často například za první číslicí zleva. Čím větší prostor (počet bitů) máme na mantisu, tím přesněji můžeme číslo uložit.
Exponent je počet míst, o které se má desetinná čárka v mantise posunout, abychom dostali původní číslo. Kladný exponent znamená posun směrem doprava, čímž se číslo zvětšuje. Záporný exponent značí posun desetinné čárky doleva, tím se číslo víc přibližuje nule. Čím víc místa máme na exponent, tím větší rozsah hodnot můžeme ukládat.
Například číslo 1101{,}001_2 bude mít mantisu 1{,}101 001_2 a exponent 3_{10}. Ve znaménkovém bitu bude 0.
Na obrázku je příklad, jak může být jedno číslo uloženo v paměti počítače na 32 bitech (4 bytech).