新版汇编语言程序设计习题答案(钱晓捷主编)(5)
(2) 堆栈段从节边界开始,组合类型为stack;
(3) 代码段的类别是?code?,指定段寄存器对应的逻辑段;主程序指定从100h开始,给有关段寄存器赋初值;将数组元素全部设置为64h。
stack segment para ‘stack’ dw 512 dup(?) stack ends data segment
dword array db 100 dup(?) data ends
code segment ‘code’
assume cs:code,ds:data,es:data,ss:stack org 100h
start: mov ax,data mov ds,ax mov es,ax mov di,offset array mov al,64h mov cx,100 cld rep stosb mov ax,4c00h int 21h code ends end start
3.27; 编制程序完成两个已知双精度数(4字节)A和B相加并将结果存入双精度变量单元SUM
中(不考虑溢出)。
解答 ;xt327.asm .model small
.stack 256 ;定义堆栈段大小为256个字节 .data
anum dd 11223344h ;定义两个双字的数(随意) bnum dd 77553311h
sum dd ? ;定义结果,执行后为:88776655h .code .startup
第 21 页 共 29 页
xor si, si ;相对于变量的位移量清零 mov cx, 2 ;分高低字分别相加,共两次 clc ;清零cf
again:mov ax, anum[si] ;取第一个数的一个字(先低字后高字) adc ax, bnum[si] ;取第二个数的一个字(先低字后高字) mov sum[si], ax ;存和的一个字(先低字后高字) inc si ;修改位移量指向下一个字(加2) inc si
loop again ;cx=cx-1 ,if cx<>0 ,jump again .exit 0 end
3.28 编制程序完成12H、45H、0F3H、6AH、20H、0FEH、90H、0C8H、57H和34H等10个字
节数据之和,并将结果存入字节变量SUM中(不考虑溢出)。
.startup
xor si, si ;位移量清零 mov al, bdata[si] ;取第一个数 mov cx, num-1 ;累加次数 again: inc si ;指向下一个数 adc al, bdata[si] ;累加
loop again ;如未完,继续累加 mov sum, al ;完了,存结果 .exit 0 end
3.29、结构数据类型如何说明、结构变量如何定义、结构字段如何引用?
3.30、记录数据类型如何说明,记录变量如何定义,width和mask操作符是什么作用?
第四章 基本汇编语言程序设计
4.1、例题4.2如果要求算术右移8位,如何修改程序。 4.2、例题4.2如果要求算术左移7位,如何用移位指令实现。
4.3; 思路:设这四组从低位到高位分别放在AL、BL、CL和DL寄存器中。这里仅列出代码段:
mov bl, al ;将al中的两组分开
第 22 页 共 29 页
and al, 0fh ;屏蔽高四位后送al
mov cl, 4 ;原al中的数据逻辑右移4次送bl shr bl, cl
mov dl, ah ;将ah中的两组分开 and dl, 0f0h ;屏蔽低高四位后送dl
mov cl, 4 ;原ah中的数据逻辑右移4次送dl shr dl, cl
mov cl, ah ;屏蔽高四位后送cl and cl, 0fh
4.4; getkey: mov ah, 1 ;从键盘输入,出口:al存键值 int 21h
cmp al, ?a? ;判键值是小写字母? jb getkay cmp al, ?z? ja getkay
sub al,20h ;是小写字母转换为大写字母 mov ah, 09h ;显示 int 21h
4.8; (1) 将jmp table[bx]指令改为:mov dx, table[bx] (2) 去掉源程序中:.exit 0---end之间的语句 4.17; .model small .stack 256 .data
stri1 db ?please input number:1--9?,odh,oah,?$? .code .startup
again: mov dx,offset stri1 ;显示stri1,提示输入 mov ah,09h int 21h
mov ah,01h ;调用输入一个字符 int 21h ;输入一个字符存在al中 cmp al, ?1? ;判该字符,如不在?1?--?9? jb again ;重新输入 cmp al, ?9? ja again
and al,0fh ;在?1?--?9?,屏蔽高4位
第 23 页 共 29 页
mov cx, al ;振铃次数送cx .repeat
mov dl, 07h ;调用一次振铃 mov ah, 02h int 21h
mov dx ,0ffffh ;延时 abc: dec dx jnz abc
.untilcxz ;cx=cx-1,cx=0 退出 .exit 0 end
4.22;crazy PROC ;crazy PROC push ax ;
xor ax,ax ; xor ax,ax xor dx,dx ; xor dx,dx
again: add ax,[bx] ;again: add ax,[bx] adc dx,0 ; adc dx,0 inc bx ; inc bx inc bx ; inc bx loop again ; loop again ret ; ret
ENDP crazy ; crazy ENDP
4.25;子程序中又调用子程序就形成子程序嵌套。 子程序中直接或间接调用该子程序本身就形成子程序递归。 4.26; .model small .stack 256 .data
stdng db ?HeLLO eveRyboDy ! ? , 0 .code .startup
mov bx, offset atring again: mov al, [bx]
call chan ;调用过程 mov [bx] , al next: inc bx jmp again
第 24 页 共 29 页
done: .exit 0
chan proc ;大写转换为小写字母的过程 or al, al jz done cmp al,?A? jb next cmp al, ?Z? ja next or al, 20h ret chan endp end
4.27;astob proc
and dh, 0fh ;十位数的ASCII码转为二进制数 mov al, dh
mul 10 ;al= 10*dh
and dl, 0fh ;个位数的ASCII码转为二进制数 add al, dl ;al= 10*dh + dl ret astob endp
第五章 高级汇编语言程序设计
5.1; cmp X, 5 je abc jmp done abc: cmp ax, bx jne cde jmp done cde: inc ax done:.... 5.2;cmp X, 5 je abc jmp done cmp ax, bx
第 25 页 共 29 页
相关推荐:
- [互联网资料]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 《近代科学之父牛顿》 课
- 高中生物《第四章 第二节 探讨加酶洗衣




