编辑: kieth 2016-04-09

0 0

1 1

0 1 (NZ) (PL) (CY) (OV) (NA) (PE) 讨论结果: 对于无符号数而言,因为CF=1,所以结果不正确. 对于带符号数而言,因为OF=1,所以结果不正确. 17.编程序使: ⑴ 使AL的各位变反. ⑵ BX寄存器低四位置1. ⑶ AX寄存器的低四位清0. ⑷ 使CX寄存器的低四位变反. ⑸ 用TEST指令测试AL寄存器的位0和位6是否同时为0,若是则把0送DH寄存器,否则把1送DH寄存器. 答案: ⑴ NOT AL ⑵ OR BX,000FH ⑶ AND AX,0FFF0H ⑷ XOR CX,000FH ⑸ TEST AL,01000001B JZ A MOV DH,1 JMP SHORT B A: MOV DH,0 B: … 18.设X=X7X6X5X4X3X2X1X0,Y=Y7Y6Y5Y4Y3Y2Y1Y0,Z=Y7Y6Y5X4X3X2X1X0,其中X、Y、Z均为二进制数,试编写已知X和Y求Z的程序. 答案: MOV AL,X AND AL,00011111B MOV BL,Y AND BL,11100000B OR AL,BL MOV Z,AL 19.使用指令REP MOVSB指令时,请问: ⑴ 指令完成什么功能? ⑵ 要求哪些初始条件? 答案: ⑴ 指令完成传送字符串功能. ⑵ 要求设置以下初始条件:CX、DF、SI、DI、DS、ES 20.在执行字符串指令时,何时需要DF标志置1?何时需要清0? 答案: 地址指针减量时使DF=1,增量时使DF=0. 25.假定AX和BX中是有符号数据,CX和DX中是无符号数据,请为下列各项确定CMP和条件转移指令: ⑴ CX值超过DX转移. ⑵ AX值未超过BX转移. ⑶ DX值为0转移. ⑷ CX值等于小于DX转移. 答案: ⑴ CMP CX,DX JA L1 ;

也可以用JNBE L1指令 … L1: … ⑵ CMP AX,BX JNG L1 ;

也可以用JLE L1指令 … L1: … ⑶ CMP DX,0 JZ L1 … L1: … ⑷ CMP CX,DX JBE L1 ;

也可以用JNA L1指令 … L1: … 26.试分析下面的程序段完成什么功能? MOV CL,4 SHL DX,CL MOV BL,AH SHL AL,CL SHR BL,CL OR DL,BL 答案:把DX和AX一对寄存器所形成的32位内容左移四位.其中DX中为高16位,AX中为低16位.

第四章习题答案 2.一个.EXE文件至少应该包括代码段. 3.一个.EXE文件的主过程必须是FAR型. 4.可执行程序的END后必须是主过程名. 10.各语句为变量分配的字节数为: ⑴

1 ⑵

1 ⑶

3 ⑷

82 ⑸

6 ⑹

8 ⑺

4 ⑻

2 ⑼

2 11. 变量名 偏移量 变量名 偏移量 变量名 偏移量 N1

0 N2

1 N3

2 N4

5 N5

87 N6

93 N7

101 N8

105 N9

107 N7变量的内容是00000002;

N8变量的内容是0005;

N9变量的内容是0007. ⑴ N1=15 ⑵ AL=123 ⑶ 错,两个操作数不能同时为存储器操作数. ⑷ AL=33H ⑸ DX=7 ⑹ N5=000EH ⑺ 错,类型不匹配. ⑻ 错,类型不匹配.错,NUM1是一个常数. ⑽ 错,由EQU定义的符号在同一个程序中不能再定义. 18.L1的值为6,L2的值为3.

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题