




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、微机原理期中试题答案专业年级:姓名:学号:电子信息工程系考试曰期:2005/11/27、填空题(12分,每空1分1对于十进制数66,当它用二进制数表示时为1000010,用十六进制数表示时为 42 H;用压缩BCD码表示时为:01100110 o2.8086/8088CPU的数据线和地址线是以分时复用方式使用的。3.8086/8088 CPU最小工作模式的含义是指:单处理器系统。5. 对于8086/8088CPU,设有物理地址00400H,试写出其两种不同的逻辑地址 0000:0400H、 0040H:0000H o6. 设有逻辑地址1234H:1234H,试写出其对应的物理地址13574H。
2、7. 设SP为2000H,则执行PUSH AX后,SP二1FFE H,其中AH压入1FFFH单元,AL压入1FFEH单元。8. 在计算机中:lByte=8bit。二、简答题(48分,每题3分1-设机器字长为16位最高位是符号位,用补码完成以下运算:96-18(-18 原二 1000000000010010B(-18 补=11 111 111 11101110B96 0000000001100000B0000000001001 HOB2. 设机器字长为8位.最高位是符号位,试用“双高位”法判别下述二进制运算有 没有溢出?若有是正溢出还是负溢出?A. 89+106B. - 11 + 1000101
3、1001 11110101+01101010+0110010011000011 01011001正溢出无3. 有一个补码表示的二进制数11001011,写出算术左移和算术右移的结果。算术左移:94H算术右移:E5H4. 分别指出下列指令中的源操作数的寻址方式。(1MOV AX,CX 寄存器(2MOV CX, BX寄存器间接(3MOV AX,6BXDI相对基址变址5. 指出下面程序片段中的错误。A1:DB?去掉丫A2 DW 10KI EQU 1024MOV DSJ200H立即数不能直接送DSMOV AX,80MOV KI,AX K1不能修改MOV AL,A2操作数类型不匹配 6. 8086/80
4、88 CPU的内部结构由哪两部分组成?各自主要功能是什么?EU:指令译码与执行指令BIU:地址形成、取指令、指令排队、读写操作数、总线控制7下述程序片断执行后AX、BX、CX的值各为多少?(注和2的ASCII码分别是31H和32HMYDATA SEGMENTADB 12,'12'BDW'12'MYDATAENDSMYCODE SEGMENTASSUME DS:MYDATA,CS:MYCODEMOV AX,MYDATAMOV DS,AXMOV AX,WORD PTR AMOV BX,WORD PTR A+2XOR CX , CXMOV CL,BYTE PTR B
5、AX=310CH BX=3232H CX=0032H8. 8086/8088 CPU内部包含有哪些通用寄存器?它们的主要功能是什么?AX、BX、CX、DX:16位的寄存器,均可拆分成两个八位的寄存器。某些指令中有专门用法。AX:累加器BX:基址寄存器CX:计数寄存器DX:数据寄存器9. 8086/8088 CPU内部包含有哪6个专用寄存器?它们的主要功能是什么?CS代码段寄存器用来存放当前代码段的基地址。DS(数据段:用来存放供程序使用的数据的一段存储区的基地址。ES(附加段:附加的数据段的基地址,SS(堆栈段:堆栈段的基地址。IP: 16位寄存器。指示代码段存储区域中下一条指令的段内偏移量。
6、FLAGS标志寄存器,用来指示微处理器的状态并控制其操作。10. 8086/8088 CPU的标志寄存器有哪些状态标志?各自的用途是什么?CF(进位标志:保存(最高位加法的进位和减法的借位PF(奇偶标志:表示计算结果低8位中T的个数是偶数AF(辅助进位:用来保存加法或减法结果第3、4位之间的进位或借位。ZF(零标志:表示算术或逻辑运算的结果为零。SF(符号标志:保存运算结果的最高位状态。OF(溢出标志:溢出是在两个数相加、减时可能产生。11与操作数有关的寻址方式有哪些?立即数寻址方式、寄存器寻址、直接寻址方式、寄存器间接寻址、寄存器相对寻址、基址变址寻址方式、相对基址变址寻址方式、隐含寻址12
7、. 堆栈存储区由哪两个寄存器管理?简述数据压栈和弹栈的过程。堆栈存储区由两个寄存器管理:堆栈指针(SP和堆栈段寄存器(SS。当一个字数据被压入堆栈时,SP首先减2,然后对栈顶存储单元进行16位字的 写操作:其高8位数据被放在SP-1单元中,低8位数据被放在SP-2单元中。当数据从堆栈中弹出时,低8位从SP单元移出,高8位从SP+1单元移出,然后 SP+2。13. 8086/8088的指令系统按功能可分为哪几类?数据传送类指令、算术运算类指令、逻辑运算与移位类指令、字符串处理类指 令、控制转移类指令、处理器控制类指令14. 改正下面程序片段中的错误。DATA SEGMENTADB 12、24、3
8、4 改为7BDW<12,DATA ENDSCODE SEGMENTASSUME DS:DATA,CS:CODEMOV DS,DAT A MOV AX,DATA/ MOV DS,AXMOV DX,OFFSET A BXMOV AL,DX+2 BX15. 对于下面这条指令:MOV BX, ( (PORT1 LT 5) AND 50) OR(PORT1 GE 5) AND 40)则当 PORT 1 <5 或者 PORT 1 >5 时,BX 的值各是多 少?当PORT 1 <5时,BX=50当PORT 1 >5时,BX=40 16. 8086对存储器的管理为什 么采用分段
9、的办法?最大段和最小段的存储空间是多大? 8086 / 8088 CPU的地址 总线为20位,可寻址1MB的存储器地址空间。但CPU内部可提供地址的寄存器 及ALU都是16位,其寻址范围为64KB。所以,8086 / 8088系统中将1MB的存 储空间划分成若干逻辑段,每段最大长度为64KB。最小长度为16B 5二、程序分析题(10分)下面的程序是统计内存中以TAB为起始地址的单 元中带符号数的正数和负数的个数,并将正数的个数和负数的个数分别放入内存 的POST和NEGT单元。请先分析程序,然后在空格处填入适当的内容。DATA SEGMENT TAB DB-23, 23, -34, 45, .
10、 COUNT EQU _ $-TAB_ POST DB OOH NEGT DB 0 DATA ENDS CODE SEGMENT ASSUME CS : CODE, DS : DATA STAR: MOV AX, DATA MOV DS, AX MOV CX, COUNT MOV SI, OFFSET TAB LPO: MOV AL, SI CMP AL, 0 JGE LP1 INC NEGT JMP LP2 LP1: INC POST LP2: INC SI LOOP LPO MOV AH, 4CH INT21H CODE ENDS END STAR 6三、编制一完整程序(包括有关子程序),
11、完成以下功能:若字节变量TESTONE和TESTTWO相等,则调用ALLSAME子程序显示输出即,否则调 用 NOTSAME 子程序显示输出,!。,(15 分)DATA SEGMENT TESTONE DB ? TESTTWO DB ? DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA START: MOV AX, DATA MOV DS, AX MOV AL, TESTONE CMP AL, TESTTWO JNEC1 CALL ALLSAME JMP EXIT Cl: CALL NOTSAME EXIT: MOV AH, 4CH INT 21H
12、ALLSAME PROC MOV DL,MOV AH, 2INT21H ALLSAME ENDPNOTSAME PROC MOV DL,'!' MOV AH, 2 INT 21H NOTSAME ENDP CODE ENDS END START 7四、设有一个首地址为ADDR的N字数组,试编写一个完整的汇编语言程 序,使该数组中的数按照从小到大的次序排列。要求:数据排序用子程序完成。(15 分)DSEG SEGMENT ADDR DW N DUP(? DSEG ENDS STACK SEGMENT STACK SA DB 100 DUP(? TOP LABEL WORD STACK ENDS CSEG SEGMENT CSSUME CS:CSEG, DS:DSEG, SS:STACK MAIN PROC FAR START: MOV AX,STACK MOV SS, AX MOV SP, OFFSET TOP PUSH DS XOR AX, AX PUSH AXMOV AX, DSEG XCHG AX, BX+2 MOV DS, AX MOV BX, AX MOV SI,OFFSET ADDR CONT: ADD BX, 2 MOV CX, N-l LOO
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论