微机原理与应用习题4汇编语言部分

2020-04-03 10:21

第四章 汇编语言程序设计

4-1 请写出完成下列操作的伪指令语句。?

(1)将78,-40,0D6H,49H存放在定义为字节变量STAD的存储单元中。?

(2)将字数据1245H,64H,1245,0C7H存放在定义为字节变量ARRAY的存储单元中。?

(3)将字节数据12H,0FCH,0E4H,65H存放在定义为字变量ALPHA的存储单元中,并且不改变数据按字节存储的次序。?

(4)在以BETA为首地址的存储单元中连续存放字节数据:4个8,6个‘S’,20个空单元,10个(1,3)。?

(5)在以STRING为首地址的存储单元中存放字符串THIS IS A EXAMPE。?

(6)用符号TOTAL代替数字780。?

4-2 请画出下列数据定义语句的内存数据排列图。?

DATA1 DB -10,29H,29,‘7’,??

DATA2 DW 2 DUP(‘12’,12),0CDH?

DATA3 DD 123456H?

4-3 假设数据定义语句如下,请画出内存数据排列图。?

X1 DB ?,76?

X2 DW 20 DUP(1,2),80H,??

X3 DD 5?

COUNT EQU $-X2?

请问:COUNT的值是多少?它表示什么意义??

4-4 请画 出下列数据定义语句的内存数据排列图。?

ORG 0100H?

SA1 DB 30,‘30’?

SA2 DW SA1?

SA3 EQU $-SA1?

SA4 DW SA3?

4-5 数据定义语句如下:?

ORG 30H?

DA1 DB 0,‘0’,30H?

DW DA1?

请回答:字数据为3000H存储单元的偏移地址是什么??

4-6 假设数 据定 义语句如下:?

BUF1 DB 50DUP(0)?

BUF2 DW 4567H,671,0D8H?

BUF3 DB 10 DUP(?)?

BUF4 DB 3,4,8,9,10?

(1)写出将BUF1的偏移地址送BX的指令。?

(2)将BUF2的第4个字节数据送CL的指令。?

(3)将0C6H送入BUF3的第8个字节单元中的指令。?

(4)用伪指令写出BUF2和BUF3总字节数。?

(5)用一组程序段,写出BUF2的第2个数据671和BUF4的第4个数据9相加,结果送入BUF3中。?

4-7 根据下面数据定义语句,写出各条指令执行后的结果。?

FLDB DW 0A47CH?

TABLE DB 52H,67H,0C0H,210?

TAE EQU WORD PTR TABLE)?

ARRAY DB ‘1234’?

CNT EQU $-ARRAY??

(1)MOV AX,FLDB AL=( )?

(2)MOV BX,TAE BH=( )?

(3)MOV CH,TABLE+2 CH=( )?

(4)MOV DL,ARRAY DL=( )?

(5)MOV DH,CNT DH=( )?

4-8 数据定义语句如下,指令执行后?

DA1 EQU BYTE PTR DA2?

DA2 DW 0ABCDH? ??

SHR DA1,1?

SAR DA2,1?

上述指令序列执行后,[DA2]=( ),CF=( )。?

4-9 指令AND AX,76H AND 0FH中,请问两个AND操作在什么时间进行?有何区别?如何用立即寻址直接写出该指令??

4-10 将存放在字节变量BCD1中的两个十进制数的ASCII码合并为一字节压缩的BCD码,

存入字节变量BCD2中,试编写程序。?

4-11 不使用乘法指令,将寄存器AX的内容扩大7倍,试编写程序。?

4-12 执行下列指令后,AX寄存器中的内容是什么??

TABLE DW 10,20,30,40,50?

NEW DW 3?

??

MOV SI,OFFSET TABLE?

ADD SI,NEW?

MOV AX,[SI]?

HLT?

4-13 有一个程序段如下所示: ?

OR AL,AL?

JZ L1?

SAR AL,1?

JZ L2?

RCL AL,1?

NOT AL?

JZ L3?

请回答:(1)当AL=〖CD#4〗,执行该程序转向L1;(2)当AL=〖CD#4〗,执行该程序转向L2;(3)当AL=〖CD#4〗,执行该程序转向L3。?

4-14 在BUFF单元中有一个BCD码A,试编写程序计算Y,结果送DES单元中。?

Y=2A A<20?

Y=A 20≤A<60?

Y=80 A≥60?

4-15 试编写程序,要求比较数组BUFER中的3个16位符号数。根据比较结果,置FLAG标志,要求画出程序流程图。?

(1)如果3个数都不相等,置FLAG为0。?

(2)如果3个数有两个相等,置FLAG为1。?

(3)如果3个数全相等,置FLAG为2。?

4-16 有程序段如下所示,请回答。?

(1) MOV AX,100?

MOV CX,5?

LOP: SUB AX,CX?

LOOP LOP?

HLT?

该程序段执行后,AX=? CX=??

(2) PAS1 DB 0,1,2,3,4,5,6,7,8,9?

PAS2 DB 5 DUP(?)

??

MOV CX,5?

MOV BX,5?

MOV SI,0?

LOP: MOV AL,PAS1[BX+SI]?

MOV PAS2[SI],AL?

INC SI?

LOOP LOP?

HLT?

该程序段执行后,PAS2数据区的数依次为( )。?

4-17 请编写实现下述功能的程序:在以DATA为首地址的数据区中存有100个字符号数

,要求找出其中的最大数送MAX,最小的数送MIN。?


微机原理与应用习题4汇编语言部分.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:多模态话语分析研究在中国的发展

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: