汇编语言程序设计钱晓捷课后答案.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《汇编语言程序设计钱晓捷课后答案.doc》由会员分享,可在线阅读,更多相关《汇编语言程序设计钱晓捷课后答案.doc(85页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、. .汇编语言程序设计(第二版)钱晓捷习题答案第二章2.11AX1200h 2AX0100h 3AX4C2Ah 4AX3412h 5AX4C2Ah 6AX7856h 7AX65B7h 2.2(1)两操作数类型不匹配 (2) IP指令指针制止用户访问 (3)立即数不允许传给段存放器 (4)段存放器之间不允许传送 (5)两操作数类型不匹配 (6)目的操作数应为 BP (7)源操作数应为 BX+DI(8)立即数不能作目的操作数2.3lea bx,table;获取table的首地址,BX200H mov al,8;传送欲转换的数字,AL8 xlat;转换为格雷码,AL12H 2.4堆栈是一种按“先进后
2、出原那么存取数据的存储区域。 堆栈的两种根本操作是压栈和出栈,对应的指令是PUSH和POP。2.5mov ax,8057h push ax mov ax,0f79h push ax pop bx ;bx=0f79h pop bx ;DS:0f79h=8057h 2.6AL=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 12.7W=X+Y+24-Z2.81ADD DX,BX 2ADD AL,BX+SI
3、 3ADD BX+0B2H,CX 4ADD WORD PTR 0520H,3412H 5ADD AL,0A0H 2.9;为了防止与操作数地址混淆,将题中X,Y,Z,V 字操作数改为A,B,C,D mov ax,X;ax=A imul Y;dx,ax = A*B (将操作数看作符号数,以下同 mov cx,ax mov bx,dx;bx,ax - dx,ax =A*B mov ax,Z;ax = C cwd;dx,ax =C扩展符号后为双字 add cx,ax adc bx,dx;bx,cx - bx,cx+dx,ax=A*B+C sub cx,540 sbb bx,0;bx,cx DI,转到a
4、bove执行 cmp dx,di ja above;jnbe above 2假设AX SI,转到greater执行 cmp ax,si jg greater;jnle greater 3假设CX = 0,转到zero执行 cmp cx,0 jcxz zero jz zero4假设AXSI产生溢出,转到overflow执行; cmp ax,di jo overflow 5假设SIAX,转到less_eq执行; cmp si,ax cmp ax,si jle less_eq jge less_eq 6假设DIDX,转到below_eq执行。 cmp di,dx cmp dx,di e below_
5、eq jae below_eq2.25; 答:将首地址为array得20个字的数组求和,并将结果存入 total 单元中。2.26; (1) mov si,0 mov dl,stringsi;第1个字符送dl存放器 mov si,5 mov dh,stringsi;第6个字符送dh存放器 (2) xor si,si;si清零 mov al,buffersi;第一字节 inc si mov ah,buffersi;第二字节 mov cl,4 shl ah,cl;BCD码移到高半字节 or al,ah;组合成压缩BCD码 mov dl,al;存入dl寄. inc si mov al,buffers
6、i;第三字节 inc si mov ah,buffersi;第四字节 mov cl,4 shl ah,cl;BCD码移到高半字节 or al,ah;组合成压缩BCD码 mov dh,al;存入dh寄. (3) test dx,0f000h jz zero mov ax,-1 jmp done zero: mov ax,0 done: ret (4) lea bx,buffer1 lea dx,buffer2 mov cx,8;8个字节 xor si,si;si=0 clc;CF=0 (5) mov ax,0b800h mov ds,ax;段地址 xor si,si;地址偏移量si=0 xor
7、dx,dx;和的高字dx=0 mov cx,99;加的次数 mov ax,si;第一个数 again: inc si;指向下一个字单元 inc si add ax,si;加下一个数 jnc noc;无进位转 inc dx;有进位dx=dx+1 noc: dec cx;次数-1 jnz cx,again;非0继续加 ret (6) mov si,offset string mov cx,8000h;32k=215=8000h again: cmp si,$ jnz next mov si,20h;if si=$ si- next: inc si loop again (7) xor si,si;
8、si-0 mov cx,100;循环次数 again: dec arraysi dec cx jnz again (8) xor si,si ;si-0 coun: cmp stringsi,$ je done inc si jmp coun done: ret2.27; (1)使CF0 : clc; and ax,ax;or ax,ax (2)使AX0 : xor ax,ax; and ax,0;mov ax,0 (3)同时使AX0和CF0: and ax,0 ;xor ax,ax ;sub ax,ax2.29; 压缩BCD码加法:AXAXBX 出口参数:AXBCD码和2.34; okmsg
9、 db OK, $errmsg db Error ! Overflow !, $ mov ax,X sub ax,Y jo overflow mov dx,offset okmsg jmp next overflow: mov dx,errmsg next: mov ah,9 int 21h 错误: mov ax,X sub ax,Y jo overflow mov dx,offset okmsg okmsg db OK, $ mov dx,errmsg ;错误1:数据定义在代码中 mov ah,9 int 21h overflow: errmsg db Error ! Overflow !,
10、 $ mov dx,errmsg ; 错误2:缺少JMP指令 mov ah,9 int 21h 2.37; ;xt237.asm.model small.stack.dataarray db 255db 0array1 db 255 dup($)array2 db 0dh,0ah,$ .code.startupmov ah,0ah ; 键盘输入字符串mov dx,offset arrayint 21hmov dx,offset array2 ; 回车换行mov ah,09hint 21hmov bx,offset array1again: mov al,bxcmp al,$jz donecmp
11、 al,a ; 小于a和大于z的字符不是小写字母 nextcmp al,zja nextsub al,20h ; 在a和z之间的字符才是小写字母,转换为大写mov bx,al ; 保存到原位置next: inc bxjmp againdone: mov dx,offset array1mov ah,09hint 21h.exit 0end第三章(01) 3.1; 硬指令:每个硬指令就是一个处理器指令,在CPU执行时产生相应功能; 伪指令:伪指令并不产生处理器指令,它通常用于辅助汇编程序对源程序进展汇编。3.2;3.5; 编辑文本编辑程序汇编语言源程序.asm 汇编汇编程序目标模块文件.obj
12、连接连接程序可执行文件.exe或. 调试调试程序应用程序3.6; ;xt236.asm简化段定义格式 .model small ;定义程序的存储模式小模式 .stack;定义堆栈段默认1024个字节 .data;定义数据段 str1 ab Input Number:09 : ,0dh,0ah,$str2 ab Error!,0dh,0ah,$ .cade;定义代码段 .startup;说明程序的起始点,建立ds,ss的内容。 mov ah,09h;显示str1字符串 mov dx,offset str1 int 21h gtekey: mov ah,1;调用BIOS判断按键功能 int 16h
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编语言 程序设计 钱晓捷 课后 答案
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内