一、二进制基础
位运算是指二进制位的运算,在系统软件中,经常要处理一些二进制位的问题,例如:在进行计算机之间的通讯的时候需要通过某些标志位来进行判断通讯是否成功。
计算机中的存储器就是由许多字节(byte)单元组成的。一般,内存的最小度量单位就叫做位(bit),也叫比特。而一个字节就是由8个二进制位组成,其中,最右边 的一位叫做最低位 ,最左边 的一位叫做最高位 。
所以,一个16位的整数将在内存中占据2个字节的存储空间,一个32位的整数类型占据4个字节的存储空间。
数据有原码、反码、补码3种表示形式,下面我们逐一学习!
二、原码、反码、补码介绍
①原码
原码是指将最高位作为符号位(0表示正,1表示负),其它数字位代表数值本身的绝对值的数字表示方式。
例如:数字6 在计算机中原码表示为:0 000 0110
其中,第一个数字0是符号位,0表示正数,0 000110 是数字6的二进制数据表示。
数字-6 在计算机中原码表示为:1 000 0110
以上是在8位计算机中的原码表示,如果在32位或16位计算机中,表示方法也是一样的,只是多了几个数字0而已。
例如,在32位 计算机中数字6 的原码表示为:0000 0000 0000 0000 0000 0000 0000 0110
在16位 计算机中数字6 的原码表示为:0000 0000 0000 0110
②反码
反码表示规则为:如果是正数,则表示方法和原码一样;如果是负数,则保留符号位 1,然后将这个数字的原码按照每位取反,则得到这个数字的反码表示形式。
例如,数字6 在8位 计算机中的反码就是它的原码:0000 0110
数字-6 在 8位计算机中的反码为:1111 1001
③补码
补码是计算机表示数据的一般方式,其规则为:如果是整数,则表示方法和原码一样;如果是负数,则将数字的反码加上1(相当于将原码数值位取反然后在最低位加1)。
例如:数字6 在8位 计算机中的补码就是它的原码:0000 0110
数字-6 在8 位 计算机中的补码为:1111 1010
分享到:
相关推荐
/* *功能实现任意二进制数的原码 反码 补码转换 *仅仅是字符串的操作,没有进行数字操作 *对-0的操作可能有问题 *ssfshine@gmail.com */
16进制(4位)到二进制原码、反码、补码计算
计算机数据进制转化(二进制 十进制 八进制 十六进制),以及机器码(原码 反码 补码)。
二进制-原码-补码-反码.pdf
此文用于教学给学生看,欢迎专业人士来拍砖指正,避免本人陷于无知而不自知。
php_二进制_原码_反码_补码.docx
讲述了二进制中的原码、补码、反码的基本概念,让读者对其有更深刻的了解!
128的二进制有原码_反码和补码[借鉴].pdf
十进制转换二进制计算机是采用二...这是一个把十进制数字转换到它的二进制原码的算法,希望能给大家一些启发吧!这个算法我是用VB6写的,其中用到了函数递归调用和函数可选参数(个人感觉功能和C++中的函数重载差不多)。
二进制数的原码、反码、补码[文].pdf
二进制原码补码反码.pptx
二进制原码补码反码.docx
本VI,是在labview环境开发。16进制到二进制原码、反码、补码计算
二进制十进制换算和对应值
在labvIEW中如何实现16进制到二进制原码、反码、补码计算。
原码、反码、补码的总结.rar
定点数机器码转换器。十进制输入示例:12345、0.12345、-12345、-0.12345;二进制输入示例:10101、0.10101、-10101、-0.10101,将定点数转换成机器码
详解原码、反码与补码存储与大小 原码: 如果机器字长为N个bit,那么一个数的原码就是N位二进制数,最高位 是符号位,1代表负数,0... 十六进制 二进制(补码) 反码 原码 实际值 char a = 127; //7f 0111 1111
因此对于一个单字节的二进制数而言,有符号数所表示的数值范围为:-127 (11111111) ~ +127 (00000000) ;无符号数的表示范围为:0 ~ 255 [00000000 ~ 11111111]。 (二)原码、反码、补码 (1)概念 原码:最高位为...
数值在计算机中表示形式为机器数,计算机只能识别0和1,使用的是二进制,而在日常生活中人们使用的是十进制,"正如亚里士多德早就指出的那样,...为了能方便的与二进制转换,就使用了十六进制(2 4)和八进制(23).下面进入正题.