二进制 零扩展与符号扩展

概述

学计算机组成的时候遇到了,就写一下本身的理解code

应用场景

在计算机组成中,少位二进制数和多位二进制数进行运算时,须要用到扩展

如1111(4位二进制)与11001100(8位二进制)相加或者其它运算时,4位的二进制须要进行扩展,才能与8位二进制运算

零扩展

高位直接补0的扩展,如1111变成00001111,补0并不影响计算结果,这个很好理解,但若是二进制数带了符号,就不同了,由于最高位是符号位,因此1111就总一个负数,变成了一个正数00001111,由此,产生了符号扩展二进制

符号扩展

高位直接补符号位,如0111扩展成00001111,而1000扩展成11111000,并且它也不影响计算结果,这里看着有点难理解了
你能够试着计算一下计算机

1111+1000=0111
00001111+11111000=00000111

去掉扩展的符号,仍是原来的味道co