补码补码

哈哈,每次看到补码的问题,总要再去翻看一下原理,每次都要搜索,好累啊,我决定自己总结一遍,下次只看自己的笔记。瓦咔咔。。。


--------------------------------切入正题

计算机中的符号数有三种表示方法,即原码、反码和补码。三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位,三种表示方法各不相同。

首先我们要知道计算机系统中存储数值时候使用补码表示。因为使用补码可以将符号位和数值位统一处理。此外补码和原码的换算是一样的,即补码的补码就是原码喽。

一、正数的补码和原码相同

例如+9 原码0000 1001 ,其补码还是0000 1001


二、负数的补码是将其二进制正数取反(包括符号位和数值位)加一

例如-5正数0000 0101 -->所有位取反 1111 1010 --->加一1111 1011

PS:记得大学上课时候,老师讲过一个简单求负数的补码方法,首先符号位不参与运算,因为为负数,故符号位肯定为1,其余的数值位,从右往左遇到第一个1不变其余全部取反。故-5就是将1_000 0101 从右遇到的第一个1不变,其余取反。即为1_111 1011

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页