收藏 分销(赏)

第三章微机原理-习题课教学提纲.doc

上传人:快乐****生活 文档编号:3760612 上传时间:2024-07-17 格式:DOC 页数:11 大小:53.50KB 下载积分:8 金币
下载 相关 举报
第三章微机原理-习题课教学提纲.doc_第1页
第1页 / 共11页
第三章微机原理-习题课教学提纲.doc_第2页
第2页 / 共11页


点击查看更多>>
资源描述
第三章微机原理 习题课 精品资料 第三章 习题课 一、选择题 1、在汇编语言程序的开发过程中使用宏功能的顺序是(C )。 A、宏定义,宏调用 B、宏定义,宏展开 C、宏定义,宏调用,宏展开 D、宏定义,宏展开,宏调用 2、汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句中不可省略的项是( B )。 A、名字项 B、操作项 C、操作数项 D、注释项 3、下列叙述正确的是( C ) A.对两个无符号数进行比较采用CMP指令,对两个有符号数比较用CMPS指令 B.对两个无符号数进行比较采用CMPS指令,对两个有符号数比较用CMP指令 C.对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/JNL指令 D.对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/JNB指令 4、编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有( D ). A、CMP B、SUB C、AND D、MOV 5、测试BL寄存器内容是否与数据4FH相等,若相等则转NEXT处执行,可实现的方法是( B )。 A TEST BL,4FH JZ NEXT B XOR BL,4FH JZ NEXT C AND BL,4FH JZ NEXT D OR BL,4FH JZ NEXT 6、检查BUF的内容是否为正偶数,如是正偶数,则令AL=0。下面程序段正确的是( C )。 仅供学习与交流,如有侵权请联系网站删除 谢谢11 A、MOV AL,BUF JS K1 SHR AL,1 JNC K1 MOV AL,0 K1:…… B、MOV AL,BUF AND AL,11 JNZ K2 MOV AL,0 K2:…… D、MOV AL,BUF JNP K4 TEST AL,80H JNZ K4 MOV AL,0 K4:…… C、MOV AL,BUF TEST AL,81H JNZ K3 MOV AL,0 K3:…… 7、下列描述中,执行循环的次数最多的情况是( A )。 A.MOV CX,0 B.MOV CX,1 LOP:LOOP LOP LOP:LOOP LOP C.MOV CX,0FFFFH D.MOV CX,256 LOP:LOOP LOP LOP:LOOP LOP 8、在下列指令中, D 指令的执行会影响条件码中的CF位。 A.JMP NEXT  B.JC NEXT  C.INC BX  D.SHL AX,1 9、下列指令执行时出错的是(A)。 A.ADD BUF1,BUF2 B.JMP DWORD PTR DAT [BX] C.MOV AX,[BX+DI] NUM D.TEST AL,08H 10、在下列指令的表示中,不正确的是(C)。  A.MOV AL,[BX+SI]  B.JMP SHORT DONI  C.DEC [BX]  D.MUL CL 11、在进行二重循环程序设计时,下列描述正确的是(A)。 A.外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内 B.外循环初值应置外循环之内;内循环初值应置内循环之内 C.内、外循环初值都应置外循环之外 D.内、外循环初值都应置内循环之外,外循环之内 12、下面是多字节加法程序,第一个数是8A0BH,第二个数是D705H。 DATA SEGMENT FIRST DB (1), (2),0H SECOND DB (3), (4) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV CX, (5) MOV SI,0 (6) NEXT: MOV AL,SECOND[SI] ADC FIRST[SI],AL INC SI LOOP NEXT MOV AL,0 ADC AL, (7) MOV FIRST[SI],AL MOV AH,4CH INT 21H CODE ENDS END START 请选择正确的答案填入空格中: (1)A)8AH B)0BH C)D7H D)05H (2)A)8AH B)0BH C)D7H D)05H (3)A)8AH B)0BH C)D7H D)05H (4)A)8AH B)0BH C)D7H D)05H (5)A)3 B)2 C)1 D)4 (6)A)CLC B)CLD C)STC D)CLI (7)A)1 B)-1 C)0 D)0FFH 二、填空题 1、指令JMP FAR PTR DONE属于(段间转移直接)寻址。 2、检查二个无符号数的关系,若要实现AL≥BL时分支去LOP1处,那么在“CMP AL,BL”指令后应跟的分支指令是(JC LOP1) 3、下面指令序列测试BH中的数是否为奇数,若为奇数则转移至K1处,横线处的指令应为( )。 TEST BH,01H __JNE_K1 4、循环指令LOOPNZ终止循环的条件是(     CX=0,或ZF=1    )。 5、条件转移指令JNE的测试条件为(ZF=0)。 6、执行如下程序:     MOV AX,0     MOV BX,1     MOV CX,100   A:ADD AX,BX     INC BX     LOOP A     HLT     执行后 (BX)= (101)。 上题的程序执行后(AX)= (5050)。 7、执行下面的程序段后,AL______。 BUF DW 2152H,3416H,5731H,4684H MOV BX, OFFSET BUF MOV AL, 3 XLAT 8、 是过程定义结束伪指令,其前面需要加 配套使用。 是段定义结束伪指令,其前面需要加 配套使用。 9、 设VALA EQU 200 VALB EQU 30 VALC EQU 1BH 下列表达式的值各为多少? (2)(VALB AND 0FH)OR (VALB XOR 0FH) (3)(VALA GE VALB )AND 0FH 三、程序阅读与设计 1、设AX,BX中的数一个为正数,一个为负数,下面程序段完成将正数送到PLW单元中存放,请将程序中所缺指令语句补上。    TEST AX,8000H    __JE K1或JZ K1_________    MOV PLW,BX    JMP DONE    K1:__MOV PLW,A___________    DONE: 2、 MOV DL,AL NOT DL TEST DL,04H JE NEXT         ┇ NEXT:… 若上述程序段执行时产生分支,说明AL中的数第 位一定为1?程序段执行后CF是 ? 第2位;CF=0 3、下面程序段是判断寄存器AH和AL中第3位是相同,如相同,AH置0,否则AH置全1。试把空白处填上适当指令。 ___ XOR AH,AL____ AND AH,08H ____ JE ZERO_____ MOV AH,OFFH JMP NEXT ZERO:MOV AH,0 NEXT:…… 4、 AND AL,AL JZ BRCH1 RCR AL,1 JZ BRCH2 RCL AL,1 INC AL JZ BRCH3 : ......    上述程序运行后,试回答:    (1)当(AL)=__0________时,程序转向BRCH1    (2)当(AL)=__1________时,程序转向BRCH2    (3)当(AL)=__-1________时,程序转向BRCH3 5、下列语句在存储器中分别为变量分配多少字节空间? VAR1 DB 10,2 VAR2 DW 5 DUP (?), 0 VAR3 DB ‘HOW ARE YOU?’,’$’ VAR4 DD -1, 1, 0 VAR1分配的字节空间为 字节;VAR2分配的空间为 字节;VAR3分配的空间为 字节,VAR4分配的空间为 字节。 6、以BUF为首址的字节单元中,存放了COUNT个无符号数,下面程序段是找出其中最大数并送入MAX单元中。 BUF DB 5,6,7,58H,62,45H,127,…… COUNT EQU $-BUF MAX DB? ┇ MOV BX,OFFSET BUF MOV CX,____COUNT-1_ MOV AL,[BX] LOP1:INC BX ____ CMP AL,[BX]_______ __ JAE NEXT MOV AL,[BX] NEXT:DEC CX _____ JNZ LOP1___________ _____ MOV MAX,AL 7、请在图中正确填写执行这些伪指令后数据区的内容 STRING1 DB ‘ABCD’ STRING1 STRING2 STRING2 DW ‘ABCD’ 8、读下面的程序并要求: (1)在每条语句后给出作用释。 (2)画出程序流程图。 (3)回答该程序完成什么功能? DSEG SEGMENT NUM1 DW 500 DUP(?) NUM2 DB 150 DUP(?) DSEG ENDS CSEG SEGMENT ASSUME CS:CSEG,DS:DSEG MAIN PROC RAR START: PUSH DS XOR AX,AX PUSH AX MOV CX,64H MOV BX,300 MOV SI,0 MOV DI,0 NEXT:MOV AL,BYTE PTR NUM1[BX][SI] ADD AL,AL MOV NUM2[DI],AL INC DI INC SI LOOP NEXT RET MAIN ENDP CSEG ENDS END START 答:这个程序是将数据段中有效地址从NUM1+300开始的连续100个任意8位二进制数分别乘以2后,存放到数据段中有效地址从NUM2开始的连续100个字节单元。 9、程序中下列语句在编译后装入内存时,操作系统为每个变量分配多少字节存储单元? 前15个字节中的内容是什么? ABC1 DW 0AH XYZ1 DB 4 DUP(?) STR1 DB “error a!”,“$” STR2 DB “OK!” ABC2 DD 1,2,8150H 答: ABC1 2字节, XYZ1 4字节, STR1 9字节, STR2 3字节, ABC2 12字节。 10.试用数据定义语句DB或DW改写下述两语句中的某一个,使它们在存储器中有完全相同的存储情况。 VAR1 DB ‘abcdefghij’ VAR2 DW 6162H,6364H,6566H,6768H,696AH 答:将第一个伪指令语句改写为VAR1 DW ‘ba’,‘dc’,‘fe’,‘hg’,‘ji’,第二个伪指令语句不变。或第一个伪指令语句不变,而将第二个伪指令语句改写为: VAR2 DB 62H,61H, 64H,63H, 66H,65H, 68H,67H, 6AH ,69H 11、下面程序的功能是什么? MOV CH,4 LAB:MOV CL,4 ROL BX,CL MOV DL,BL AND DL,0FH ADD DL,30H CMP DL,3AH JL PRINT ADD DL,7 PRINT:MOV AH,02 INT 21H DEC CH JNZ LAB 显示输出BX寄存器里的内容 12、阅读如下程序段,回答所提出的问题,假定X1,X2,XN为无符号数。     ORG 100H     BLOK DW X1,X2,…,XN     COUNT EQU($-BLOLOK)/2     RESULT DW COUNT,? ……     LEA BX,BLOK-2     MOV CX,RESULT     XOR AX,AX     GOON:ADD BX,2     CMP AX,[BX]     JAE NEXT     MOV AX,[BX]     NEXT:LOOP GOON     MOV RESULT+2,AX     程序段执行完,回答下述问题     RESULT+2字存储单元的内容=______     BX=______     程序循环次数=______ 答: RESULT+2字存储单元的内容是MAX(X1, X2, … XN)     BX= 100H + 2×(COUNT-1)     程序循环次数= COUNT 13、某程序欲用单个字符显示的2号功能调用去显示STRING中的字符串‘COMPUTER’(不显示字符‘$’!).试在空白处填上适当的一条指令。  STRING DB‘COMPUTER’,‘$’  ┇  MOV BX,0FFSET STRING  LOP:MOV DL,[BX]     MOV AH,02H     INT 21H     _____ INC BX_______________     _____CMP [BX],24H________ JNE LOP 14、试编写一个汇编语言程序,要求对键盘输入的小写字母用大写字母显示出来。 答: BEGIN:MOV AH,1     INT 21H     CMP AL,’a’     JB STOP     CMP AL,’z’     JA STOP     SUB AL,20H     MOV DL,AL     MOV AH,2     INT 21H     JMP BEGIN     STOP:RET 15、现有下列数据段:    DATA SEGMENT    STR1 DB‘ABCDEFGHIJKL'    COUNT EQU -STR1    BUF DB COUNT DUP(0)    DATA ENDS    下面程序段是实现把STR1中所有字符逆向传送到BUF缓冲区(即STR1中第一个字符送到BUF的最后一个单元,STR1中最后一字符送到BUF的第一个单元)。试把程序中所空缺的指令填上。    MOV SI,OFFSET BUF-1    MOV DI,OFFSET BUF    MOV CX,COUNT    ___CLD_或 STD_____    LOP:MOVSB    ______ SUB SI,2__或____ ADD DI,2__    LOOP LOP 16、下述程序段完成计算2~20之间的偶数的和,并存于AX中。试把空白处填上适当的指令。 XOR AX,AX MOV BX,0 MOV CX,10或MOV CX,0AH CONT: ADD AX,BX ADD BX,2 LOOP CONT 17、BEG为起始地址的存储区域中存放有100个字节数据,现将其首、尾颠倒过来,重新排放这100个字节数据。请在程序中的空格处填入适当的指令使其完整。     MOV CX,32H??     LEA SI,BEG     MOV DI,SI       (1)     DON:MOV AL,[SI]       (2)     MOV [SI],AL       (3)     DEC DI     LOOP DON     HLT 答: (1) ADD DI, 99     (2) XCHG AL, [DI]     (3) INC SI 18、FUNCTION MACRO P1,P2,P3 MOV AX,P1 P2 P3,1 ENDM 请回答下列问题: ⑴上面程序段中,MACRO和ENDM是一对伪指令,在 宏 定义中,它们成对出现。 ⑵通过调用语句FUNCTION 100,SUB,AX调用之后,AX寄存器中的内容为 99 。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服