收藏 分享(赏)

编程 汇编题目.doc

上传人:魏子好的一塌糊涂的文献 文档编号:2185501 上传时间:2020-05-22 格式:DOC 页数:9 大小:38.50KB
下载 相关 举报
编程 汇编题目.doc_第1页
第1页 / 共9页
亲,该文档总共9页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、一、选择题1. 已知指令CALL DWORD PTR BX执行前(SP)=108H, 则该指令执行后SP的内容为 ( )。A. 100H B. 104H C. 0FEH D. 106H2在标志寄存器中,当方向标志DF1时,每次执行MOVSB指令时使变址寄存器SI和DI( )。A. 加1 B. 加2 C. 减1 D. 减23. 设(AX) =0C568H,当执行指令ADD AX,54B7H后,标志位CF 和OF的值分别是( )。A. 0, 0 B. 0, 1 C. 1, 0 D. 1, 14. 指令“JMP DWORD PTR BX”属于( )。A. 段内间接转移 B. 段内直接转移 C. 段间

2、直接转移 D. 段间间接转移5. 下列标志位是符号标志的是( )。A. SF B. DF C. PF D. IF6.中断向量表中地址为0:124H的中断类型号是( )。A. 48H B. 4AH C. 49H D. 50H7.取变量或标号偏移地址的伪操作符是( )。A. OFFSET B. PTR C.ORG D. SEG8. 要使寄存器CL的最高位为1其它位保持不变,应使用的指令是( )。A. XOR CL, 80H B. OR CL, 80H C. AND CL, 7FH D. NOT CL 9.若A,B为无符号数,执行CMP A,B指令后,要求AB时转移的条件指令为( )。A. JLE

3、B. JA C. JBE D. JG 10. 指令MOV AX,SIBX中源操作数隐含的段为( )。 A. 代码段 B. 数据段 C. 堆栈段 D. 附加段 11.已知SP=2000H,执行RETF后(RETF为段间返回指令),SP的值为( )。A. 2006H B. 2004H C. 2002H D. 1FFAH12CALL指令在执行时,进入堆栈保存的寄存器的先后顺序是( )。A. IP、CS B. IP、CS、标志寄存器 C. CS、IP、标志寄存器 D. CS、IP13.使DF1的指令是( )。A. STD B. STI C. CLD D. CLI14.指令 DIV BX执行时商存放在(

4、 )。A. DX寄存器中 B. DX和AX寄存器中 C. BX寄存器中 D. AX寄存器中15. 当CX=0时,REP MOVSB执行的次数为。 ( )A. 1次 B. 0次 C. 65535次 D. 65536次2、 填空题1、INTER86CPU的中断系统属于_型中断。2、伪指令是不能形成_的代码。3、BX的约定段(默认关联段)是_段。4、EU执行CPU的所有_操作5、8086CPU通用寄存器为_、_、_和_等6、逻辑地址是由_和_构成。7、x86入栈操作总是先_然后_。8、INTER86系列微机端口地址是_位.9、标志位TF的功能是_。10、字符显示缓冲区的地址是_至_。三、名词术语解释

5、 (本题共5小题,每小题5分,共25分)1、 BIOS功能调用2、 地址表达式3、 子程序出口参数4、 标号的段属性5、 中断矢量四、编程题1、以下是将BX寄存器中的二进制数显示在屏幕上的程序。其编程思路是:1)设置SI为除数数组指针,BX寄存器中的数的最大范围为0FFFFH,最多为16位二进制数,所以置循环次数CX=16。2)将BX中每一位二进制分离出来的方法是,将BX寄存器中的数不断除以215,214,213,212,21,20所得商即为二进制的各位数。要求 、阅读程序,将其补充完整(每空4分共20分)。 、请给出本题其他编程思路,用程序框图表述出来。(本小题10分)。DATA SEGME

6、NTDIVI DW 32768, 16384, 8192, 4096, 2048, 1024, 512, 256, 128, 64, 32, 16, 8, 4, 2, 1 ;除数数组DATA ENDSCODE SEGMENTASSUME CS:CODE, DS:DATASTART: MOV AX,DATA MOV DS,AX MOV CX,16 MOV BX, 12AFH MOV AX,BX ( 1 ) NEXT: XOR DX,DX ( 2 ) PUSH DX OR AL,30H MOV DL,AL MOV AH,2 INT 21H ( 3 ) INC SI ( 4 ) ( 5 ) MOV

7、AX,4C00H INT 21HCODE ENDS END START另:请设想本题是否有其他编程思路?(加分题)2、已知a1.a20依次存放在以BUF为首址的连续数据区,每个数据占两个字节,和数SUM也为两个字节。编程计算SUMa1+a2+a3+a20。3、以下是一个含有子程序的字符串显示程序。实现在指定屏幕位置,以指定颜色显示字符串,字符串预置数据段中并以数值“0”作为结束符号。要求按照给定的入口参数,设计完成子程序设计。data segment db Welcome to masm!,0data ends code segmentassume cs:code,ds:data start: mov dh,14 ;dh装行号(范围:1-25) mov dl,4 ;dl装列号(范围:1-80)注:每超过80等于行号自动加1 mov cl,0cah ;cl中存放颜色属性(0cah为红底高亮闪烁绿色属性) mov ax,data mov ds,ax mov si,0 call show_str mov ax,4c00h int 21h show_str: ;显示字符串的子程序定义开始 . ret ;显示字符串的子程序定义结束 code endsend start

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 网络技术 > 项目管理

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:文库网官方知乎号:文库网

经营许可证编号: 粤ICP备2021046453号世界地图

文库网官网©版权所有2025营业执照举报