- 1、本文档共28页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第1章 绪 论补充
1.2计算机中数的表示方法及运算 1.2.1 机器数和真值 概念: 机器数——一个数在计算机中的表示形式。 真值——即为该机器数的实际算术值。 字——在计算机中,作为数据传送、存贮和运算基本单位的一组二进制字符称为一个字(Word)。 字长—— 一个字中的二进制的位数称为字长(Word Length)。 机器数有以下几个特点: 1.机器数所能表示的数的范围受到计算机字长的限制 如对于8位字长的计算机来说,机器数的范围为(0000 0000)2?(1111 1111)2,即对应于十进制数为0~255。 为了扩大机器数表示的范围,有时可以用两个字甚至多个字表示一个数,例如对于8位机来说,若用两个字来表示一个正数,其数值范围为0?65535。 2.机器数只用来表示正数,这时称为无符号数 当用来既表示正数也可以表示负数时,这时称为带符号数。此时,数的符号在机器中就数码化了,即将一个字的最高位定为符号位,其余各位为数值位。 最高位为0表示正数,最高位为1表示负数。 例如:N1=(+101 1001)2的机器数可表示为:N1=(0101 1001)2 N2=(-110 1011)2的机器数可表示为N2=(1110 101l)2。 带符号数也可以用两个字来表示一个数,此时,符号位仍定为两个字的最高一位。 3.机器数可以用来表示带小数点的数。 有两种表示方法:定点表示法和浮点表示法。 对于任意一个二进制数N总可以表示为纯整数(或纯小数)和一个2的整数次幂的乘积:N=2p?S。其中S称为N的尾数,P称为N的阶码,2称为阶码的底。 在定点表示法中,小数点在数中的位置是固定不变的,一般固定在数值部分的最高位之前或最低位之后。通常定点表示法中P=0,定点数只有符号位和数值部分。 计算机中的定点数格式为: 在浮点表示法中,小数点在数中的位置是浮动的,因而阶码P是一个可变的数值,它可为正数,也可为负数。同样,尾数S可为正数,也可为负数。故在浮点表示法中阶码和尾数要分别表示,并且各自都有自己的符号位。 计算机中浮点数格式为: 浮点数表示的数的范围远远超过定点数,但是浮点数的算术运算也要复杂得多。微型计算机中这两种表示法都用,但用得较多的是定点表示法. 1.2.2 原码、反码和补码 在计算机里,带符号数的机器数有原码、反码和补码三种表示方法。 1.原码 正数的符号位用“0”表示,负数的符号位用“1”表示,其余各位表示数值,这种表示法称为原码。 例如:Xl=[+100 0001]2= +65 [X1]原=0100 0001 X2=[-100 0001]2= -65 [X2]原=1100 0001 左边表示的数称为真值,即为某数的实际算术值。右边为用原码表示的数,两者的最高位分别用“0”、“l”代替符号位的“+”、“-”。 在原码表示法中,0有两种表示法,即: [+0]原=0000 0000,[-0]原=1000 0000 2.反码 一个数的反码可由原码求得。如果是正数,则其反码与原码相同;如果是负数,则其反码除符号位为1外,其它各数位均按位取反,即1转换为0,0转换为1。 例如:Xl=+100 000l [X1]反=0100 0001 X2=-100 0001 [X2]反=1011 1110 如果已知一个数的反码,要求它所表示的真值,若是正数则可直接求得,若是负数则可将符号位除外的数值部分各位取反得到负数的原码,然后再求真值。 例如:[X1]反=0100 0001 [X1]原=0100 0001 X1= +65 [X2]反=1011 1110 [X2]原=1100 0001 X2=-65 在反码表示法中,零也有两种表示形式,即: [+0]反=0000 0000 [-0]反=1111 1111。 3.补码 一个数的补码亦很容易由反码求得。如果是正数,则其补码与反码相同;如果是负数,则其补码为反码加1,即“求反加1”。 例如:Xl=+100 0001 [X1]补=0100 0001 X2=-100 0001 [X2]补=[X2]反+1=1011 1110 +1=1011 1111 “求反加1”需要作两步运算,这个过程也可以简化为一步,即符号位不变,只对原码各位中最低一位1以左
文档评论(0)