IBM-PC汇编语言程序设计(第二版)课后习题答案(清华大学出版社)解析.doc
《IBM-PC汇编语言程序设计(第二版)课后习题答案(清华大学出版社)解析.doc》由会员分享,可在线阅读,更多相关《IBM-PC汇编语言程序设计(第二版)课后习题答案(清华大学出版社)解析.doc(25页珍藏版)》请在咨信网上搜索。
1、IBM-PC汇编语言程序设计(第二版)课后习题答案(清华大学出版社)(沈美明,温冬蝉著)第二章1.解答:有256个2.解答:如下图.第一个络子为000B0H字单元,注意,是字单元,第五个格子为000B3H字单元E51E3C2A3.解答: 30022H字节单元内容: ABH 30024H字节单元内容: EFH 30021H字单元内容: AB34H 30022H字单元内容: CDABH4.解答: 这三个物理地址都是3017AH,说明了不同的段地址和偏移地址对应同一物理地址5.解答: CS+IP 第一个字的物理地址为: 0AAA40H6.解答:条件标志OF,SF,ZF,CF,的值依次为:0,0,0,
2、07.下列操作可使用那些寄存器?(1)加法和减法 AX,BX,CX,DX,当然,还有这几个通用寄存器的高低位了,如AH ,AL等(2)循环计数CX(3)乘法和除法 DX,AX,AH,AL(4)保存段地址 CS ,DS,ES,SS(5)表示运算结果为O FLAGS(6)将要执行的指令地址 IP (7) 将要从堆栈取出数据的地址 BP,SP,SS8.可以用来指示存储器地址的寄存器有: BX,SP,BP,DI,CS,DS,SI,ES,SS,IP9.一一对应;5-A 4-B 2-C 3-D 12-E 9-F 11-G 10-H 13-I 8-J 7-K 6-L 1-M 15-N 14-O第三章 1.(
3、1)立即寻址 没有 (2)直接寻址 7237H(3)使用BX的寄存器寻址没有 (4)使用BX的间接寻址637DH(5)使用BX的寄存器相对寻址 0D5B4H(6)基址变址寻址 8E18H(7)相对基址变址 004FH2.根据下列要求,写出相应的汇编指令。(1)ADD DX,BX(2) ADD AL,BXSI(3)ADD BX0B2H, CX(4) MOV AX,2A59H ADD 0524H ,AX(5) ADD AL ,0B5H3.(1)寄存器间接寻址 MOV BX,OFFSET BLOCK0AH MOV DX ,BX(2)寄存器相对寻址 MOV SI,OAH MOV DX,BLOCKSI(
4、3)基址变址寻址MOV BX ,BLOCKMOV SI,OAHMOV DX,BXSI4.现有(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100)=12H,(20101)=34H,(20102)=56H,(20103)=78H,(21200)=2AH,(20201)=4CH,(21202)=B7H,(21203)=65H,试说明下列各条指令执行完后,AX寄存器的内容。(1)MOV AX,1200H 1200H(2) MOV AX,BX0100H(3) MOV AX,12004C2AH 注意,是字单元!(4)MOV AX,BX 3412H同上(5)MOV 1100BX
5、4C2AH(6) MOV AX,BXSI7856H(7) MOV AX,1100BXSI 65B7H5.(1) 7CD9H(2)0600H (3)098AH6. MOV BX,2000H LESDI,BX MOV AX, ES:DI7.转向地址OBJ的值分别为:(1)064DH (2)0691H (3)05E0H 注意有符号数的符号位8. (1)MOV AX,0ABH 立即数寻址 无物理地址 (2)MOV AX,BX 寄存器寻址 同上(3)MOV AX,100 直接寻址 20100H (4)MOV AX,VAL 直接寻址 20050H (5) MOV AX,BX 寄存器间接寻址 20100H
6、(6) MOV AX,ES:BX 直接寻址 21100H (7) MOV AX,BP 寄存器间接寻址 20010H(8)MOV AX,SI 同上 200A0H (9) MOV AX,BX+10 寄存器相对寻址 20110H(10)MOV AX,VALBX 同上 20150H (11) MOV AX,BXSI 基址变址寻址 201A0H (12) MOV AX,VALBXSI相对基相变址寻址 201F0H9.(1)的指令: MOV AX, BX0CH MOV ZREO ,AX (2)的指令: MOV AX,ARRAYBXMOV ZREO,AX10. MOV AX,TABLE 是把符号地址TABL
7、E里的内容送到AX里,指令执行完后,(AX)=1234HLEA AX,TABLE 是把符号地址TABLE 的有效地址(这里是偏移量)送到指定寄存器AX里,指令执行完后,(AX)=0032H11.执行完指令后,(AX)=1E00H12. LEA AX,CSTRING MOV DL,AX MOV DH,AX+613.课本上P51-P5314. LES BX,2000 MOV AX,ES:BX一条指令的话为MOV AX,ES:8000H 15.运算结果 SF,ZF,CF,OF各位的值(从左至右依次往下)(1)74D4H0 0 0 0(2) A5C1H 10 0 1(3)4240H 0 0 1 0(4
8、) 0000H 0 1 1 016.接上表(1)5D14 0000(2)A8701 00 1(3) D870 1000(4) 34E4 0 01017. (1)MOV AX,Z ;把Z送到AX SUB AX,X ;Z-X ADD AX,W ;W+(Z-X) MOV Z,AX ;结果保存在Z中(2)MOV AX,R ;R送到AX中 ADD AX,9 ;R+9 MOV BX,X ;X送到BX中 ADD BX,6 ;X+6 ADD AX,BX ;(R+9)+(X+6),结果保存在AX中 MOV BX,W ; W送到BX中 SUB BX,AX ; W-(R+9)-(X+6),连续减去两个数,相当于减去
9、这两个数的和 MOV Z,BX ;最终结果送到Z中(3)MOV AX,W;把W送到AXIMUL X ;W*X 注意:低十六位保存在AX里,高十六位保存在DX里MOV BX,Y ;把Y送到BX 里ADD BX,6 ;Y+6IDIV BX ;(W*X)/(Y+6) 注意:商保存在AX里,余数保存在DX里MOV Z,AX ;把商送到Z中,MOV R,DX ;把余数 送到R中(4)MOV AX,W ;把W送到AX中SUB AX,X;W-XCWD ;把AX中的十六位带符号数扩展成为32位,低十六位保存在AX中,高十六位保存在DX中 MOV BX,5 ;把5送到BX中IDIV BX;(W-X)/5被除数为
10、32位,除数为16位商为16位IMUL Y ;上一步结果再乖以Y,积为32位MOV BX,2;把2送到BX中IMUL BX ;上一步乘法所得的积再乘以2,各为64位MOV Z,EAX ;把结果中低32位放入Z双字单元中MOV Z+4,EDX;把结果中高32位放入Z+4双字单元中18.指令 本条指令执行完后AX的内容 执行完后CF,SF,ZF的值MOV AX,1234H 1234H 0 0 0MOV CL,41234H 0 00ROL AX,CL 2341H 10 0DEC AX 2340H10 0MOV CX,4 2340H 10 0MUL CX 8918H 00 0INT 20H程序结束后,
11、(AX)=8918H (DX)=0000H19.指令 执行完后AX的内容 执行完后CF ,SF,ZF和OF的值MOV AX,0 0 0010DEC AX FFFFH0100ADD 7FFEH 0000ADD AX,2 8000H 0101NOT AX 7FFFH 0101SUB AX,0FFFFH 8000H 1101ADD AX,8000H 0000H 1011SUBAX,1 FFFFH1101AND AX,58D1H 58D1H0000SAL AX,1 B1A2H 0101SAR AX,1 D8D1H 0100NEG AX 272FH 1000ROR AX,1 9397H 100120.(
12、1)MOV AX,DATAX ADD DATAY,AX(2)MOV AX,DATAX ADD DATAY,AX MOV AX,DATAX+2ADD DATAY+2 ,AX(3)本組指令的作用是:BX -DATAX+DATAY+1(CF的值) 帶進位加法(4)MOV AX,DATAX MUL DATAY ;結果的高十六位保存在DX裏,低十六位保存在AX裏(5) MOV AX,DATAX MOV DX,DATAX+2 MUL DWORD DATAY ;結果的高三十二位保存在EDX裏,低三十二位保存在EAX裏(6)MOV AX,DATAXDIV 17H;結果商保存在AL中,余數在AH中(7) MOV
13、 AX,DATAX CDWDIVDATAY21. NEG DX NEG AX SBB DX,022.MOV AX,A ;把雙字長數的低字放到AX中MOV DX,A+2 ;把雙字長數的高字放到DX中TEST DX,8000H ;測試雙字長數的符號JZ RIGHT ;如果是非負數,則直接保存NEG DX;如果是負數,則求補 NEG AXSBB DX,0 RIGHT: MOV B ,AX MOV B+2,DX23.每條指令單獨執行完後的結果依次為:(1) 9AH (2)61H (3)0FBH (4)1CH (5)0 (6)0E3H24.執行指令序列後,BX的內容為:0DAH25.(1)把53D乘以2
14、的程序:MOV AX,35H ;53D=35HSHL AX ,1(2)把53除以2 的程序:MOV AX,35HSHR AX,126.這段程序完成的功能是:把DX:AX中的雙字數據左移4位(相當於乘以16D)27.各條指令單獨執行後,DX的值依次為:(1)5CH(2)17H(3)05C8H(4)72H(5)2017H(6)0CDH(7)0172H(8)05CCH(9)0DCH28. 該程序段執行完後,BX寄存器的內容是:C02DH29.(1)从左到右把CONMAE中的字符串伟送到PRLINE的程序实现:LEA SI,CONAME ;把CONAME中第一个字节的偏移地址送到SI中LEA DI,P
15、RLINE ;把PRLINE中第一个字节 的偏移地址送到DI中MOV CX,20 ;把重复次数放到CX里CLD ;让SI DI从低地址指向高地址(即从左到右传送)REP MOVSB ;传送(2)从右到左把CONMAE中的字符串传送到PRLINE中的程序实现:LEA SI ,CONAMELEA DI,PRLINEMOV CX,20STD;和上面唯一不同的就是这次是从右到左,所以要从高地址批向低地址REP MOVSB(3)把CONAME中的第三和第四個字節裝入AX的程序實現:LEA SI ,CONAME+3LODSW (4)把AX寄存器的內容存入從PRLINE+5開始的字節中的程序實現:LEA D
16、I ,PRLINE+5STOSW(5)檢查CONAME字符串中有無空格字符,如有把它偉送給BH寄存器的程序實現:LEA DI,CONAME ;把CONAME中第一個字符偏移地址放入DI中MOV CX,20 ;把重複次數放到CX中MOV AL,20H ;把空格符的ASCII值放入AL中CLD ;從低到高REPNE SCASB ;比較MOV BH,DI-1R ;把檢查到的空格符送到BH中30.MOV CX,12H;把重複次數放到CX中。這裏用十六進制表示 MOV SI,0 ;初始化SIMOV AX,26H ;把&字符的ASCII值放入AXCHECK: CMP AX,STRINGSI ;依次查找IN
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- IBM PC 汇编语言 程序设计 第二 课后 习题 答案 清华大学出版社 解析
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。