原码定义:
原码(True form)是电脑运算的名词,是指“未经更改”的码。为了便于ALU的设计,又发展出反码、补码等转换过的码。
原码是指一个二进制数左边加上符号位后所得到的码,且当二进制数大于0时,符号位为0;二进制数小于0时,符号位为1;二进制数等于0时,符号位可以为0或1(+0/-0)。
负数计算会出错,因为符号位在前,无论加几都是负数
反码定义:(为解决原码不能计算负数而出现的)
二进制数的反码(英语:1's complement)是指将二进制数每个数字反转得到的数:若某一位为0,则使其变为1,反之亦然。
例子:-55原码:10111000
反码:11000111
-56+1=反码+1=11001000=55
负数反码计算跨零会出错,会在11111111和00000000(都为零)上增长两次
补码:(负数)反码加一 补码还能多记录一个特殊的值-128,-128无原码和反码