真值和机器数概念

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

概念补充

1.计算机的主要功能:数值处理信息处理信息存储。对数值的运算、处

理和存储,要通过数字逻辑电路完成,而数字逻辑电路只处理二进制数据代码,因此计算机中数据信息表示方法,存储方式要用到计算机中的进位计数制。由此牵扯出本章中各种进位计数制的概念、运算、和相互转换,并进而研究各类数据通过进位计数制(一套表示数值大小的方法)在计算机中的表示和存储

2. 真值和机器数概念补充:一个数在计算机中的二进制表示形式,叫做这个数

的机器数。机器数是带符号的,在计算机用一个数的最高位存放符号,正数为0,负数

为1.比如,十进制中的数 +3 ,计算机字长为8位,转换成二进制就是 00000011。如果是-3 ,就是。那么,这里的00000011和就是机器数。因为第一位是符号位,

所以机器数的形式值就不等于真正的数值。例如上面的有符号数,其最高位1代表负,其真正数值是-3而不是形式值131 (转换成十进制等于 131)。所以,为区别起见,将带符号位的机器数对应的真正数值称为机器数的真值。例:0000 0001的真值=+000 0001 = +1 , 1000 0001的真值=-000 0001 = - 1简单说,计算机中二进制数据要用

0 1表示大小和正负,一般将最高位作为符号位,0表示正号,1表示负号,其余位表

示数值大小。这种在计算机内部将正负号数字化后得到的数称为机器数,而在计算机外部用正负号表示的实际数值,称为机器数表示的真值

3. 原码反码补码:参见课本P35为了便于对已机器数形式存放的数据进行数据运

算,机器数一般有三种表示方法原码反码补码

1)原码:以最简单的表示法,原码就是符号位加上真值的绝对值,即用第一位表示符号,其余位表示值.比如如果是 8位二进制:[+1]原=0000 0001 [-1]原=1000

0001第一位是符号位.因为第一位是符号位,所以8位二进制数的取值范围就

是:[1111 1111 , 0111 1111]即[-127 ,127]原码是人脑最容易理解和计算的表示方式. 2)反码:反码的表示方法是:正数的反码是其本身负数的反码是在其原码的基础上,符号位不变,其余各个位取反.[+1] = [00000001] 原=[00000001]反[-1]=[] 原=[]

,人脑无法直观的看出来它的数值.通常要将其转换成原码再计反可见如果一个反码表示的是负数

算•简单说,由原码得反码机器数为正时,二者相同。负时,符号位(表示正负号的那一位)不变,其余数值位全部按位取反

3)补码:补码的表示方法是:正数的补码就是其本身负数的补码是在其原码的基础上,符号位不变,其余各位取反,最后+1.(即在反码的基础上+1) [+1] = [00000001]

,补码表示

原=[00000001]反=[00000001]补[-1]=[] 原=[]反=[]补对于负数

方式也是人脑无法直观看出其数值的•通常也需要转换成原码在计算其数值•简单说,正数时原补相同,负数时,符号位(表示正负号的那一位)不变,其余数值位全部按位取反后再加一。所以说,负数的补码就等于该数的反码加一。具体运算课本上有例子

P36

总结:计算机可以有三种编码方式表示一个数•对于正数因为三种编码方式的结果都相同 :

[+1] = [00000001] 原=[00000001]反=[00000001]补

所以不需要过多解释•但是对于负数:

[-1]=[]原=[]反=[]补

以上为个人见解因时间有限研究未深,只可浅尝辄止,与你所问无关的没有列出,需要的再

问兰姐加油期末高分

相关文档
最新文档