云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 汇编语言程序设计 题库 练习题2--详细答案

汇编语言程序设计 题库 练习题2--详细答案

  • 62 次阅读
  • 3 次下载
  • 2026/4/24 12:28:29

汇编语言程序设计练习题

一、单项选择题

1、CPU要访问的某一存储单元的实际地址称 【 C 】

A.段地址 B.偏移地址 C.物理地址 D.逻辑地址

2、十六进制数88H,可表示成下面几种形式,请找出错误的表示 【 D 】

A.无符号十进制数136 B.带符号十进制数-120 C.压缩型BCD码十进制数88 D.8位二进制数-8的补码表示

3、假设存储器中从7462H单元开始的四个相邻字节单元中的内容依次是32H,46H,52H,0FEH,则存放字数据0FE52H的字地址是 【 C 】

A.7462H B.7463H C.7464H D.7465H 4、执行POP BP指令时,源操作数的物理地址表达式是 【 A 】

A.16*SS+SP B.16*SS+BP C.16*DS+BP D.16*CS+BP

5、执行SUB AX,[BP][DI]指令,取源操作数时,使用的物理地址表达式是【 A 】

A.16*SS+BP+DI B.16*ES+BP+DI C.16*DS+BP+DI D.16*CS+BP+DI 6、要将寄存器AX清零,并使CF=0,下面的指令错误的是 【 D 】

A.AND AX, 0 B.SUB AX, AX C.XOR AX, AX D.MOV AX, 0 7、条件转移指令JNE条件成立时 【 C 】

A.CF=0 B.CF=1 C.ZF=0 D.ZF=1 8、下列指令执行后对源和目的操作数均无影响的是 【 D 】

A.MOV [BX+2],AX B.SUB AX,2467H C.SBB [SI],BX D.CMP AX,BX 13、DAl DB 2AH,05H

DA2 DB 0FAH MOV AL,DAl SUB DA2,AL

上述指令执行后,DA2中的内容是 【 A 】 A.0D0H B.0FAH C.0F5H D.30H 14、DB1 DB 8 DUP(2 DUP(3),3 DUP(2))

MOV AX,WORD PTR DBl [04H] 上面指令执行后,AX的内容是 【 A 】 A.0302H B.0203H C.0202H D.0303H 15、TEST DL,55H

JZ NEXT ┇

NEXT:……

上述程序段,执行JZ指令时能产生转移的情况是 【 D 】 A.DL>55H B.DL<55H C.DL=55H D.DL中第0、2、4、6位均为1

二、填空题

1、8086/8088CPU允许最大的存储空间为1MB,因此CPU的地址总线是【 20 】位。 2、指令MOV AX,OFFSET BUF的执行,是把【 BUF偏移地址 】送到AX中。 3、语句DA2 DW ‘AB’,汇编后在DA2字节单元中存放【 42H 】,在DA2+1字节单元中存放【 41H 】。

4、假设执行指令前BX=5678H,CL=8,指令ROL BX,CL执行后BX=【 7856H 】。 5、VAR1 DD 10H DUP(?) 语句实现留空【 64 】个字节单元。 6、(SS)=3400H,(SP)=0FE00H,若执行两条POP指令,那么执行后(SP)=【 0FE04H 】,(SS)=【 3400H 】。

三、简答题

1、已知:BX=1357H,DI=2000H,DS=2000H,CS=4000H,分别指出下面各指令中存储器操作数的物理地址。

(1)MOV AL,[BX] : 21357H (2)MOV CS:[BX+DI],AH : 43357H

2、已定义语句如下,请画出从BUFl、BUF2、BUF3开始的内存分配图。 BUFl DB ‘AB’, 0, ‘CD’, ‘EF’ BUF2 DW ‘BA’, 0, ‘DC’, ‘FE’

BUF1 41H

42H

00H

43H

44H

45H

46H BUF2 41H

42H

00H

00H 43H 44H 45H 46H 四、程序分析题 1、 MOV DL,AL

NOT DL

TEST DL,04H JE NEXT ┇ NEXT:…

若上述程序段执行时产生了分支,说明AL中的数第几位一定为0? 2

2、已知数据段中定义

DAT1 DB 12H,34H,56H,78H,00H ┇

MOV CX,0

MOV AX,WORD PTR DAT1 MOV CL,DAT1+3

当程序段执行完后AX= 3412H ,CX= 0078H 。

3、 A DW 1234H

B DW 5678H ┇

PUSH A PUSH B POP A POP B

试回答:上述程序段执行后(A)= 5678H ,(B)= 1234H 假设执行前SP=200H,那么执行后SP= 0200H

4、 BCD1 DB 46H

MOV AL,BCD1 MOV CL,4 SHR AL,CL SAL AL,1 MOV CL,AL SAL AL,1 SAL AL,1 ADD AL,CL MOV CL,BCD1 AND CL,0FH ADD AL,CL

上述程序段完成的功能是什么? 程序段运行结束后AL= 2EH 。

五、程序设计题

1、编写程序完成如下工作:从键盘上输入任意字符,统计其中字母A出现的次数,并将结果送入AX寄存器中。

mov si,0 ; 存放次数 next:

mov ah,01h int 21h cmp al, 20h jz exit cmp al, ‘A’ jnz next

inc si ; 次数加1 jmp next exit:

mov ax, si ; 把次数放到AX里

2、假设有一个数组用来存放学生的成绩(0~100),试编写一个子程序统计各成绩段0~59、60~69、70~79、80~89、90~100的人数,并分别存放到SE、SD、SC、SB及SA单元中,再编写一个主程序与之配合使用。(接在数据段定义后写程序)

假设统计10人: DATA SEGMENT result DB 56,69,84,82,73,88,99,63,100,80 SE DB 0 SD DB 0 SC DB 0 SB DB 0 SA DB 0 DATA ENDS

CODE SEGMENT 'CODE' ASSUME CS:CODE, DS:DATA START: MOV AX, DATA MOV DS, AX MOV SI, OFFSET result MOV CX, 10 ; 统计10人 LOP1:

JCXZ EXIT CMP BYTE PTR [SI], 60 JB FIVE CMP BYTE PTR [SI], 70 JB SIX CMP BYTE PTR [SI], 80 JB SEVEN CMP BYTE PTR [SI], 90 JB EIGHT JMP NINE

FIVE: INC SE JMP LOP SIX: INC SD JMP LOP SEVEN: INC SC JMP LOP EIGHT: INC SB JMP LOP NINE: INC SA JMP LOP

LOP: INC SI DEC CX JMP LOP1 EXIT: MOV AH, 4CH INT 21H

CODE ENDS END START

如果要变换成子程序和主程序,那么只要将里边的代码单独定义为子程序,在主程序里call即可。

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

汇编语言程序设计练习题 一、单项选择题 1、CPU要访问的某一存储单元的实际地址称 【 C 】 A.段地址 B.偏移地址 C.物理地址 D.逻辑地址 2、十六进制数88H,可表示成下面几种形式,请找出错误的表示 【 D 】 A.无符号十进制数136 B.带符号十进制数-120 C.压缩型BCD码十进制数88 D.8位二进制数-8的补码表示 3、假设存储器中从7462H单元开始的四个相邻字节单元中的内容依次是32H,46H,52H,0FEH,则存放字数据0FE52H的字地址是 【 C 】 A.7462H B.7463H C.7464H D.7465H 4、执行PO

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com