习题及参考解答_第1页
习题及参考解答_第2页
习题及参考解答_第3页
习题及参考解答_第4页
习题及参考解答_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

1、第3章 习题及参考解答 1指出下列各指令中源操作数和目的操作数的寻址方式。 (1)MOV DI,100 (2)MOV CX100SI (3)MOV SI,AX (4)ADD AX,BX+DI (5)AND AX,BX (6)MOV DX,1000 (7)MOV BX,BP+DI+100 (8)PUSHF (9)SUB 1050,CX (10)AND DH,BP+4 解 源操作数 目的操作数(1)立即寻址 寄存器寻址(2)变址寻址 寄存器寻址(3)寄存器寻址 寄存器间接寻址(4)基址加变址寻址 寄存器寻址(5)寄存器寻址 寄存器寻址(6)直接寻址 寄存器寻址(7)基址加变址寻址 寄存器寻址(8)

2、寄存器寻址 寄存器间接寻址(9)寄存器寻址 直接寻址(10)变址寻址 寄存器寻址 2试述指令MOV AX,2000H和MOV AX,DS:2000H的区别? 解区别有三条:(1) MOV AX,2000H对源操作数是立即寻址,而MOV AX2000H对源操作数是直接寻址;(2) 前者功能是把立即数2000H送入AX中,而后者是把内存2000H单元与2001H单元的内容取出送入AX 中;(3) 两者的机器代码不同,执行速度也不同,前者执行时间快,后者执行时间慢。 4若DS4000H,BX0800H,40800H05AOH,40802H2000H,求执行指令LDS SI,BX后,DS与SI中的内容

3、。若上题中的DS换成ES,其他条件不变,求执行指令LES DI,BX后,ES与DI中的内容。 解 SI=05AOH,DS=2000H DI=05AOH,ES=2000H 5若AX98ABH,BX=A8BCH。求执行指令ADD AX,BX后,AX与BX中的内容,并指出SF,ZF,AF,PF,CF和OF的状态。解AX=4167H,BX=A8BCH,SFZFAFPFCFOF001011B。 6若CX=6700H,DX=78FFH,CF=1。求分别执行指令 (1)ADD CX,DX (2)ADC CX,DX (3)SUB CX,DX (5)AND CX,DX (6)OR CX,DX (7)XOR CX

4、,DX 后,CX与DX寄存器中的内容,并指出标志寄存器SF,ZF,AF,PF,CF及OF的状态。 解 (1)CXDFFFH,DX78FFH,SFZFAFPFCFOF=100101B (2)CXE000H,DX78FFH,SFZFAFPFCFOF101101B (3)CXEE01H,DX78FFH,SFZFAFPFCFOF=101010B (4)CXEE00H,DX78FFH,SFZFAFPFCFOF101110B (5)CX6000H,DX78FFH,SFZFAFPFCFOF00×100B (6)CX7FFFH,DX78FFH,SFZFAFPFCFOF00×100B(7)C

5、X1FFFH,DX78FFH,SFZFAFPFCFOF00×100B 7若AX=FFFEH,BX=FFFDH,求执行指令IMUL BX后,DX与AX中的内容。指出标志位OF与CF的状态。 解AX0006H,DX0000H,OFCF00B 8若AL=75H,BL=48H, (1)求执行指令 ADDAL,BL DAA之后AL=?标志AF=?CF=?并说明BCD码调整情况。 (2)若执行指令SUB AL,BL与DAS后,情况又如何? 解 (1)AL23H,AFCF11B(2)AL=27H,AFCF10B 9设X、Y、R、S、Z均为16位无符号数的变量。按已给定的表达式Z(X+Y)(RS)Z

6、,有程序如下,试在空格处填入适当的指令(注:在加减过程中均无进位和借位)。 MOV AX,X MOV CX,R SUB CX,S MOV Z,AX MOV Z+1,DX HLT 解 ADD AX,Y MULZDIV CX 10若有一个四字节数,放在寄存器DX与AX中(DX中放高16位),要求这个4字节数整个左移一位如何实现?右移一位又如何实现? 解 (1)DX与AX左移一位: SHLAX,01 RCLDX,01 (2)DX与AX右移一位: SHR DX,01 RCR AX,01 11若把1K字节的数据块从偏移地址为1000H开始的单元传送到偏移地址为1400H开始的缓冲区。试用串传送操作指令和

7、一般传送指令两种方法各编一程序实现。 解 (1)利用串操作指令编程如下: MOV SI,1000H MOV DI,1400H MOV CX,400H CLDREP MOVSB MOV AM,4CH INT 21H (2)利用一般传送指令编程如下: MOV SI,1000H MOV DI,1400H MOV CX,400H NEXT:MOV AL,SI MOVDI,AL INC SI INC DI LOOP NEXT MOV AH,4CH INT 21H 12若在内存缓冲区中有一个长度为256个字节的数据块,起始地址偏移量为2000H。数据块中的数据有正有负,要求把其中的正负数分开分别送至同段的

8、两个缓冲区,存放正数的缓冲区的起始地址偏移量为2100H,存放负数的缓冲区的起始地址偏移量为2200H。试编一程序。 解 MOVSI,2000H MOVCX,100H XORDX,DXLOOP:MOVAL,SI ADDAL,0 JNSPLUS INCDHNEXT:INCSI DEC CX JNZLOOP JMPSTOPPLUS:INCDL JMPNEXTSTOP:MOV2100H,DL MOV2200H,DH MOVAH,4CH INT21H 13若SS=1000H,SP=1000H,AX=1234H,BX=5678H,Flag=2103H,试说明执行指令 PUSH BX PUSH AX PU

9、SHF POP CX之后,SP=?SS=?CX=?并画图指出栈中各单元的内容。 解 SS=1000H,SP=0FFCH,CX=2103H 栈中各单元内容如下: 地址 RAM 0FFAH 03 0FFBH 21 0FFCH 34 0FFDH 12 0FFEH 78 0FFFH 56 1000H XX 14若DS=1100H,SI1000H,CS=1200H,IP=100H,12000H2000H,12002=1500H,求执行指令 (1)CALL FARSI后CS与IP的内容; (2)CALLSI后CS与IP的内容。解(1)CS=1500II,IP=2000H (2)CS=1200H,IP=20

10、00H 15若执行指令INT 21H后,将转到何处执行程序,指出CS与IP的内容。解将转到0:0086H和0:0084H处取出双字作为CS与IP的值,再执行程序。CS的值为内存单元0:0086H和0:0087H的内容;IP为内存单元0:0084H与0:0085H的内容。 1 6编一程序使 (1)AX寄存器低4位清零; (2)BX寄存器低4位置1; (3)CX寄存器低4位变反; (4)DX寄存器高3位不变,其余位清零。 解 (1)AND AX,FFF0H (2)OR BX,000FH (3)XOR CX,000FH(4)AND DX,E000H 18指出下列8086指令中哪些是错误的,错在何处?

11、 (1)MOV DL,BX (2)MOV DS,2000H (3)MOV DI,SI (4)MOV AX,BXBP (5)XCHGCX,2400H (6)PUSH DH (7)IN AH,DX (8)OUT 01F0H,AX 解 (1)错。数据类型不匹配。 (2)错。立即数不能直接送往段寄存器。 (3)错。两个内存单元不能直接传送数据。 (4)错。BX和BP部可作为基址寄存器,缺少变址寄存器。没有基址加基址寻址方式。 (5)对。 (6)错。堆栈操作必须是16位数据,DH是8位寄存器。 (7)错。输入(IN)指令从端口读出的数据需送给累加器AL或AX,送给AH不行。 (8)错。端口地址为16位时

12、,必须用DX间接寻址。 19连续执行以下指令,填写执行指令的结果(MEM为存储器物理地址)。 MOV AX,2280H MOV CX0FFOOH MOV DS,AX MOV SI,CX ADD CX,AX ;CX=H,CF=B MOVSI,CX ;SI=HSI+1=HADCSI,AL ;SI=H,MEM=HDEC BYTE SI ;SI= H,ZFCFPF=BMOV AX,06ADC AX,08 ;AX=H,CFAF=BAAA ;AX=H,CFAF=BADD AL,59H ;AL=H,CFAF=BDAA ;AL=HAND AL,0FHMOV BX,-8NEG BX ;BX=HMOV DL,06MUL DL ;AX=HOR AX,0FF00HCWD ;AX=HIDIV BX ;AX=

温馨提示

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

评论

0/150

提交评论