1、第一章:1 BCD码、2进制、十进制、十六进制之间的转换,原码、反码、补码带符号数,可用原码、反码和补码三种方式,原码:8位2进制形式表示;反码:正数的反吗与原码相同,负数反码,可将负数原码的符号位保持不变,数值位取反得到;补码:正数补码和原码一样,负数补码等于它的反码末位加1。BCD码是一种具有十进制位权的二进制编码,也就是用二进制编码表示的十进制数。因为1位十进制数需要用4位二进制编码来表示,而4位二进制编码有16种组合,从中挑选10种表示十进制的10个数码溢出位OV:进位C7=C8时,OV=0,无溢出;进位C7!=C8时,OV=1,溢出,结果错误微机组成:1.存储器(只读存储器ROM,随
2、机存取存储器RAM)2.微处理器MPU(运算器(算术逻辑单元ALU,累加器A,暂存器TMP,程序状态字PSW,通用寄存器PS),控制器(指令部件,时序部件,微操作控制部件)3.I/O接口和外设4.地址总线、数据总线和控制总线第二章:2 常见的引脚、。3 堆栈规则、指令、功能4 机器周期的计算5 PC、SP、DPTR、PSW,RAM的低128字节,位寻址区,工作寄存器组程序状态字PSW:Cy(PSW.7)进位标志位;AC(PSW.6)辅助进位标志,执行加减运算时,产生低4位向高4位进位或者借位,AC=1,否则AC=0;F0(PSW.5)用户标志位;RS1和RS0(PSW.4和PSW.3)工作寄存
3、器组选择位,RS1=0,RS0=0,第0组寄存器组(00H07H);RS1=0,RS0=1,第1组寄存器组(08H0FH);RS1=1,RS0=0,第2组寄存器组(10H17H);RS1=1,RS0=1,第3组寄存器组(18H1FH);OV(PSW.2)溢出标志位;P(PSW.0)奇偶标志位,累加器ACC中1的个数的奇偶性,若有奇数个1,P=1;否则P=0。16位的程序计数器PC;16位的数据指针DPTR,功能是存放16位的地址,作为访问外部程序存储器ROM、外部数据存储器RAM和扩展I/O接口时的地址,编程时,即可按16位寄存器使用,也可以按两个8位寄存器分开使用,即DPH是DPTR高8位,
4、DPL是低8位程序存储器ROM用来存放程序代码和常数;数据存储器RAM用来存放可以读写的数据,如运算的中每个键结果、最终结果以及缓冲数据片内、片外ROM统一地址范围0000H0FFFFH,接高电平,PC在0000H0FFFH,从片内ROM取指令;PC大于0FFFH,或者接低电平时,到片外ROM取指令片内RAM低128字节(00H7FH)中,00H1FH位工作寄存器区,共32个单元,4组(R0R7),寄存器常用于存放操作数及中间结果;位寻址区,20H2FHSP是堆栈指针,堆栈遵循“后进先出”或“先进后出”原则,是在片内RAM中划出的,用于存放临时数据的一部分连续的存储单元,具体功能是保护断点和保
5、护现场,系统复位后,SP初始化位07H,执行PUSH或CALL指令时,在存储数据前SP自动加1,使堆栈从08H开始。堆栈最好在内部RAM的30H7FH单元,避开00H到2FH单元是片外程序存储器选通信号,低电平有效ALE是地址锁存控制信号机器周期:一个机器周期是由12个振荡周期组成,当振荡频率位12MHz时,一个机器周期为1 微秒,当振荡频率为6 MHz时,一个机器周期为2微秒。频率*周期=12us第三章:6 常见指令,包括逻辑运算指令等。7 LJMP,AJMP的区别8 寻址方式寻址方式:直接寻址(指令中直接给出操作数所在的单元地址或位地址),立即寻址,寄存器寻址,寄存器间接寻址,基址加变址寄
6、存器间接寻址,位寻址,相对寻址(相对寻址只能出现在转移指令中)第四章:9 根据程序,写出结果,堆栈指令,数据传送指令第五章:10 51中断源、中断源入口地址,外部中断触发方式 外部中断触发方式:电平触发(IT1=0),边沿触发(IT1=1)INT0中断地址(0003H000AH);T0中断地址(000BH0012H);INT1中断地址(0013H001AH);T1中断地址(001BH0022H);串行口中断(0023H002AH)外部设备中断源,控制对象中断源,故障中断源,定时脉冲中断源,人为设置的中断源中断系统功能:能实现中断及返回,能实现优先权排队,能实现中断嵌套中断传送方式优点:分时操作
7、、实时处理、故障处理中断处理过程:中断响应(关中断,保护中断),中断处理(保护现场,中断服务,恢复现场,开中断)和中断返回(中断条件:设置中断请求触发器,设置中断屏蔽触发器,中断是开放的,CPU在现行指令结束后响应中断)输入/输出数据传送方式:无条件传送方式(同步传送):外设工作速度非常快、外设工作速度固定;查询式传送方式(条件栓送或异步传送);中断传送方式;DMA传送方式POTRS和PORTD是查询式传送方式的状态端口和数据端口的符号地址中断源寄存器TCON和SCON 中断触发器EA(EA=1为中断开放)中断允许控制寄存器IE 中断优先级控制寄存器IP定时器/计数器控制寄存器TCONTF1(
8、TCON.7)T/C1溢出中断请求标志位,地址8FHTF0(TCON.5)T/C0溢出中断请求标志位,地址8DHIE1(TCON.3)外部中断1(INT1)中断请求标志位,地址8BHIT1(TCON.2)外部中断1(INT1)除法控制标志位,地址8AH,IT1=0时,电平触发方式,IT1=1,IE0(TCON.1)外部中断0(INT0)中断请求标志位,地址89HIT0(TCON.0)外部中断0(INT0)除法控制标志位,地址88H串行口控制寄存器SCONTI(SCON.1)串行口发送中断标志位,地址98HRI(SCON.2)串行口接受中断标志位,地址99H过程:开CPU中断 SETB EA或M
9、OV IE,#80H(IE最高位EA置1)开部件中断 SETB EX0/ EX1/ ET0/ ET1设置优先级 SETB PS/PT1/PT0/PX1/PX0若为外部中断,设置触发方式 SETB/CLR IT0/IT1第六章:11 I/O接口的作用和基本类型12 定时器编程,工作方式:0、1I/O接口作用:实现与不同外设的速度匹配,实现与外设的隔离,改变信号的性质,实现数据传输方式和电平的交换(锁存、隔离、变换、联络)I/O口类型:串行和并行第七章:13 存储容量计算、存储器扩展存储容量(bit)=2的地址线条数次方*数据线的条数 P22数据传送指令1.内部数据传送指令 MOV2.外部数据存储
10、器或I/O口传送指令 MOVX MOVX A,DPTR MOVX A,Ri MOVX Ri,A3.程序存储器与累加器A传送指令 MOVCMOVC A,A+PC MOVC A,A+DPTR4.堆栈操作指令 PUSH(进栈,先+1) POP(出栈,后-1)5.数据交换指令整字节交换指令 XCH低半字节交换指令 XCHD A=64H B=12HA=62H B=14H累加器高低半字节交换指令 SWAP A=0F7HA=7FH算术运算指令1. 加法指令不带进位的加法指令 ADD带进位加法指令 ADDCADDC A,Rn/direct/Ri/#data;(A)=(A)+(Rn/direct/Ri)/#da
11、ta+(Cy)加1指令 INC 只有指令INC A影响PSW中P标志位2. 减法指令带借位减法指令 SUBB减1指令 DEC 只有指令DEC A影响PSW中P标志位3.乘法指令 MUL MUL AB;(A)*(B)=(A)积的高8位存在B寄存器中,低8位存在累加器A中(Cy总是为0,P仍为A的奇偶校验位,当积大于255时,OV=1,否则OV=0)4.除法指令 DIV DIV AB;(A)/(B)=(A).(B)商存在A,余数存在B(Cy和P的影响和乘法相同,当除数为0时,OV=1,除法没意义否则OV=0)5.二-十进制调整指令 DA逻辑运算指令1. 逻辑与、或、异或指令ANL 某位与0“与”,
12、该位清0 (用00001111屏蔽高4位)ORL 某位与0“或”,该位保持不变,与1“或”则置1XRL某位与1“异或”取反,与0“异或”保持不变2. 移位指令RL 累加器左环移 RLC 累加器通过Cy左环移RR 累加器右环移 RRC 累加器通过Cy右环移3. 清零指令CLR 置1指令SETB 取反指令CPL 4. 位置位指令 SETB控制转移指令1. 无条件转移指令 长转移指令 LJMP(三字节双周期指令,提供16位地址)绝对转移指令 AJMP(提供低11位地址)短转移指令 SJMP间接转移指令 JMP JMP A +DPTR;(PC)=(A)+(DPTR)2. 条件转移指令累加器判0转移JZ
13、 rel;若(A)=0,(PC)=(PC)+2+relJNZ rel;若(A)!=0,(PC)=(PC)+2+rel比较转移CJNZ ,rel若目的字节大于或等于源字节,Cy=0;若目的字节小于源字节,Cy=1。(PC)=(PC)+3,两者值不相等,(PC)=(PC)+3+rel减1条件转移指令DJNZ Rn,rel;(Rn)=(Rn)-1,若(Rn)=0,(PC)=(PC)+2否则(PC)=(PC)+2+relDJNZ direct,rel;(direct)=(direct)-1,若(direct)=0,(PC)=(PC)+3;否则(PC)=(PC)+3+rel3. 位控制转移指令判Cy转移指令JC rel;若Cy=1,(PC)=(PC)+2+rel,Cy=0,(PC)=(PC)+2JNC rel;若Cy=0,(PC)=(PC)+2+rel,Cy=1,(PC)=(PC)+2判直接寻址位转移指令JB bit,rel;若(bit)=1,(PC)=(PC)+3+rel,(bit)=0,(PC)=(PC)+3JNB bit,rel;若(bit)=0,(PC)=(PC)+3+rel,(bit)=1,(PC)=(PC)+3JBC bit,rel;若(bit)=1,(PC)=(PC)+3+rel,(bit)=0,(bit)=0,(PC)=(PC)+3