Av Isaiah David — Uppdaterad 30 augusti 2022
Moderna datorer förlitar sig på binär – bas-2 – eftersom elektroniska kretsar på ett tillförlitligt sätt bara kan representera två tillstånd:på (1) och av (0). Denna enkelhet leder till snabbare, mer tillförlitliga aritmetiska operationer.
För att illustrera konverteras decimaltalet 9 till binärt som 1001. Varje binär siffra representerar en potens av två:1×8 + 0×4 + 0×2 + 1×1 =9.
Att addera tal i binärt följer samma logik som decimaladdition men med en bas på två. När två 1:or läggs till blir resultatet 0 med en överföring av 1. Att till exempel lägga till 5 (0101) och 4 (0100) fortsätter enligt följande:
0101 +0100 ------ 1001 (9)
Operationen är effektiv och utgör ryggraden i all aritmetik på högre nivå.
Multiplikation implementeras via upprepad binär addition, ofta med hjälp av shift-and-add-algoritmer. Även om det kan kräva fler steg än decimalmultiplikation, förblir de underliggande operationerna enkla binära bitmanipulationer.
Att till exempel multiplicera 8 (1000) med 9 (1001) i binärt innebär att man ställer in delprodukter och summerar dem, vilket resulterar i 11111000 (72). Denna process speglar lång multiplikation i bas-10 men fungerar på binära siffror.
Subtraktion utförs genom att addera de tvås komplement av subtrahenden. De tvås komplement vänder alla bitar av numret och lägger till en. Till exempel:
7 → 0111 -4 → 1011 (two’s complement of 0100)
Att lägga till dessa ger 10010. Om överflödesbiten släpps lämnas 0011, vilket är 3.
Dessa grundläggande tekniker – addition, multiplikation och subtraktion – är byggstenarna i alla aritmetiska operationer som utförs av processorer.