《《微机原理及接口技术》全套电子课件教案-期中考卷分析.ppt》由会员分享,可在线阅读,更多相关《《微机原理及接口技术》全套电子课件教案-期中考卷分析.ppt(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、期中考卷分析期中考卷分析z一、选择题一、选择题(共共20分,每题分,每题2分分)z1以下以下4个等式中个等式中 是正确的。是正确的。z A 10011011B=263H=385 z B 10011011B=26CH=385 z C 10011011B=263H=3875 z D 10011011B=26CH=3875 Dz2 以 下 无 符 号 数 中 最 大 的 数 为 。z A 01100010B B 10011000BCD z C 61H D 99 DA 62H(98)B 98 C 61H D 99z3 X补=11001101,那 么 X/2补=。z A 01100110 B 11100
2、110 z C 10011010 D 三者都不是 Bz4有符号数92H进行符号扩展,其16位表示为 。A 0092H B 0F92H C FF92H D F092H Cz有符号数算术右移为除以2,最高位不变。z5用 位二进制代码表示一位BCD码。A 4 B 8 C 16 D 三者都不是 Az6操作数地址在存放器中的寻址方式,是 寻址方式。z A 立即 B 直接 z C 存放器间接 D 存放器Cz7CPU的地址总线是 。A 单向的 B 单向且三态的 C 双向的 D 双向且三态的Bz88086CPU外部的地址总线为 位。A 16 B 20 C 24 D 32Bz9计算机内的“溢出是指其运算的结果
3、。z A 超出了计算机内存储单元所能存储的数值范围 z B 为无穷大z C 超出了该指令所指定的结果单元所能存储的数值范围z D 三者都不是Cz10CPU用减法指令对两个补码表示的带符号数据45H被减数和A1H减数进行减法运算后,标志位CF,SF,OF分别为 。z A 0,1,1 B 1,1,1 z C 0,1,0 D 1,1,0B 01000101-10100001 10100100 z二、二、填空题填空题(共共16分,每空格分,每空格1分分)z 18086CPU从内部功能上可分为z 和 两个独立的功能部件。BIUEUz2计算机内有一个字节数据10111001B。z(1)假设把它作为无符号整
4、数,那么与之对应的十进制数为 。两个无符号数比较大小时,8086CPU用标志存放器中的 标志判断结果。z(2)假设把它作为有符号补码时,对应的十进制数为 。两个有符号数比较大小时。8086CPU用标志存放器中的 标志判断结果。z(3)假设把它作为ASCII码,该值为字符 的ASCII码,字母B的ASCII码是 。z(4)假设把它作为一个非压缩的BCD码,它表示的数是 。185CF-71SF、OF9942Hz3内存单元2000H:1000H的段内偏移地址为 ,物理地址为 ,假设(BP)=1000H,用指令MOV AL,BP取出该单元的内容,段存放器 的值应为2000H,用指令MOV AL,BX取
5、出该单元的内容,段存放器 的值应为2000H。1000H21000HSSDSz48086CPU的存放器CS:IP总是指示z 的地址,一般情况下当取出一个指令字节后,自动加1。z5 在 以 下 程 序 执 行 后,AL的 值=。z DATA DB 3 DUP(2 DUP(2,0),30H)z MOV AL,DATA+9 30H下一条指令IP2,0,2,0,30H,2,0,2,0,30H,2,0,2,0,30H z四、问答题四、问答题(共共14分分)z1简要解释以下名词的意义:简要解释以下名词的意义:每题每题2分分 z(1)ASCII (2)DW z(3)SF (4)堆栈堆栈 P.14P.121P
6、.57P.74z2试说明循环程序的根本构成局部及其作用,并说明它有哪两种结构。6分 P.141z三、指令与伪指令三、指令与伪指令(共共12分分)z1有符号定义语句:每题有符号定义语句:每题1分分z ORG 100Hz BUFFERDB?z BLOCKDW 1000z COUNT EQU 1024z指指出出以以下下指指令令中中哪哪些些是是错错误误的的,对对“,错,错“。z(1)ADD DI,DX (2)MOV BUFFER,ALz(3)LEA BL,BUFFER (4)MOV CX,DLz(5)MOV DI+2,DI(6)MOV AL,BLOCKz(7)MOV BX,AX (8)MOV COUN
7、T,AX(1)(2)(7)(3)(4)(5)(6)(8)z2 DS=2000H,BX=100H,SI=5,20210H开始的内存单元值为0H、22H、44H、66H、88H、0AAH、0CCH、0EEH,写出以下指令分别执行后AX或AL的值。每题1分 z (1)MOV AX,1200Hz (2)MOV AL,BX z (3)MOV AX,2BXz (4)MOV AX,BXSI AX=1200HAL=0HAX=6644HAX=0CCAAHz五五、程程序序阅阅读读(共10分分,每每空空格格2分分)datasegment buffer dw 12h,34hcount equ$-buffer resu
8、lt db?data endsstack segment para stack stack db 100dup(?)stack ends 00010010001101005个“1结果单元=5偏移地址=2 code segment assume cs:code,ds:data,ss:stack start proc farbegin:push dsmov ax,0push axmov ax,datamov ds,axlea si,buffermov cx,count mov bl,0hagain:mov dh,08h mov dl,80hagain1:moval,si and al,dl jz
9、next inc bl next:ror dl,1 dec dh jnz again1 incsi loop again mov result,blsi:地址指针cx:外循环次数bl:1个数dh:内循环8检测某1位是否为1模板dl=10000000模板dl循环右移一位si指向下一个数据al=0cx=0dl=80h一次循环检测一个字节 z六、编程六、编程(共共28分分)z1编写一个程序,将自编写一个程序,将自BUFFER单元开始存放的单元开始存放的100个个字节数据,分成正数与负数,正字节数据,分成正数与负数,正数送数送PDATA开始的单元,负数送开始的单元,负数送MDATA开始的单元,并统计正
10、开始的单元,并统计正数和负数的个数,正数的个数送数和负数的个数,正数的个数送PNUM单元,负数的个数送单元,负数的个数送MNUM单元。单元。14分分 lea si,buffer lea di,pdata lea bx,mdata mov cx,count mov dx,0again:lodsb test al,80h jnz mius stosb inc dh jmp nextmius:xchg bx,di stosb xchg bx,di inc dlnext:loop again mov pnum,dh mov mnum,dldata segmentbuffer db x1,x2,x100
11、count equ$-buffer pdata db 100dup(?)mdata db 100dup(?)pnum db?mnum db?data ends正负z1编写一个程序,将自BUFFER单元开始存放的100个字节数据,分成正数与负数,正数送PDATA开始的单元,负数送MDATA开始的单元,并统计正数和负数的个数,正数的个数送PNUM单元,负数的个数送MNUM单元。14分 z(1)db定义与mov ax,siz(2)地址指针用SP、bl、dl等。z(3)不用地址指针。mov al,bufferinc buffermov pdata,alinc pdatamov mdata,alinc
12、mdataz2在自BUFFER单元开始,放有一个数据块,BUFFER和BUFFER+1单元中放的是数据块的长度,自BUFFER+2开始每个单元存放两位BCD码,把它们分别转换为ASCII码,放到自BLOCK开始的存储区中(开始两个单元放新的数据块的长度)(14分)。z(1)每个单元存放两位BCD码,转换为两个ASCII码。z(2)用db定义数据。用al八位操作。datasegmentbufferdw2db34h,98hblockdw?db2*2 dup(?)dataendscodesegmentassumecs:code,ds:datastart:movax,dsegmovds,axmovcx,bufferleasi,buffer+2leabx,blockmovax,cxsalcx,1movbx,cxincbxincbxmovcx,ax长度*2again:mov al,simov dl,aland al,0fhor al,30hmov bx,alinc bxmov al,dlpush cxmov cl,4shr al,clpop cxand al,0fhor al,30hmov bx,alinc siinc bxloop againmov ah,4chint 21hcode endsend start