当前位置:首页 >> 工学 >>

课后作业答案Ch4


第4章 汇编语言程序设计 章 4.1请分别用DB 、DW 、DD伪指令写出在DATA开始的连续8个单元中依次存放数据 11H 、22H 、33H 、44H 、55H 、66H 、77H 、88H的数据定义语句. 解:DB,DW,DD伪指令分别表示定义的数据为字节类型、字类型及双字型.其定义形式为 : DATA DB 11H,22H,33H,44H,55H,66H,77H,88H DATA DW 2211H,4433H,6655H,8877H DATA DD 44332211H,88776655H 4.2若程序的数据段定义如下,写出各指令语句独立执行后的结果: DSEG SEGMENT DATA1 DB 10H,20H,30H DATA2 DW 10 DUP(?) STRING DB ‘123’ DSEG ENDS (1) MOV AL,DATA1 (2) MOV BX,OFFSET DATA2 (3) LEA SI,STRING ADD DI,SI 解: (1) 取变量DATA1的值. 指令执行后,(AL)=10H. 1 (2) 变量DATA2的偏移地址. 指令执行后,(BX)=0003H.

(3)先取变量STRING的偏移地址送寄存器SI,之后送SI的内容与DI的内容相加并将结果 送DI.指令执行后,(SI)=0017H;(DI)=(DI)+0017H. 4.3 试编写求两个无符号双字长数之和的程序. 两数分别在MEM1和MEM2单元中,和放 在SUM单元. 解: DSEG SEGMENT MEM1 DW 1122H,3344H MEM2 DW 5566H,7788H SUM DW 2 DUP(?) DSEG ENDS CSEG SEGMENT ASSUME CS:CSEG,DS:DSEG START: MOV AX,DSEG MOV DS,AX LEA BX,MEM1 LEA SI,MEM2 LEA DI,SUM MOV CL,2 CLC AGAIN: MOV AX,[BX] 2

ADC AX,[SI] MOV [DI],AX ADD BX,2 ADD SI,2 ADD DI,2 LOOP AGAIN HLT CSEG ENDS END START 4.4试编写程序,测试AL寄存器的第4位(bit4)是否为0? 解: 测试寄存器AL中某一位是否为0,可使用TEST指令、AND指令、移位指令等几种方 法实现。 如:TEST AL,10H JZ NEXT . . . NEXT:… 或者: MOV CL,4 SHL AL,CL JNC NEXT . 3 NEXT:…

4.5 试编写程序,将BUFFER中的一个8位二进制数转换为ASCII码,并按位数高低顺序 存放在ANSWER开始的内存单元中。 解: DSEG SEGMENT BUFFER DB ? ANSWER DB 3 DUP(?) DSEG ENDS CSEG SEGMENT ASSUME CS:CSEG,DS:DSEG START:MOV AX,DSEG MOV DS,AX MOV CX,3 ;最多不超过3为十进制数(255) LEA DI, ANSWER ;DI指向结果存放单元 XOR AX,AX MOV AL,BUFFER ;取要转换的二进制数 MOV BL,0AH ;基数10 AGAIN:DIV BL ;用除10取余的方法转换 ADD AH,30H ;十进制数转换成ASCII码 MOV [DI], AH ;保存当前的结果 4 INC DI ;指向下一个位保存单元

AND AL,AL ;商为0?(转换结束?) JZ STO ;若结束,退出 MOV AH,0 LOOP AGAIN ;否则循环继续 STO: MOV AX,4C00H INT 21H ;返回DOS CSEG ENDS END START 4.6 假设数据项定义如下: DATA1 DB ‘HELLO!GOOD MORNING!’ DATA2 DB 20 DUP(?) 用串操作指令编写程序段,使其分别完成以下功能: (1)从左到右将DATA1中的字符串传送到DATA2中。 (2)传送完后,比较DATA1和DATA2中的内容是否相同。 (3)把DATA1中的第3和第4个字节装入AX。 (4)将AX的内容存入DATA2+5开始的字节单元中。 解: (1) MOV AX,SEG DATA1 MOV DS,AX MOV AX,SEG DATA2

5

MOV ES,AX LEA SI,DATA1 LEA DI,DATA2 MOV CX,20 CLD REP MOVSB (2) LEA SI,DATA1 LEA DI,DATA2 MOV CX,20 CLD REPE CMPSB 。。。 (3) LEA SI,DATA1 ADD SI,2 LODSW (4)LEA DI,DATA2 ADD DI,5 STOSW

6

4.7执行下列指令后,AX寄存器的内容是多少? TABLE DW 10,20,30,40,50 ENTRY DW 3 . . . MOV BX,OFFSET TABLE ADD BX,ENTRY MOV AX,[BX] 解:(AX)=1E00H 4.8 编写程序段,将STRING1中的最后20个字符移到STRING2中(顺序不变)。 解:首先确定STRING1中字符串的长度,因为字符串的定义要求以‘$’符号结尾, 可通过检测‘$’符确定出字符串的长度,设串长度为COUNT,则程序如下: LEA SI,STRING1 LEA DI,STRING2 ADD SI,COUNT-20 MOV CX,20 CLD REP MOVSB

7

4.9 假设一个48位数存放在DX:AX:BX中,试编写程序段,将该48位数乘以2. 解: 可使用移位指令来实现。首先将BX内容逻辑左移一位,其最高位移入进位位CF, 之后AX内容带进位位循环左移,使AX的最高位移入CF,而原CF中的内容(即 BX的最高位)移入AX的最低位,最后再将DX内容带进位位循环左移一位,从而 实现AX的最低位移入DX的最低位。 SHL BX,1 RCL AX,1 RCL DX,1 4.10 试编写程序,比较AX,BX,CX中带符号数的大小,并将最大的数放在AX中。 解:比较带符号数的大小可使用符号数比较指令JG等。 CMP AX,BX JG NEXT1 XCHG AX,BX NEXT1:CMP AX,CX JG STO MOV AX,CX STO:HLT 4.11 若接口03F8H的第1位(b1)和第3位(B3)同时为1,表示接口03FBH有准备好的8位 数据,当CPU将数据取走后,b1和b3就不再同时为1了。仅当又有数据准备好时才 再同时为1。 试编写程序,从上述接口读入200字节的数据,并顺序放在DATA开始的地址中。 8

解:即当从输入接口03F8H读入的数据满足ⅹⅹⅹⅹ1ⅹ1ⅹB时可以从接口03FBH输入 数据。 LEA SI,DATA MOV CX,200 NEXT: MOV DX,03F8H WAIT: IN AL,DX AND AL,0AH ;判断b1和b3位是否同时为1 CMP AL,0AH JNZ WAIT ;b1和b3位同时为1则读数据,否则等待 MOV DX,03FBH IN AL,DX MOV [SI],AL INC SI LOOP NEXT HLT 4.12 画图说明下列语句分配的存储空间及初始化的数据值。 (1)DATA1 DB ‘BYTE’,12,12H,2 DUP(0,?,3) (2)DATA2 DW 4 DUP(0,1,2),?,-5,256H 解: (1) 存储空间分配情况如图(a)所示。 9 (2) 存储空间分配情况如图(b)所示。

DATA2

00H 00H 01H 00H 02H 00H 00H 00H 01H 00H 02H 00H 00H 00H 01H 00H 02H 00H 00H 00H 01H 00H 02H 00H ? ? FBH FFH

DATA1

42H 59H

‘B’ ‘Y’ ‘T’ ‘E’

高 地 址 方 向

54H 45H 0CH 12H 00H ? 03H 00H ? 03H (a)

高 地 址 方 向

随机数

随机数

5

(b)

56H 02H

10


相关文章:
操作系统第四版课后习题答案ch4-answer.doc
操作系统第四版课后习题答案ch4-answer - 05-ch4 参考答案 2.
ch4 课后习题-计算题(答案)v001.doc
ch4 课后习题-计算题(答案)v001 - 五、综合业务计算题 1.资料:下面
甲烷_烷烃习题 含答案、.doc
高一化学 甲烷 烷烃习题 一、选择题 1、在人类已知的化合物中,品种最多的是(
软件工程学课后习题ch4_图文.ppt
软件工程学课后习题ch4 - 作业及解答(第4章) 4-3 一个浮点二进制数的构
甲烷课后作业.doc
甲烷课后作业_理化生_高中教育_教育专区。《甲烷》课后作业班级___ 姓名___ 座号...甲烷 个性化作业 2页 免费 课后作业答案Ch4 10页 免费 作业2 天燃气的利...
课堂练习题 CH4_图文.ppt
课堂练习题 CH4 - 中国石油大学(华东),电气工程与自动化,董超群... 课堂练习题 CH4_理化生_高中教育_教育专区。中国石油大学(华东),电气工程与自动化,董超群 ...
高频电路CH4习题解答_图文.ppt
高频电路CH4习题解答_理化生_高中教育_教育专区。高频电路 习题4.6:电容三点式...高频电路课后习题答案 34页 1下载券 高频电路习题解答5-12 2页 免费 高频...
ch4存货部分作业答案.doc
ch4存货部分作业答案 - 综合题第 3 题: B 企业(受托)会计账务处理为:
CH4习题参考答案.doc
CH4习题参考答案_工学_高等教育_教育专区。数据结构习题详解习题4 解答判断题: ...ch4课后习题部分答案 暂无评价 2页 免费 CH4习题答案 2页 免费 ch4不定积分...
甲烷习题.doc
甲烷习题一、选择题 1、在人类已知的化合物中,品种最多的是( ) A、过渡元素的
CH4习题.doc
习题4 判断题: 判断题: 1.空串是由空白字符组成的串( ) 2. 串的定长顺序...Ch4-2 习题课 暂无评价 33页 2下载券 ch4课后习题部分答案 暂无评价 2页 ...
ch4_作业评讲-答案_图文.ppt
ch4_作业评讲-答案_教育学_高等教育_教育专区 暂无评价|0人阅读|0次下载 | 举报文档 ch4_作业评讲-答案_教育学_高等教育_教育专区。 ...
3.1最简单的有机化合物甲烷同步练习题及答案.doc
3.1最简单的有机化合物甲烷同步练习题答案_理化生_高中教育_教育专区。第三章 第一节最简单的有机化合物甲烷可能用到的相对原子质量:H:1 Na:23 ...
二级c语言程序设计习题及解答ch4程序结构.doc
二级c语言程序设计习题及解答ch4程序结构_IT认证_资格考试/认证_教育专区。
甲烷烷烃专项练习题 答案.doc
甲烷烷烃专项练习题 答案_理化生_高中教育_教育专区。甲烷 烷烃 饱和烃专项练习...甲烷 烷烃 专项练习 5页 免费 甲烷、烷烃练习题 课后辅... 2页 免费 ...
ch4 扭转-习题-答案.pdf
ch4 扭转-习题-答案 - 苏州大学 第 4 章扭转 习题 1 城市轨道交通学院 内部版 苏州大学 《材料力学》 课程 共4页 第 4 章扭转 练习题 1 答案 院系: 姓...
计算机网络CH4习题解答.pdf
计算机网络CH4习题解答 - 计算机网络第四章习题 制作人:北邮王小茹 习题 2
最简单的有机化合物甲烷习题及答案.doc
最简单的有机化合物甲烷习题答案可能用到的相对原子质量:H:1 Na:23
CH4 思考题和习题.doc
CH4 思考题和习题_理学_高等教育_教育专区。第四章 思考题与例题 1. 设有
信号与系统教程习题解析-ch4.pdf
信号与系统教程习题解析-ch4_计算机硬件及网络_IT/计算机_专业资料。《信 信号与系 系统教程 程》习题 题解析第4章 信 号与系统 统的频域分 分析 4-1? ? ...
更多相关标签: