汇编语言习题与答案.doc
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《汇编语言习题与答案.doc》由用户(刘殿科)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编语言 习题 答案
- 资源描述:
-
1、汇编语言习题与答案一、填空题:把答案填在题中横线上。1. 8位无符号整数的表示范围为0255,写成16进制形式为00H_;8位有符号整数的表示范围为-128+127,写成16进制形式为_。2. 8086/8088分段管理存储空间,但每段容量最大不超过_。3. 逻辑地址为F000:100的存储单元,其物理地址是_。4. 用来指示堆栈栈顶的偏移地址的是_寄存器。5. 若要测试AL寄存器D4、D2、D0位是否都为0,则可使用_指令语句(含操作数),以产生转移条件。这条指令执行后 将利用标志位_实现转移。 6. 若定义:bdata db 2 dup(1,2,2dup(3),4),则dbata变量前5个
2、单元从低地址到高地址的数据依次是_。7. 假设varw是一个16位变量,则指令“mov varw,ax”的目的操作数的寻址方式是_。(二、选择题:在每小题给出的四个选项中,只有一项是符合题目要求的,请把所选项前的字母填在题后的括号内。1.对汇编语言源程序进行翻译,形成OBJ文件的是A.汇编程序 B.连接程序 C.编辑程序 D.调试程序 2.下列各个8位二进制数的补码中,真值最大的是A. B. 语句中,表达常数不正确的形式是 B. A346HC.A D. 5600 4.如果SS=600H,则说明堆栈段物理地址起始于 50 dup()预留了存储空间的字节数是 6.下列指令中有操作数在代码段中的是
3、ax,34h ax,bx word ptr 34h ax,34h 7.假设AL=5,要使得AL=0FAH,应执行的指令是A. not al al,0fh al,0f0h al,0fh 8.设置逻辑段应该采用的一对伪指令是ends end startendp endm 9.条件转移指令JNE条件是=0 =1=0 =1 10.逻辑移位指令SHL可用于!A.有符号数乘以2 B.有符号数除以2C.无符号数乘以2 D.无符号数除以2 11.执行“in al, dx”指令后,进入AL寄存器的数据来自A.寄存器 B.存储器C.立即数 D.外设端口 12.将十进制数75以压缩BCD码送入AX,正确的指令是 a
4、x,0075 B. mov ax,0705 ax,0075h D. mov ax,0705h 13.如下指令可将AX寄存器内容改变的是A. cmp ax,bx B. test ax,bx?C. and ax,bx D. xchg ax,bx 14.设AH=10H,执行“neg ah”指令后,正确的结果是A. AH=10H、CF=1 B. AH=F0H、CF=0C. AH=10H、CF=0 D. AH=F0H、CF=1 15.如下程序段:again: mov es:di,al inc di loop again可用指令_完成相同的功能。A. rep movsb B. rep lodsb】C. r
5、ep stosb D. rep stosw 三、问答题: 1.说明8086/8088两类标志各自的作用是什么2.子程序文档说明主要包含那些内容3.试述mov ax,offset var和lea ax,var两条语句的异同点。4.循环结构程序具有哪3个组成部分各自的作用是什么5.已知DS2000H、BX100H、SI2,存储单元21200H21203H依次存放(十六进制)2A 4C B7 65,说明下列每条指令执行完后AX寄存器的内容。 mov ax,1200h mov ax,bx+1101h mov ax,bx si+1100h四、程序阅读题: 1.执行如下程序段后,AL、ZF。 mov al
6、,ahnot aladd al,ahinc al 2.对于如下数据定义,给出各条指令执行后的结果。fldb dw 0a24fhtable db 32h,52h,0a2h,215array db ABCDcount equ $-array mov ax,fldb ;AL mov cl,table2 ;CL mov ch,array ;CH mov dx,count ;DX 3.现有程序段如下, test al,80hjz onebl,mov ah,1jmp doneonebl: mov ah,0ffhdone: 在情况下,该程序段执行结果AH1;在情况下,该程序段执行结果AHFFH。4.下列指令
7、段的功能是在数组中查找数据3,请在空格中填入应有的内容。 org 0120h data1 dw 0,1,2,3,4,5,6,7,8,9 count equ $-data1 | mov di,offset data1 mov ax,3 cldmov cx, scasw 又,该命令序列执行后,CX、DI。5.设X、Y、Z、V均为16位带符号数,分别装在X、Y、Z、V存储单元中,阅读如下程序段,得出它的运算公式,并说明运算结果存于何处。 mov ax,X imul Y mov cx,ax¥ mov bx,dx mov ax,Z cwd add cx,axadc bx,dx sub cx,540 sb
8、b bx,0 mov ax,V cwd sub sbb dx,bx; idiv X 五、程序设计题: 1.按照如下要求各编写一段语句序列: 定义字节变量unpak,其中以非压缩BCD码形式存放十进制数1234; 写出指令,将一个字节数据58H输出到端口43H; 将DX、BX、AX中的48位数右移1位。2.已知数据段变量datax、datay、dataz定义如下: datax dw 5678h,89abh datay dw 9ef0h,1234h dataz dw 2 dup ()编写一个程序段,实现将datax和datay中双字数据相加,并存入dataz单元。3.用一个程序段完成“REP MO
展开阅读全文