Jak převést záporná čísla na binární

Téměř jistě jste slyšeli o záporných číslech. Pokud jste byli co i jen trochu vystaveni světu počítačové vědy a programování, koncept binárních čísel není úplně cizí. Pokud jste ale osobně neprozkoumali programovací svět, pravděpodobně jste nikdy podstatně nepracovali s binárními čísly.

Protože počítače nemohou samy „myslet“ nebo „rozhodovat“, ale dokážou plnit objednané pokyny s neochvějnou přesností, matematici už dávno přišli s možností, aby počítače (nebo dostatečně trpěliví lidé) prováděli sčítání, odčítání a další matematické operace pouze s použitím číslic 0 a 1.

Existuje ale způsob, jak spojit tyto dvě myšlenky a vytvořit záporná čísla? Je to tak jednoduché, jako říct stroji, aby nalepil malou vodorovnou čáru před existující číslo a la pero a papír, nebo díky faktoru „bitů a bajtů“ se věci více zapojují?

Co jsou to binární čísla?

Počítače mají enormní výpočetní výkon a dokonce i starý clunker dokáže provádět výpočty rychlostí, která by se zdála nepochopitelná i pro nejaritmeticky nadanou lidskou bytost. Ale nejsou to mozky a jediný způsob, jak je přimět ke zpracování složitých informací, je odsunutí všeho možného do jednoho ze dvou stavů, např. ZAPNUTO nebo VYPNUTO.

V „počítači“ se jedna 0 nebo 1 označuje jako a bit. Mezi ně patří skupiny nybble (4 bity), dobře známý byte (8), slovo (1) a dlouhé slovo (32).

Desetinná čísla, která obvykle vidíte, například 492 a 35, jsou „base-10“, protože obsahují 10 progresivních symbolů (číslice 0 až 9), které „převrácení“ na další místo vlevo - další „síla 10“ Binární čísla místo toho obsahují pouze dva symboly (číslice 0 a 1) a jsou „base-2.“ Každý pohyb doleva od konce čísla je rostoucí síla dvou: Koncové číslice představují 1, další 2, poté 4, 8, 16 a již brzy.

  • Desetinné číslo je jakékoli číslo v systému base-10, ne nutně číslo, které obsahuje desetinnou čárku.

Příklady binárních čísel

Binární "nybble" 0101 má 1 na 1 a 4 místě a 0 na 2 a 8 místě. Jeho desetinný ekvivalent je tedy 1 + 4 = 5.

Podobně je bajt 1001 1100 ekvivalentní 128 + 16 + 8 + 4 (28 + 25 + 24 + 23) = 156.

The doplněk binárního čísla je pouze číslo s přepnutými číslicemi. Například doplněk 1001 1100 = 0110 0011.

Převod záporných čísel na binární

Jak převést záporné desetinné číslo na binární číslo je pravděpodobně docela na rozdíl od jiných číselných převodů jste provedli, protože vaše mysl je navzdory své komparativní lenosti mnohem flexibilnější než většina ostatních PROCESOR. Je to však přímočarý proces.

Převod se provádí pomocí a binární doplněk dvou, což vyžaduje, aby programátor instruoval počítač, aby interpretoval jakékoli binární číslo začínající 1 jako záporné. Program pak sestaví odpovídající kladné číslo v binární podobě, vezme jeho doplněk a přidá jedno.

Například vzhledem k číslu −47 by počítač vytvořil binární číslo pro +47:

0001 1111

Doplňkem je:

1110 0000

Přidáním jednoho k tomu získáte:

1110 0001

Všimněte si, že počítač „podepsal“ tato čísla, aby považoval vedoucí 1 za negativní a výsledky zpracoval jinak, než jednoduše sčítal mocniny 2 obsazené symbolem 1.

  • Podíl
instagram viewer