微机原理 第一章2.ppt_第1页
微机原理 第一章2.ppt_第2页
微机原理 第一章2.ppt_第3页
微机原理 第一章2.ppt_第4页
微机原理 第一章2.ppt_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、计算机数的定点和浮点表示,真值-指符合人们习惯的数的原始表示形式。 机器数-数据在计算机中的实际表示形式。 定点数-指小数点的默认位置已被固定的数。若小数点的位置被固定在机器数的最右侧,该数据为“定点整数”, 若小数点的位置被固定在机器数的最左侧,该数据为“定点小数”。 对于任意一个二进制数总可以表示为纯小数或纯整数与一个2的整数次幂的乘积,例如二进制数N可写成 N=2PS 其中,S称为数N的尾数;P称为数N的阶码;2称为阶码的底。S表示了数N的全部有效数字,P决定了小数点的位置。,计算机中定点整数的表示,定点整数的表示分为两类: (1) 无符号的定点整数(简称无符号数)-机器数只表达0和正整

2、数,其中每一位都表示数值。例如,8位无符号数的范围为0255。 (2) 有符号的定点整数(简称有符号数)-机器数表达0、正整数、负整数。一般最高有效位作为“符号位”来表示数的正负,0为正整数,1为负整数。注意:符号位没有数值的含义。,在机器中表示有符号数有三种表示方法:原码、反码和补码。为了有符号数运算的方便,目前实际上采用的(计算机内部默认)是补码运算,研究反码和原码是为了研究补码。,原码-符号位为0,表示正数;为1,表示负数;其余各位等同于真值的绝对值。例如: (1000 0010)原码= (2)10 0的原码有两种表示:0000 0000(+0)或 1000 0000(-0) 反码-符号

3、位的用法和正数的表示同“原码”一样;负数的表示是在“原码”表示的基础上通过将符号位以外的的各位取反来获得的(其实就是将负数的绝对值的原码按位取反)。这时 (1000 0010)反码= (125)10 0的反码有两种表示:0000 0000(+0)或 1111 1111(-0),8位二进制原码和反码所能表示的数值范围为-127d+127d,补码-符号位的用法和正数的表示同“原码”一样;负数的表示是在“反码”的基础上通过加1来获得的。 这时(1000 0010)补码= -(126)10,为了理解补码的意义,举一个钟表对时的例子。若标准时间是6点整,而有一只钟停在10点整。要把钟校准到6点整,可以倒

4、拨4格,即10-46;也可以顺拨8格,这是因为时钟顺拨时,到12点就从0重新开始计时,相当于自动丢失一个数12,即 10+812(自动丢失)+66。,这个自动丢失的数(12)是一个循环计数系统中所表示的最大数,称之为“模”。10-410+8(mod12) -4+8 (mod12) mod12表示以12为模数。当等式两边同除以模12,它们的余数相同,故上式在数学上称为同余式。和(-4)与(+8)的同余相仿,(-5)与(+7)、(-6)与(+6)、(-7)与(+5)等等也都同余,或互为补数。不难看出,一个负数的补数必等于模加上该负数(或模减去该负数的绝对值)。由此可以推论:对于某一确定的模,某数减

5、去绝对值小于模的另一数,总可以用某数加上“另一数的负数与其模之和”(即补数)来代替。所以,引进了补码以后,减法就可以转换为加法了。 例如,在字长为8位的二进制数制中,其模为28=256d,若有 64-1064+(-10)64+256-10=64+246256+54=54,一般地说,对于n位二进制数,某数X的补码总可以定义为:X补2n+X 或者: X补+Y补X+Y补,如何解决定点补码的减法运算? X-Y补X+(-Y)补= X补+-Y补 那么, -Y 补和Y补的关系如何? (1)当Y为正数,Y原= Y补=yn-1 yn-2y0 -Y 补=2n-Y= 2n- yn-1 yn-2y0 =11111(n

6、个)+1- yn-1 yn-2y0 = (yn-1 yn-2y0)按位取反+1 (2)当Y为负时,结论相同。,Y补,-Y补,将Y补取反加1,将-Y补取反加1,求补运算,使用补码的意义: (1)一个整数的补码和它的真值是一一对应的关系; (2)既可以使用一位二进制数表示了整数的符号,又使得加法运算的结果仍为结果的补码: X补+Y补X+Y补 (3)减法运算转化为加法运算: X-Y补X+(-Y)补= X补+-Y 补 (4)大大简化了电路的设计。,问题: 对于乘除运算如何统一有符号数和无符号数的乘除运算?,如何求一个数的补码? 1、0和正数的补码是其本身; 2、负数的补码(对于负数X) : (1)将

7、|X| 转化为特定字长的二进制数 将其按位取反加1; (2) “带借位0减”,即 模 |X| 例如-37H的补码为: 1(借位)00H-37H = C9H 练习:求-5的补码,设字长为8位。,对于负数X的补码,将其二进制的值按位取反加1,得到的是|X|。 练习:1111 1101B = ( )D ? 数的范围: 符号: 无 有 8位字长: 0255 -128127 16位字长: 065535 -3276832767 字长的扩展:8位16位 低八位不变,高八位以符号填充。 练习:86H(*)H? 68H(*)H?,八位二进制数补码圆圈示意图,问题:机器码1111 1101B到底真值是什么?,C语

8、言中使用 signed(省略) 和 unsigned 来区分。8位:char, unsigned char ; 16位:int,unsigned int 汇编程序设计中,在乎 编程者 自己把握。,一个四位二进制加法电路,可控反相器及加法/减法电路,异或门,溢出的判断,无符号数相加的溢出判断: 相加结果最高位有进位就是溢出。 对于有符号数: 运算结果的最高位向符号位的进位用 Cp表示,符号位向进位位的进位用Cs表示,若 表示无溢出,溢出标志为0;若 表示溢出,溢出标志为1。,(1)正数加负数-永不溢出; (2)两正数相加,结果的符号位为1,溢出; (3)两负数相加,结果的符号位为0,溢出。,1、

9、不同进制数之间的转换(整数)。 2、有符号数采用补码表示; 3、求一个数的补码;求一个补码的真值; 4、求补运算;(-Y) 5、溢出的判断; 6、计算机表示不同类型数的范围; 7、常用的ASCII的码值。,布尔运算,与 或 非,计算机中的码,*常见的十进制代码(用四位二进制数表示一位十进制数),*标准ASCII码及其字符 ASCII码是“美国标准信息交换码”(American Standard Code for Information Interchange)的缩写。标准ASCII码码长7位,可表示128个字符;如下表所示。 ASCII码表中,前32个和最后一个编码是不能显示的控制字符,用于表

10、示I/O设备的某种操作。例如:0DH表示回车CR(Carriage Return),控制光标时就是回到本行首位(最左侧);0AH表示换行LF(Line Feed),就是使光标进入下一行,但列的位置不变;07H表示响铃(Bell)。 ASCII码表中从20H以后的94个编码是可显示和打印的字符,包括数码、英文字母和标点符号等。0930H39H;AZ41H5AH;az61H7AH;20H表示空格,占据一个字符的位置。扩展ASCII码(8位)整加了128个图形符号码,并且替换了7位ASCII表中的控制码。,我国国家标准局于1981年颁布“信息交换用 汉字编码字符集基本集”(编号为GB2312-80),简称汉字国标码,用于汉字信息交换,码长16位(双字节),如“啊”字的国标码为3021H。,奇偶校验(Parity Checking) 在原始数据字节的最高位增加一个附加比特位,使结果中1的个数为奇数(奇校验)或偶数(偶校验)。增加的位称为奇偶校验位。 例:原始数据=1100010,采用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论