微机原理、汇编与接口技术 第二版 朱定华版 课后答案1

上传人:飞*** 文档编号:46323255 上传时间:2018-06-25 格式:PPT 页数:94 大小:2.27MB
返回 下载 相关 举报
微机原理、汇编与接口技术 第二版  朱定华版 课后答案1_第1页
第1页 / 共94页
微机原理、汇编与接口技术 第二版  朱定华版 课后答案1_第2页
第2页 / 共94页
微机原理、汇编与接口技术 第二版  朱定华版 课后答案1_第3页
第3页 / 共94页
微机原理、汇编与接口技术 第二版  朱定华版 课后答案1_第4页
第4页 / 共94页
微机原理、汇编与接口技术 第二版  朱定华版 课后答案1_第5页
第5页 / 共94页
点击查看更多>>
资源描述

《微机原理、汇编与接口技术 第二版 朱定华版 课后答案1》由会员分享,可在线阅读,更多相关《微机原理、汇编与接口技术 第二版 朱定华版 课后答案1(94页珍藏版)》请在金锄头文库上搜索。

1、12007. 6. 13微机原理、汇编与接口技术朱定华21.11.21.31.4计算机的数和编码微型计算机的结构和工作原理80x86微处理器第第1 1章章 微型计算机基础微型计算机基础1.580x86的寄存器80x86的工作方式与存储器物理地址的生成 31.1.1 计算机中的数制常用数制-二,十,十六进制为了区别3种不同数制,约定l目前在计算机中,数几乎全部用二进制表示l为书写方便,微机中的二进制数用十六进制数缩写l人们最熟悉、最常用的是十进制数 l数后加B表示二进制数l带D或不带字母符号表示十进制数 l带H表示十六进制数 4十进制、二进制、十六进制数之间的关系表十进进制二进进制十六进进 制十

2、进进制二进进制十六进进 制 000000810008 100011910019 200102101010A 300113111011B 401004121100C 501015131101D 601106141110E 701117151111F5数制间转换二进制整数十六:从右(最低位)向左将二进制 数4位1组划分,最后一组若不足4位则在其左边补0 ,每组用1位十六进制数表示如: 1111111000111B 1 1111 1100 0111B 0001 1111 1100 0111B = 1FC7H十六二:用4位二进制数代替1位十六进制数1.二十六如: 3AB9H = 0011 1010 1

3、011 1001B 6数制间转换十六十:将十六进制数按权展开相加十进制整数十六:除16取余法2.十六十如: 38947=9823H如: 1F3DH=163116215161316013=4096125615163113=409638404813=7997 16 38947 316 2434 216 152 816 9 90余数倒序排列7数制间转换3.二十十进制数二进制数:十进制数十六进制数二进制数 二进制数十进制数:二进制数十六进制数十进制数 使用2n(2n的二进制数等于1后跟n个0)和十六进制数、十进制数 的对应关系(如下表所示)以及个别十进制整数和十六进制数的 对应关系(如50=32H,8

4、0=64H,100=64H等) 转换,如: 38947=32768+4096+2048+32+3=8000H+1000H+800H+20H+3H=9823H 1F3DH=2000H-(80H+40H+3H)=8192-(12864+3)=799781.1.2 符号数的表示方法l用数的符号和数值部分一起编码的方法表示符号数l8位(字节)、16位(字)或32位(双字)机器数的最高位是符号位。最高位为0正数,为 1负数l区分:机器数、真值、无符号数l掌握符号数的三种常用表示法:原码,反码,补码9数值用其绝对值,正数的符号位用0表示,负数 的符号位用1表示如:X1= 105=+1101001B X1原

5、=01101001BX2=-105=-1101001B X2原=11101001B(1)原码10注:l原码表示的数,8位数中,D7位为符号位,其余7位 为数值位(为真值的绝对值)l8位原码数的数值范围为FFH7FH(-127127) ;16位原码数的数值范围为FFFFH7FFFH(- 3276732767)l原码表示简单易懂,且与真值转换方便,但内部运 算复杂,为简化计算机结构,引进了反码和补码11注:一个负数的反码的数值部分并不是其真值的绝 对值,要按位取反才能求得真值的绝对值正数的反码与原码一样,符号位为0,其余位为 其数值;负数的反码为它的绝对值连同符号位按位 取反如:X1= 105=+

6、1101001B X1反=01101001BX2=-105=-1101001B X2反=10010110B(2)反码12正数的补码与原码一样,符号位为0,其余位为其 数值;负数的补码为其绝对值的补数补数有两种求法:l按位取反后再加1l从最低位向最高位扫描,保留直至第一个“1”的所有“0”位,第一个“1”左边各位按位取反 如:X1= 105=+1101001B X1补=01101001BX2=-105=-1101001B X2补=10010111B 对补码表示的负数求补可以得到其绝对值 如: -105补=10010111B=97H求补,得:01101001=69H=105,即补码表示的机器数97

7、H 的真值是-69H(=-105)(3)补码13注: l一个补码数,若最高位为0,则该数即为此数的绝对 值;若最高位为1,则其补数为该数的绝对值l8位补码数的范围:80H7FH(-128127).16位补 码数的范围:8000H7FFFH(-3276832767)l补码数80H和8000H的最高位既代表了符号为负又代 表了数值为1l1个二进制补码数的符号位向左扩展若干位后,所得 到的补码数的真值不变如:68补=44H字节, 68补=0044H字-68补= BCH 字节, -68补= FFBCH字l微机中,符号数用补码表示!141.1.3 二进制数的加减运算二进制加法规则:二进制减法规则:0+0

8、=0 0+1=1+0=1 1+1=0 进位10-0=0 1-0=1 1-1=0 0-1=1 借位1计算机把机器数均当作无符号数进行运算,即符号位也参与运算151 ) 两个无符号数相加-和为正数.当和超过其 位数所允许的范围时,向更高位进位,用CF表示 如: 59+164=3BH + 0A4H 127160=7FHA0H=0DFH =11FH=287无进位,CF=0 有进位,CF=1(1)无符号数的运算0011 1011 + 1010 01001101 11110111 1111 + 1010 000010001 1111进位16192-10=C0H-0AH=B6H =182无借位,CF=010

9、-192=0AH-C0H =-B6H=-182有借位,CF=11100 0000 - 0000 10101011 01100000 1010 - 1100 000010100 1010 借位结论:对无符号数进行减法运算,其结果的符号用进位来 判别:CF=0(无借位)结果为正;CF=1(有借位)结果为负如 :2 )两个无符号数相减-被减数大于或等于减数,无借 位,结果为正;被减数小于减数,有借位,结果为负。17两数进行运算,结果超出表示范围会产生溢出;用OF表示(2)符号数的运算如:105+50 = 155 127,超出范围,产生溢出又如:-105-50 = -155 -128 ,超出范围,产生

10、溢出0110 1001 + 0011 00101001 1011=155 视为无符号数,结果正确=-65H结果为负,错误,溢出,0F=11001 0111 + 1100 111010110 0101 进位=-155 将进位视为符号,结果正确=65H结果为正,错误,溢出,0F=118说明: l将多位二进制数拆成多部分运算时,数的低位部 分均为无符号数,只有高位部分才为符号数l注意区分进位与溢出l溢出不同于补码运算中的进位或借位丢失如:-50-5 = -551100 1110 + 1111 101111100 1001= -00110111B= -55进位丢失 结果正确,无溢出19判断补码运算有无

11、溢出的方法:0110 1001 + 0011 00101001 1011CY=0, CS=1 OF=0 1=1, 有溢出如:105+50CY=1, CS=01001 0111 + 1100 11101 0110 0101OF=1 0=1, 有溢出-105-50CY=1, CS=11100 1110 + 1111 10111 1100 1001OF=11=0,无溢出-50-5设符号位向进位位的进位为CY,数值部分向符号位的 进位为CS,则溢出判别式为:OF=CY CS当OF=1时,有溢出;当OF=0时,无溢出201.1.4 二进制数的逻辑运算与逻辑电路(1)逻辑非按位求反(2)逻辑乘(逻辑与)按

12、位求“与”如:A=01100001B,B=11001011BA=10011110B,B=00110100B规则:=0,=0,10=0,11=1如:01100001B11001011B=0100 0001B21(3)逻辑加(逻辑或)按位求“或”(4)逻辑异或(按位加)按位求模和规则:00=0,01=1,10=1,11=1如:01100001B11001011B=11101011B规则:0+0=0,0+1=1,1+0=1,1+1=0如:01100001B 11001011B=10101010B(5)正逻辑与负逻辑正逻辑高电平表示逻辑,低电平表示逻辑0 负逻辑高电平表示逻辑 0,低电平表示逻辑122

13、1.1.5 二进制编码(1)二进制编码的十进制数即用二进制表示的十进制数,简称BCD数 (binary coded decimal),常用的是8421 BCD码计算机里,字母、各种符号以及指挥计算机执 行操作的指令,均用二进制数的组合表示,称为二 进制编码238421 BCD编码表十进进 制数压缩压缩 BCD数非压缩压缩 BCD数 (ABC BCD数)十进进 制数压缩压缩 BCD数非压缩压缩 BCD数 (ABC BCD数)00H(0000B )00H(0000 0000B)55H(0101B )05H(0000 0101B)11H(0001B )01H(0000 0001B)66H(0110B

14、 )06H(0000 0110B)22H(0010B )02H(0000 0010B)77H(0111B )07H(0000 0111B)33H(0011B )03H(0000 0011B)88H(1000B )08H(0000 1000B)44H(0100B )04H(0000 0100B)99H(1001B )09H(0000 1001B)压缩BCD数用8位二进制数表示2个十进制数位 非压缩BCD数用8位二进制数表示1个十进制数位 如:19 压缩BCD 0001 1001 = 19H19 非压缩BCD 00000001 00001001 = 0109H24说明:l十进制数与BCD数的转换查

15、8421 BCD编码表直接lBCD数转换为二进制数写出BCD数的十进制数十进制数转换为二进制数l二进制数转换为BCD数二进制数转换为十进制数根据十进制数写出BCD数25(2)ASCII码-字符在机内的表示常用的ASCII码字符如表(P10表1-4):字符ASC码码(H)字符ASC码码(H)093039$24 AZ415A换换行LF0A az617A回车车CR0D Blank2026注:(1)十进制数的ASCII码转换成BCD数 减30HBCD数转换成十进制数的ASCII码 加30H(2)将十六进制数的ASCII码转换为十六进制或将十六进制 转换为十六进制数的ASCII码,要先判别ASCII码是在哪个 区段内,然后再加或减30H或37H。(3)十进制数的ASCII码转换为二进制数:将ASCII码转换为ASCII BCD数写出ASCII BCD数的十进 制数将十进制数转换为二进制数(4)二进制数转换为十进制数的ASCII码过程与(3)相反271.1.5 BCD数的加减运算调整规则:和在09之间,保持不变;和大于9,加6调 整如:48+59=107BCD数低位与高位之

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 其它考试类文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号