汇编语言程序设计(第二版) 钱晓捷 习题答案 第二章(01) 2
1 (1)AX=1200h (2)AX=0100h (3)AX=4C2Ah (4)AX=3412h (5)AX=4C2Ah (6)AX=7856h (7)AX=65B7h 2
2(1) 两操作数类型不匹配 (2) IP 指令指针禁止用户访问 (3) 立即数不允许传给段寄存器 (4) 段寄存器之间不允许传送 (5) 两操作数类型不匹配 (6) 目的操作数应为[ BP ] (7) 源操作数应为 [BX+DI] (8) 立即数不能作目的操作数 2
3 lea bx ,table ;获取table 的首地址,BX=200H mov al,8 ;传送欲转换的数字,AL=8 x lat ;转换为格雷码,AL=12H 2
4 堆栈是一种按“先进后出”原则存取数据的存储区域
堆栈的两种基本操作是压栈和出栈,对应的指令是PUSH 和 POP
5 mov ax ,8057h pu sh ax mov ax ,0f79h pu sh ax pop bx ;bx =0f79h pop [bx ] ;DS:[0f79h]=8057h 2
6 AL=89h CF ZF SF OF PF AL=12h 1 0 0 1 1 AL=0afh 0 0 1 0 1 AL=0afh 1 0 1 0 1 AL=00h 0 1 0 0 1 AL=0ffh 0 0 1 0 1 AL=00h 0 1 0 0 1 2
7 W=X+Y+24-Z 2
8 (1)ADD DX,BX (2)ADD AL,[BX+SI] (3)ADD [BX+0B2H],CX (4)ADD WORD PTR [0520H],3412H (5)ADD AL,0A0H 2
9;为了避免与操作数地址混淆,将题中X,Y,Z,V 字操作数改为A,B,C,D mov ax,X ;ax=A