微机原理及接口技术复习.docx
10页微机原理与接口技术复习一、 考试要点:1、 填空:数制转换,原码、补码、反码及BCD码,指令运用、物理地址计算2、 单项选择:基本概念、指令分析与运用、接口芯片8255与8253控制字及编程3、 判断题:基本概念4、 简答题:基本概念、基本原理、8086CPU结构与内存组织、半导体存储器、财0输入输出接口、接口 芯片8255、82535、 指令分析:给出数据段和程序段指令,分析每步的执行后寄存器结果或整个程序执行后各寄存器的 结果6、 接口芯片编程题:给出芯片功能要求,写出设置命令字的初始化程序段7、 程序设计题:给出数据段,按照要求编写应用程序二、 复习要点1、 微处理器结构及原理(教材第1,2, 4章)8088CPU的结构、部件及其功能、工作模式、复位、存储器组织与物理地址计算(段地址结构),总 线各种进制之间转换,数的机器码表示:原码、反码和补码2、 指令系统及汇编程序设计(教材第2, 3章)寻址方式(地址计算)、基本指令及功能(传送类、运算类、控制转移类、串操作)、数据定义伪 指令、汇编程序结构,DOS功能调用(基本输入、输出)3、 输入输出接口(教材第6章)接口功能、I/O数据传送方式。
4、 控制及接口芯片原理及编程(教材第8、10章)8255. 8253原理及编程(设置及应用编程)5、 D/A,AD转换接口(一般了解)6、 主要指令:传送类:MOV,PUSH,POP,LEA运算类 ADD (ADC),SUB (SBB),CMP,INC,DEC,MUL,DIV,AND,OR,NOT,TEST,XOR,SHL,SHR,SAL,SAR,ROL,ROR,RCL,RCR串操作类:MOVS,LODS,STOS,CMPS,SCAS,REP (REPE,REPNE)控制转移类:JMP,条件转移,LOOP,JNC,JC,JNZ,JZ,CALL,RET,INT,IRET三、题例(注意这里的题例,只是代表题型样例,不是说考题是从这里选出来的,请大家 按复习要点系统复习)(一)填空题例1、 (561)(注:10= ( 1000110001 ) 2= (1061) 8= (231) 16= ( 0101 0110 0001 ) BCD3位二进制数对应一位八进制数4位二进制数对应一位十六进制数)(78)原码=(01001110 )原码=(01001110)反码=(01001110)补码(-69) = ( 11000101)原码=(10111010)反码=(10111011 )补码(注:1、首先变为二进制数:(78) 10= ( +01001110 ) 2 (-69) 10= ( —1000101 ) 22、再转变为相应编码(原则方法如下) 符号位:最高位为符号位。
0:正,1:负正数的原码,反码,补码都一样负数的原码:数值部分与真值的二进制一样负数的反码:数值部分与真值的二进制部分取反0变1,1变0)负数的补码:数值部分与真值的二进制部分取反加1)2、 接口电路的作用是设备选择 、数据缓冲、设备控制、 信号变换和状态指示3、 CPU与接口间传送的信号类型主要有地址信息、数据信息 和 状态信息4、 80X86 CPU中最多可寻址216 个I/O端口,地址从 0000H 到0FFFFH 5、 一般接口设计中芯片的片选CS接 高位地址译码 而内部寄存器中低位地址 决定6、 8086CPU中,若段地址为0BF00H,则该段的首地址为0BF000H 孔最高地址 为 0CEFFF H7、 8086CPU中,若物理地址为0A4A60H,地址偏移量为84B0H,则段地址为9C5BH H8、 8 0 8 6指令系统的串操作指令中,源操作数的物理地址由寄存 与SI相加得到,目 的操作数的物理地址由寄存器ES左移四位与DI相加得到9、 使用—AND一AX, 00FFH—指令可使寄存器AX的高8位清零,其他位不变,使用 OR AL, 0F0H 指令可使寄存器AL高4位置1,其他位不变,使用 XOR AX,00FFH 指令可使寄存器AX的低8位取反,其他位不变。
使用 MOV AX,SS: [560H] 指令将SS: 560H单元内容传送到AX寄存器中,使用 MOV [560H],CX 指令将寄存器CX的内容传送到DS: 560 H单元中,使用 MOV CX,6734H 指令将数据6734送入CX寄存器中使用 指令将从端口地址60H输入数据到AL寄存器中二)单项选择题例1、 将8255的C 口的PC3置1,则写入8255的命令字为( C )A: 06H B: 03HC: 07H D: 0AH2、 设8255的A 口为基本输入/输出方式0输出,B 口为选通方式一输入,C 口高4位为输入,低4位为输出,则方式控制字为( E )A: 0BEH B: 9EHC:90H D:8EH3、 要使8253的一个通道定时达到1秒钟以上,则在CLK端输入的计时脉冲频率要小于(C )A: 1MHZ B: 640KHZC: 64KHZ D: 6. 4KHZ4、 已知CPU的地址线为20根,则它能寻址的内存空间最大为(D )A: 16K B: 64KC: 640K D: 1M5、 已知CPU的地址线为为A0〜A13,则它能寻址的地址范围为(C )A: 0000~07FFHC: 0000〜3FFFHB: 0000~0FFFHD: 0000~FFFFH6、一个字节为8位二进制数,作为无符号数,它能表示的最大值为(C )A: 127C: 255B: 128D: 2567、 CPU当前运行状态保存在( B )寄存器中。
A. IP B.标志寄存器 C.累加器 D. CS8、 8086 CPU的20位程序地址由 (C )决定A. CS寄存器 B. SS和IP寄存器 C. CS和IP寄存器 D. DS和IP寄存器9、 下列80X86指令正确的是(A )A. POP AX B. MOV CS, 0FF00HC. MUL AL, CL D. SHL AL, 510、 下列能够将AX寄存器清零的指令是(B )A. AND AX, AX B. SUB AX, AXC. NOT AX D. OR AX, AX11、 8255可编程并行接口中,可以进行双向数据传输的端口是(B )A•所有端口 B. 口 A C. 口 B D. 口 C12、 已知8255的控制寄存器口地址为20H,则对口 C的PC7位进行置1的正确指令是(B )A. MOV AL,07H B .MOV AL, 0FHOUT 20H, ALOUT20H, ALC. MOV CL, 07HD.MOVCL, 0FHOUT 20H, CLOUT20H, CL(三) 判断题例(正确的打J,错误的打X)1、 ( )并行通信的速率大于串行通信只是因为造价高,传送距离近。
2、 ( ) 8255与外设之间不能采用应答方式工作3、 ( ) 8255的三个端口都有三种工作方式4、 ( )当计数时钟频率F=2MHZ时8253的一个定时/计数器无法完成一秒钟定时5、 ( ) 80X86的中断向量表存放的是中断服务程序的入口地址6、 ( ) 80X86中I/O端口地址是独立编址的,用IN和OUT专用指令访问7、 ( )当指令的操作数为立即数时,指令执行时不需要再访问内存8、 ( )堆栈采用的是“先进先出”的数据操作方式9、 ( )伪指令可以产生机器码10、 ()当两数相加,最高位产生进位时,结果溢出四) 简答题例1、 8086主要有哪几部分组成?各部分的功能是什么?2、 8086 CPU中总线接口单元(BIU)的主要功能是什么?3、 什么是中断? 8086CPU的中断系统可以处理那几类中断?4、 8086的内存是如何组织的?5、 什么是逻辑地址?什么是物理地址?两者之间是什么关系?6、 8086有哪些段寄存器?每个段寄存器的功能是什么?7、 半导体存储器有哪几种类型?各有什么特点?8、 接口电路的主要功能是什么? 一般与CPU连接需要哪些信号?9、 输入/输出接口电路与外部设备间交换的信号有哪几种类型?10、 一般微机系统包括哪些部件,它们之间是采用什么方式连接的?11、 什么是堆栈?堆栈的数据存储采用什么方式?使用什么指令访问堆栈?12、 8255有几种工作方式?各有什么特点?13、 8253有几种工作方式?各有什么特点?(五)接口编程题例1、 在8253的定时/计数器0的CLK0端输入频率为10KHZ的脉冲,要在OUT0输出频率为4HZ的方 波,已知8253的口地址为280H〜283H,请设计初始化程序。
2、 在8253的定时/计数器1的CLK2端输入频率为100KHZ的脉冲,要在OUT2端输出20ms中断请 求信号,已知8253的口地址为280H〜283H,请设计初始化程序3、 设8255的口 A为工作在方式2,输入允许中断,口 B为方式1输出,输出禁止产生中断,口 C为 输出,8255的端口地址为520〜523H,请设计8255的初始化程序4、 设8255的口 A为工作在方式1的输出,禁止中断,口 B工作在方式1输入,允许中断,口 C为输 出,8255的端口地址为530-533H,请设计8255的初始化程序六)程序分析题例请将程序每一步执行后的寄存器中的数据填到右边的括号里 数据定义VAR1DB 50HVAR2DW 3000HSTRDB ‘95431’程序片段MOVBX,OFFSET STRMOVAL, [BX+2]AL =(34H )ADDAL,VAR1AL=(84H );(34H+50H)MOVDX,VAR2DX=(3000H )DECDXDX=(2FFFH);(3000H—1)ORAL, DHAL=(0AFH );(84H OR 2FH)CMPAL, 05HAL=(0AFH ); AL 不变XORCX, CXCX =(0000H )DECCXCX =(0FFFFH );(0—1SUBCX, DXCX=(0D000H ) ;(0FFFFH—2FFFH)MOVVAR2, CXVAR2=(0D000H )解:变量分配:50H 00H 30H 39H 35H 34H 33H 3mVAR1:VAR2:STR:(七)汇编程序设计题例1、将0000H: 3000H单元开始的十六个单元填入1——16。
CODESEGMENT ASSUMECS:CODE,DS:DATASTART:PUSHDSXORAX,AXMOVDS,AXMOVSI,3000HMOVCX,16AA1:MOV[SI],ALINCSIINCALLOOPAA1MOVAX,4C00HINT21HCODEENDSENDSTART数内存3000H单元放数据计数值,3001开始放数据,编一个程序统计数据区中的负数个SSTACK SEGME。





