新版汇编语言程序设计习题答案(钱晓捷主编)(3)
mov dh,al ;存入dh寄..
(3) 编写一个程序段,在DX高4位全为0时,使AX = 0;否则使AX = -1。 test dx,0f000h jz zero mov ax,-1 jmp done zero: mov ax,0 done: ret
(4) 有两个64位数值,按“小端方式”存放在两个缓冲区buffer1和buffer2中,编写程序段完成buffer1-buffer2功能。 lea bx,buffer1 lea dx,buffer2 mov cx,8 ;8个字节 xor si,si ;si=0 clc ;CF=0
(5) 假设从B800h : 0开始存放有100个16位无符号数,编程求它们的和,并把32位的和保存在DX.AX中。 mov ax,0b800h mov ds,ax ;段地址
xor si,si ;地址偏移量si=0 xor 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) 已知字符串string包含有32KB内容,将其中的?$?符号替换成空格。 mov si,offset string
mov cx,8000h ;32k=2^15=8000h again: cmp [si],’$’ jnz next
第 11 页 共 29 页
mov [si],20h ;if [si]=’$’ [si]<-- ’ ’ next: inc si loop again
(7) 有一个100个字节元素的数组,其首地址为array,将每个元素减1(不考虑溢出)存于原处。
xor si,si ;si<--0 mov cx,100 ;循环次数 again: dec array[si] dec cx jnz again
(8) 统计以 ?$? 结尾的字符串srting的字符个数。 xor si,si ;si<--0
coun: cmp string[si],’$’ je done inc si jmp coun done: ret
2.27; 对下面要求,分别给出3种方法,每种方法只用一条指令。 (1)使CF=0 : clc ; and ax,ax ;or ax,ax (2)使AX=0 : xor ax,ax ; and ax,0 ;mov ax,0
(3)同时使AX=0和CF=0: and ax,0 ;xor ax,ax ;sub ax,ax
2.28、参照本习题的示意图,分析调用序列,画出每次调用及返回时的堆栈状态。其中CALL前是该指令所在的逻辑地址;另外,段内直接调用指令的机器代码的字节数为3,段间直接调用指令则为5个字节。
2.29 已知AX 、BX存放的是4位压缩BCD表示的十进制数,请说明如下子程序的功能和出口参数。 add al,bl daa xchg al,ah adc al,bh daa xchg al,ah ret
第 12 页 共 29 页
压缩BCD码加法:AX←AX+BX 出口参数:AX=BCD码和
2.30、AAD指令是用于除法指令之前,进行非压缩BCD码调整的。实际上,处理器的调整过程是:AL←AH×10+AL,AH←0。如果指令系统没有AAD指令,请用一个子程序完成这个调整工作。
2.31、解释如下有关中断的概念: (1) 内部中断和外部中断 (2) 单步中断和断点中断 (3) 除法错中断和溢出中断 (4) 中断向量号和中断向量表
2.32、试比较INT n和段间CALL指令、IRET和段间RET指令的功能。 2.33、什么是系统功能调用?汇编语言中,它的一般格式是怎样的?
2.34; 补充例2.38,当有溢出时显示“Error! Overflow!”,无溢出时显示“OK”。 okmsg 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 !’, ‘$’ mov dx,errmsg ; 错误2:缺少JMP指令 mov ah,9 int 21h
第 13 页 共 29 页
2.35、补充例2.39,显示“1”的个数;注意首先将个数转换为ASCII码。
2.36、先提示输入数字“Input Number:0 ~ 9”,然后在下一行显示输入的数字,结束;如果不是键入了0 ~ 9数字,就提示错误“Error!”,继续等待输入数字。
2.37 从键盘输入一个字符串(不超过255个),将其中的小写字母转换成大写字母,然后按原来的顺序在屏幕上显示。 ;xt237.asm .model small .stack .data array db 255 db 0
array1 db 255 dup('$') array2 db 0dh,0ah,'$' .code .startup
mov ah,0ah ; 键盘输入字符串 mov dx,offset array int 21h
mov dx,offset array2 ; 回车换行 mov ah,09h int 21h
mov bx,offset array1 again: mov al,[bx] cmp al,'$' jz done
cmp al,'a' ; 小于a和大于z的字符不是小写字母 jb next cmp al,'z' ja next
sub al,20h ; 在a和z之间的字符才是小写字母,转换为大写 mov [bx],al ; 保存到原位置 next: inc bx jmp again
done: mov dx,offset array1 mov ah,09h
第 14 页 共 29 页
int 21h .exit 0 end
2.38、指令对状态标志的作用可以分成多种情况,例如无影响、无定义、按结果影响、特别说明的影响等,你能区别这些情况吗?分别用具体的指令来说明。 2.39、8086指令系统分成哪6个功能组?各组主要包含什么指令,举例说明。 2.40、总结8086指令系统所采用的各种寻址方式,包括一般的数据寻址、外设数据寻址、堆栈数据寻址、串操作数据寻址、转移指令目的地址的寻址等,并举例说明。
第三章汇编语言程序格式
3.1; 硬指令:每个硬指令就是一个处理器指令,在CPU执行时产生相应功能; 伪指令:伪指令并不产生处理器指令,它通常用于辅助汇编程序对源程序进行汇编。 3.2、什么是标识符,汇编程序中标识符怎样组成?
3.3、什么是保留字,汇编语言的保留字有哪些类型,并举例说明。 3.4、汇编语句有哪两种,每个语句由哪4个部分组成?
3.5 汇编语言程序的开发有哪4个步骤,分别利用什么程序完成、产生什么输出文件。 ⒈ 编辑 文本编辑程序 汇编语言源程序.asm ⒉ 汇编 汇编程序 目标模块文件.obj ⒊ 连接 连接程序 可执行文件.exe或.com ⒋ 调试 调试程序 应用程序
3.6 将第2章习题2.36采用简化段定义格式编写成一个完整的源程序。 ;xt236.asm 简化段定义格式
.model small ;定义程序的存储模式(小模式) .stack ;定义堆栈段(默认1024个字节) .data ;定义数据段
str1 ab ’Input Number:0~9 : ’,0dh,0ah,’$’ str2 ab ’Error!’,0dh,0ah,’$’ .cade ;定义代码段
.startup ;说明程序的起始点,建立ds,ss的内容。 mov ah,09h ;显示str1字符串 mov dx,offset str1
第 15 页 共 29 页
…… 此处隐藏:1703字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [互联网资料]2022年厦门大学机电工程系824机械设计
- [互联网资料]东南大学2022年硕士研究生拟录取名单公
- [互联网资料]能源调研报告(精选多篇)
- [互联网资料]初三英语下学期 中考英语 语法填空训练
- [互联网资料]2022内蒙古选调生行测常识备考:新事物
- [互联网资料]自驾必备!在新西兰租什么样的车自驾游
- [互联网资料]佛教素食菜谱44页未完
- [互联网资料]盈利能力分析外文翻译
- [互联网资料]2022年南昌航空大学音乐学院736马克思
- [互联网资料]优选外贸跟单实习报告总结(精品版)
- [互联网资料]银行新员工培训总结
- [互联网资料]2_year_visa_new_guidance_190316
- [互联网资料]天津市五校宝坻一中静海一中杨村一中芦
- [互联网资料]2007--2008学年第一学期高三数学宁波市
- [互联网资料]Chromatic framework for vision in ba
- [互联网资料]幼儿园大班上学期美术教案《心愿树》含
- [互联网资料]2022年华中农业大学信息学院820微型计
- [互联网资料]硬盘坏道的表现 __硬盘使用久了
- [互联网资料]江苏省2016年会计从业资格考试《会计基
- [互联网资料]公共场所卫生监督试卷全解
- 高级英语第一册所有修辞方法及例子总结
- 综合交通枢纽规划与城市发展
- 沃尔玛的企业文化案例分析
- 美国Thanksgiving Day 感恩节 介绍
- PEP六年级英语上册Unit6How do you fee
- 最齐全的中国大型商场购物中心名单
- 数据结构实验报告八—哈夫曼编译码
- 杭州市余杭区人民政府(通知)
- 七年级语文成语运用专项训练
- 微观经济学第三章 消费者行为 课后习题
- 对_钱学森之问_的思考
- Excel_三级联动_下拉菜单
- 办公用品需求计划申请表
- 对外汉语教材必须要知道的发展史
- 挑战杯大学生学术科技作品竞赛作品申报
- 举办民办教育培训机构应具备下列条件
- 太阳能路灯项目设计方案
- 2013年八年级上最新人教版新教材Unit3I
- 【历史】 6-4 《近代科学之父牛顿》 课
- 高中生物《第四章 第二节 探讨加酶洗衣




