2010/2011上学期《微机原理与接口技术》复习提纲第1章微型计算机运算基础(填空、选择)1.各个进制之间的转换。
例如(123)10=( )2=( )8(37A.B)16=( )1020.8125=( )2= ( )162.原码、补码及反码假设[X]补=00A7H, 则X= ( )HY = -50,则Y的16比特补码=( )2已知[Z]补=A53BH,则[Z]原=( )H3.已知[X]补=7985H, [Y]补=5035H,则[X+Y]补=( )H,是否有进位和溢出?4.16位有符号数A09BH与90A1H谁大谁小?如果两数相减CF及OF值为多少?5.16位无符号数A09BH与70A1H谁大谁小?如果两数相减CF及OF值为多少?第2章80X86微型计算机系统(填空、选择、简答)1.计算机系统的硬件组成:5个部分。
2.根据总线的用途,分为哪三种。
3.80486的寄存器分为哪4类。
其中基本结构寄存器的通用寄存器有哪些?段寄存器有哪些?4.在实模式下,80x86存储系统可以寻址物理存储空间1MB,且段地址16位,段内偏移地址(有效地址)16位。
20位的内存物理地址=段地址*16+偏移地址。
多个逻辑地址可以对应同一个物理地址。
逻辑地址由段地址和物理地址组成。
例如1234H:0005H,1200H:345H,1234H:0005H都表示同一个物理地址12345H。
代码段、数据段等的地址空间可以相同,也可以重叠。
5.在保护模式下,80486存储系统可以寻址物理存储空间4GB, 80286存储系统可寻址16MB。
在保护模式下80486可以访问214个段,每个段长度达4GB,故总虚拟地址空间246B。
在保护模式下80286可以访问214个段,每个段长度达64KB,故总虚拟地址空间230B。
6.80X86的I/O地址空间与存储空间独立编址。
I/O空间可以达216B。
7.80486的数据总线32根,中断请求线2根即INTR和NMI。
第3章80X86指令系统(填空、选择、简答)1.CPU能够直接识别和执行的二进制编码的命令称作指令。
一个CPU能够执行的所有指令的集合就是该CPU的指令系统。
指令码由操作码和地址码构成。
2.存放操作数时,低字节存放低地址,高字节存放高地址。
3.寻址方式分为操作数寻址与程序转移寻址。
操作数寻址有立即寻址,寄存器寻址,直接寻址,寄存器间接寻址,基址寻址,变址寻址(可含比例因子),基址加变址寻址(可含比例因子)。
注意凡是含有BP,EBP,ESP作为基址寄存器的默认采用SS作为段寄存器,其他情况默认使用DS。
也可以采用段前缀来说明使用哪个段寄存器。
例如:MOV AX, [BX+10H]将使用DS;MOV AX, [EAX+EBP]将使用SS; MOV AX, [EBP*2+EAX]将使用DS;MOV AX,FS: [EBP*2+EAX] 将使用FS。
MOV AX, [BX+BP]为非法寻址,MOV AX, [DX+5]为非法寻址。
MOV AX, 1000H为非法指令。
4.80486的32位标志寄存器掌握OF, DF, IF, TF, SF, ZF, AF, PF, CF的含义。
加减运算后判断SF, ZF, AF, PF, CF及OF的值。
AND,OR, NOT,TEST后CF为0。
移位指令(SHR, ROR, RCR等)后影响CF,PF。
5.80x86的指令系统:(1)数据传送类指令(MOV, MOVSX, MOVZX, XLA T,PUSH,PUSHF/POPF, PUSHFD/POPFD, PUSHA/POPA, PUSHAD/POPAD, XCHG, LAHF, SAHF, IN, OUT, LEA, LDS/LES/LSS/LFS/LGS);(2)算术运算类:ADD, ADC, SUB, SBB, INC, DEC, NEG, XADD, MUL, IMUL, DIV, IDIV, CBW, CWD, CWDE, CDQ, BSWAP, CMP, DAA, DAS, AAA, AAS, AAM, AAD;(3)逻辑运算类指令:AND, OR, NOT, XOR, TEST, BT, BTS, BTR, BTC, BSF, BSR, SHL/SAL, SHR, SAR, ROL, ROR, RCL, RCR(4)字符串处理指令与标志DF、寄存器DS、ES、SI、DI及前缀指令REP/REPZ/REPNZ 的关系:MOVSB/MOVSW/MOVSD, CMPSB/ CMPSW/ CMPSD,SCASB/ SCASW/ SCASD,LODSB/ LODSW/ LODSD, STOSB/ STOSW/ STOSD, INSB/INSW/INSD,OUTSB/OUTSW/OUTSD;(5)控制转移和调用类指令:段内与段间转移JMP,LOOP,段内与段间调用CALL,段内返回(RETN)与段间返回(RETF),RETN n和RETF n,中断调用(INT n)的执行步骤与中断返回(IRET);(6)处理机控制指令:CLC,STC,CMC,CLD,STD,CLI,STI,NOP,HLT。
第4章宏汇编语言(选择、简答、读程、编程)1.指令性语句与指示性语句的区别2.常量使用以及常量名的定义(EQU或=),标号的三个属性(段属性、偏移地址属性和类型如NEAR或FAR属性),变量的三个属性(段属性、偏移地址属性和类型如BYTE、WORD、DWORD或QWORD属性)。
3.数字常量的算术运算符(+、-、*、/、MOD),逻辑运算符(NOT、AND、OR、XOR、HIGH、LOW、HIGHWORD、LOWWORD),关系操作符(EQ,NE,LT,LE,GT,GE),以及其他操作符(SHORT, NEAR, FAR, PTR, OFFSET, SEG, TYPE, $)4.变量的定义:DB, DW, DD, DF, DQ以及和DUP的配合。
5.段的定义中的定位参数BYTE、WORD、PARA、PAGE的含义,连接参数PUBLIC与STACK 的含义,段长度参数USE16与USE32的含义,段约定ASSUME语句的作用,子程序的定义与编写格式,ORG语句作用,END与END lab的作用。
6.常用DOS功能调用(1,2,9,10号功能调用),了解BIOS键盘功能调用。
7.宏MACRO的定义与调用,宏体中LOCAL伪指令的作用,宏调用与子程序调用的区别。
第5章汇编语言程序设计(读程、编程)1.汇编语言程序设计的步骤2.顺序、分支程序与循环程序的编写方法3.了解子程序的参数传递方法:寄存器、内存、堆栈;第6章接口技术(选择、简答)1.为什么需要接口(或者接口的功能是什么)?2.端口的含义。
根据端口的物理意义(或用途)划分端口有哪几类?p131.3.端口的地址编方式有哪两种?4.端口地址的产生原则?P.1355.判断合法与非法:IN AL, 20H; IN AX, 201H; IN 20H, AL, IN AL, EDX6.微机系统与外设的信息交换方式常有4种:无条件传送、查询方式、中断控制方式及DMA方式。
第7章中断技术(填空、选择、简答)1.什么是中断?什么是中断源?中断源的分类2.中断系统的功能?3.执行INT n时CPU完成哪些操作?4.什么是中断向量?中断向量表的地址范围?中断类型25H的向量地址是多少?中断向量表中全部都是中断服务子程序地址吗?5.掌握DOS中断的功能号25H及35H号调用。
P.886.8259A为可编程中断控制器接口。
它有几个端口地址?它可以管理几个中断源?2片8259A级连可以管理多少个中断源?8259A的IRR作用?ISR作用?IMR作用?什么是8259A正常嵌套方式与优先级循环方式?7.8259A的INT向CPU提出中断请求,CPU的响应条件是什么?8.8259A的INT向CPU提出中断请求,CPU的响应过程是什么?9.如何将8259A中ISR相应位清0?[即什么是自动EOI,常规EOI和特殊EOI]10.如果系统有两片8259A,且从片的INT连接到主片的IR2,如果都工作在完全嵌套方式下,则各个中断源的优先次序如何?第8章常用I/O接口芯片(填空、选择、简答、编程)1.8255A有2根地址线,4个端口地址,具有3个并行端口A口,B口和C口以及一个控制端口。
两组控制电路,A组控制电路控制A口和C口的高4位,B组控制电路控制B口和C口的低4位。
掌握8255的两个控制字的用法。
A口可以工作在方式0,方式1,方式2。
B口可以工作在方式0,方式1。
C口可以工作在方式0或者作为A口及B 口工作时的控制线。
方式0就是基本输入输出方式(或无条件输入输出方式),方式1就是选通型输入输出方式(即单向的条件查询或中断方式),方式2就是双向数据传送方式(即双向的条件查询或中断方式)。
2.掌握8255的控制字和3种工作方式。
3.掌握8255的初始化程序设计,8255的简单应用。
(重点掌握P194-P196的例子)4.通信的基本方式有串行通信和并行通信。
串行通信是指数据在一根传输线上一位一位的传输,用于长距离传输。
并行传输是指同时有多位数据传输,常用于短距离传输。
5.串行通信又分为同步传输与异步传输。
串行同步传输是指传送时以比较长的数据作为一组,这组数据之前和之后都设立同步字符。
串行异步传输是指传输时以一帧字符为单位,字符之前有起始位,然后为数据字符,其后为可选的奇偶校验位,最后为停止位。
通常,同步传输要求双方时钟要精确,传输效率高,而异步传输传输效率低。
会计算机传输效率。
6.8251为通用同步/异步接收/发送器(USART),有2个端口地址,可以工作在串行同步或异步方式下。
异步方式下波特率因子K可以为1,16,64之一,假设8251发送/接收时钟为f赫兹,则波特率B=f / K。
同步方式下,总是B=f。
7.掌握8251的初始化程序设计,(重点掌握P211-P212的例子)8.使用8251完成简单的串行通信,(重点掌握P212-P215的例子)9.8254为定时/计数器接口。
它有几个端口地址?它有几个计数器?每个计数器可以有几种工作方式?如果减1计数器当前值为1000H,则当一个时钟脉冲到来并且计数时,在二进制计数方式下,此时减1计数器的值为()。
在BCD计数方式下呢?10.掌握8254的方式选择控制和读回命令字,重点掌握8254的初始化程序设计,8254的读操作编程。
(重点掌握P229-P230例子)考试题型包括:填空、选择、简答、阅读程序、编程总评成绩=期末考试成绩×70%+平时成绩×30%。