版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微机原理及其接口技术微机原理及其接口技术微机原理及其接口技术参考书梁合庆等.MCS-96系列十六位单片微机实用手册.北京:电子工业出版社,1995张友德等.单片微型计算机原理、应用及实验.上海:复旦大学出版社,1992肖广润等.微机原理及应用—8051、8098单片机应用基础.武汉:华中理工大学出版社陈光东.单片微型计算机原理及接口技术.武汉:华中理工大学出版社第一章微型计算机的基础知识(2学时)§1.电子计算机的发展简史电子计算机的发展史回顾微型计算机的发展历史微型计算机的特点§2.单片机的发展概况单片机的发展简史单片机的特点单片机的应用领域第一章微型计算机的基础知识(2学时)§3.有关计算机的基本概念计算机的基本组成一些术语的介绍§4.计算机中的数制及码制计算机中的数制不同数制之间的转换二进制编码微机中数的表示法§5.计算机的硬件和软件计算机的硬件和软件的有关概念计算机语言系统软件、应用软件及数据库§6.计算机的基本工作原理微型计算机的组成微型计算机的指令系统微型计算机的程序编写将程序输入模型计算机一条指令的执行过程模型机程序执行过程第一章微型计算机的基础知识(2学时)第二章MCS-96单片机
的基本结构及工作原理(8学时)§2-1.概述§2-2.单片机芯片的基本结构及特点8096/8098芯片的基本结构8096/8098芯片的主要特性8096/8098芯片的引脚及功能8096/8098芯片的封装形式芯片的引脚功能第二章MCS-96单片机
的基本结构及工作原理§2-3.CPU及其操作CPU的具体组成及其特色CPU总线寄存器算术逻辑单元RALUCPU寄存器阵列CPU的操作CPU的时序第二章MCS-96单片机
的基本结构及工作原理§2-4.8096/8098的存储器空间存储空间的配置情况内部寄存器空间寄存器阵列特殊功能寄存器(SFR)专用存储器空间存储器控制器第二章MCS-96单片机
的基本结构及工作原理§2-5.I/O口及其控制I/O口的功能及基本结构8096/8098的I/O口简介P0口(数字输入兼模拟输入口)P1口(准双向I/O口)P2口(多功能口)P3口和P4口(数字I/O口兼总线口)I/O控制及状态寄存器I/O控制寄存器I/O状态寄存器第二章MCS-96单片机
的基本结构及工作原理§2-6.芯片配置寄存器关于CCR的说明CCR各位的定义及说明总线控制标准总线方式地址有效选通方式写选通方式地址有效且写选通方式就绪控制第二章MCS-96单片机
的基本结构及工作原理§2-7.时钟信号时钟源振荡信号的产生内部三相时钟的产生§2-8.复位复位的概念复位电路复位状态其它复位途径第三章存储器及其及系统连接§1.存储器简介半导体存储器的分类存储器芯片的选择§2.常用存储器芯片简介RAM芯片EPROM芯片EEPROM芯片第三章存储器及其及系统连接§3.存储器的寻址方法线选法全译码法部分译码法§4.存储器及系统的接连常用译码器、锁存器的介绍最基本的8096/8098单片机系统的硬件逻辑最简单的存储器及单片机的连接多个存储器芯片的单片机系统第四章MCS-96指令系统§1.指令系统概述指令的格式操作数的类型状态标志及8096/8098程序状态字堆栈的概念§2.寻址方式寻址及寻址方式MCS-96系列内部寄存器阵列中寄存器的命名问题MCS-96系列单片机指令系统的寻址方式§3.数据传送指令第四章MCS-96指令系统§4.算术及逻辑运算指令§5.跳转和调用指令无条件转移指令条件转移指令§6.单寄存器指令§7.移位指令§8.专用控制指令§9.伪指令第五章汇编语言程序设计§1.概述§2.顺序程序§3.分支程序§4.循环程序§5.子程序设计§6.查表程序第六章输入输出及中断§1.输入/输出的概述输入输出的概念输入输出接口及其功能I/O接口电路的一般结构端口的概念接口电路的分类CPU及外设间的接口信号接口设计的基本任务和原则接口电路芯片第六章输入输出及中断§2.CPU及外设交换信息的方式无条件传送方式查询传送方式中断传送方式直接数据通道传送方式(DMA方式)§3.I/O接口的寻址方式及地址译码方式I/O接口的寻址方式I/O端口的地址译码方式第六章输入输出及中断§4.中断技术中断的概念中断技术的优点实时控制系统中中断系统的应用中断源及其优先级的概念中断嵌套中断响应的条件中断响应的过程中断传送方式的接口电路第六章输入输出及中断§5.8096/8098单片机的中断系统8096/8098单片机中断系统的结构框图8096/8098单片机的中断源8096/8098的中断控制8096/8098单片机中断响应的过程中断响应的时间中断禁区的概念第六章输入输出及中断§6.8096/8098单片机的中断优先级控制8096/8098中断优先级排队的特点实现预定的优先级排队顺序的软件措施8096/8098中断优先级控制小结§7.中断系统软件的设计要点中断系统软件设计的一般方法中断系统软件设计的一些问题§8.中断系统编程示例用软件产生中断中断优先级的改变及中断嵌套改变中断返回地址第七章微型计算机的接口技术§1.微机接口技术原理概述微机接口技术的基本内涵接口电路的基本任务单片机接口设计的特点及任务微机接口技术的一般原理和方法§2.典型的并行I/O接口芯片8255A可编程并行I/O接口芯片8155可编程并行I/O接口芯片第七章微型计算机的接口技术§3.微机及显示器的接口LED及单片机的接口LCD及单片机的接口§4.微机及键盘的接口键盘及其接口的基本功能非编码键盘的工作原理非编码键盘及8096/8098单片机的接口设计第七章微型计算机的接口技术§5.单片机及8279可编程键盘/显示器接口8279可编程键盘/显示控制器8279的命令及状态字8279的输入数据的格式8096/8098单片机及8279的接口§6.微机及打印机的接口TPμP-40A微型打印机的接口信号单片机及TPμP-40A打印机的接口电路打印程序的编制第八章定时器及其应用§1.8096/8098单片机中的硬件定时器T1和T2定时器1定时器2T1和T2中断定时器中断的产生及控制过程§2.定时器的应用定时器T1的应用定时器T2的应用§3.监视定时器及其应用第九章高速输入部件HSI及其应用§1.高速输入部件HSI的结构及工作原理HSI的基本结构HSI的工作过程HSI的中断§2.HSI的应用HSI的用途HSI对事件的检测方法HSI的应用第十章高速输出部件HSO及其应用§1.高速输出部件HSO的结构及工作原理HSO触发的事件HSO的基本结构HSO的工作过程§2.HSO的使用方法HSO触发事件的设置关于采用T2作为HSO时间基准的若干问题关于软件定时器HSO的中断HSO中事件的清除§3.HSO的编程及应用实例编程步骤及要点HSO的应用第十一章A/D和PWM及其应用§1.8096/8098的A/D转换器及其应用8096/8098A/D转换器原理8096/8098A/D转换器的控制8096/8098A/D转换器的编程§2.PWM输出(D/A)PWM的结构和工作原理产生PWM波形第十二章串行口及其应用§1.串行通信的基本概念串行通信的特点及方式数据传送模式信号的调制及解调信号的检错及纠错传输速率及传送距离§2.RS-232C接口标准第十二章串行口及其应用§3.8096/8098串行口的工作原理8096/8098串行口的工作方式8096/8098串行口的控制§4.8096/8098串行口的应用串行口的使用特点串行口的应用第十三章80C196KB/KC单片机§1.80C196芯片的引脚及封装§2.80C196单片机的结构及其主要特色80C196芯片的基本构成80C196芯片的主要特色§3.80C196的存储器空间§4.80C196单片机增加的指令§5.80C196芯片中的不同格式的寄存器PSW的状态位芯片配置寄存器CCRSFR中的一些寄存器第十三章80C196KB/KC单片机§6.80C196的中断系统80C196新增的中断源80C196的中断优先级80C196的中断控制如何学习本门课程硬件部份是基础,只有熟知单片机的硬件结构的特点,才能进行各种编程、应用和开发。指令系统的关键是要正确理解和掌握指令的寻址方式。存储器及外部扩展系统要运用许多基础知识,将各种外围电路及单片机之间实现接口,因此要求掌握外围电路的原理、特性和使用方法。这是进行系统设计的基础。实验是巩固知识的必要手段,参加实验前认真做好预习。学会使用参考书。电子计算机的发展简史第一代──电子管计算机(1946-1958)第二代──晶体管计算机(1958-1964)第三代──集成电路计算机(1964-1971)第四代──大规模集成电路计算机(1971-现在)第五代──智能型计算机(?-?)微型计算机的发展历史第一代微处理器(1971-1973)──4004第二代微处理器(1973-1975)──8080第三代微处理器(1975-1978)──Z80第四代微处理器(1978-80年代中期)──8086第五代微处理器(80年代中期-现在)──Pentium微型计算机的发展比较
字长(位)集成度(管/片)引脚(个)时钟(MHz)数据总线(位)地址总线(位)代表软件第一代4/81200-200016-240.5-0.84/84/8机器语言、简单汇编语言第二代85000-9000401-2.588汇编语言、高级语言第三代820000-7000040-645-108/1616汇编语言、高级语言、操作系统第四代16/3210万-100万6410-10016-3220-32汇编、高级语言、高级操作系统第五代64100万以上64以上100以上6464汇编语言、高级语言、专家系统微型计算机的特点体积小、重量轻性能价格比高可靠性高、功耗低灵活和实用单片机的发展概况分支一:充分利用超大规模集成电路技术,不断扩大微处理器的功能,向以赶超小型机、超级小型机乃至中大型计算机为目标的发展方向。分支二:单片机的诞生和发展,为满足各个领域的广泛应用,不求规模大,力争小而全。单片机的定义在一块芯片上集成了构成一台计算机的基本部件:中央处理器(CPU)、存储器(RAM/ROM)、I/O接口以及其他有关部件(如定时器/计数器、中断控制、系统时钟、系统总线和A/D及D/A转换器等)。一块芯片就构成了一台计算机,故称为单晶片微型计算机(SingleChipMicrocomputer),简称单片机,又称微控制器(MicrocontrollerUnit)或嵌埋式控制器(EmbeddedController)。单片机的发展第一代单片机(1974-1980)──MCS-48系列第二代单片机(1980-1983)──MCS-51系列第三代单片机(1983-现在)──MCS-96系列型号ROM/EPROM寄存器RAM内部RAM定时器/计数器A/D通道I/O引脚捕获/比较串行口PWM速度(MHz)寻址空间8x988k23202432HSIO111264k8x96BH8k23202048HSIO111264k8x97BH8k23202848HSIO111264k8x95BH8k23202432HSIO111264k8x9xJF16k2322562848HSIO111264k8xc196KC8k23202848HSIO1112、1664k8xC1988k23202434HSIO1112、1664k8xC1948K23202034HSIO111264K8xC196KC16K48802848HSIO1316,2064k8xC196KD32K100002848HSIO1316,2064k8xC196MC16K4880213538EPAPTS方式21664k8xC196MD16K48802146412EPAPTS方式21664k8xC196MH32K744028506EPA221664k8xC196JQ12K36012826416EPA2EPA实现1664k8xC196JR16K488256265610EPA2EPA实现1664k8xC196KQ12K36012828566EPA2EPA实现1664k8xC196KR16K488256285610EPA2EPA实现1664k8xC196KT32K1000512285610EPA2EPA实现1664k8XC196NP4K1000020334EPA13241M8XC196NT32K1000512245610EPA2EPA实现201M8XC196NQ12K360128245610EPA2EPA实现201M单片机的特点体积小、功能全价格低廉面向控制特别适合于机电一体化智能产品单片机的应用领域用单片机构成智能化产品智能式仪器仪表家用产品医疗仪器计算机外部设备单片机在工业测控领域中的应用过程控制数据采集信号处理旧设备改造计算机的基本概念——基本组成冯•诺依曼结构计算机的基本概念——基本组成输入设备(InputEquipment)存储器(Memory)运算器(ArithmeticLogicUnit----ALU)输出设备(OutputEquipment)控制器(ControlBlocK)计算机的常用术语中央处理器(ControlProcessingUnit----CPU)CPU=ALU+控制器微处理器(MicroProcessingUnit----MPU)外部设备(Peripheral)输入/输出接口电路(I/OInterfacing)总线(Bus)数据总线(DataBus)地址总线(AddressBus)控制总线(ControlBus)计算机的常用术语计算机字长(WordLength)微型计算机(Microcomputer)微型计算机系统(MicrocomputerSystem)微型计算机:MPU、Bus、存储器、I/O接口外部设备:显示器、键盘、打印机、外存储器软件:系统软件、应用软件、数据库电源基本进制──二进制数码:0和1计数规律:逢二进一优点:数字装置简单可靠,所用元件少;运算规则简单,运算操作简便。缺点:不太符合人们的习惯;位数太多时书写及记忆不方便。1位为“比特”(Bit),8位为字节(Byte),16位为字(Word)。十六进制和八进制数码:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F计数规律:逢十六进一优点:以二进制为基础,转换方便;比二进制数书写和记忆方便。八进制可由十六进制推知。例1:10011100101101001000B=9CB48H10011100101101001000B=2345510O不同数制之间的转换其他数制转换成十进制数:十进制数转换为二进制数:整数:(N)D=bn2n+bn-12n-1+…+b121+b020例2将N连续除以2取余数bi,直到商为0。小数:(N)D=b-12-1+b-22-2+…+b-n2-n例3将N连续乘以2取整b-i,直到满足精度。十进制转换成R进制:整数部分连续除以R取余数作为结果,小数部分连续乘以R取整作为结果,从“.”起始。将(25)D转换成二进制数解:所以(25)D=(b4b3b2b1b0)B=11001B将(0.706)D转换成误
差ε不大于2-5的二进制数解:所以(0.706)D=0.10110B其误差ε=0.592×2-5<2-5,满足要求二进制编码ASCII码:美国标准信息交换代码(Ameri-canStandardCodeforInformationInterchange),它用七位二进制码表示一个字母、符号和数值。国际标准汉字码:用16位二进制码表示一个汉字,并且每个字节最高位为1,以区别其是否为ASCII码。数值编码有权码:8421BCD码、自然二进制码、2421码、5421码等。8421BCD码的表示形式是二进制的,但实质是十进制的,所以在进行算术运算时,计算机总是进行二进制的运算,所以需将结果进行修正才正确。(例4)无权码:编码关系不能用位权关系来表示的数码,例如:余3码、格雷码等。8421BCD码求96+84的值解:微机中数的表示法——原码、反码和补码原码:在自然二进制码前直接加符号位的表示法。如:[+7]原=00000111B,[-7]原=10000111B反码:正数及原码相同,负数数值部分按位取反,符号位不变。如:[+7]反=00000111B,[-7]反=11111000B补码:正数及原码相同,负数数值部分按位取反后加1,符号位不变。如:[+7]补=00000111B,[-7]补=11111001B微机中数的表示法——定点数和浮点数定点数:指小数点的位置固定不变的数。整数:小数点固定在数据最低位之后纯小数:小数点固定于符号位及数据位之间小数:小数点固定于事先约定的某位之后浮点数:为克服定点数范围太小而表示成±K×2b,其中K是尾数(纯小数),b是阶码(整数)。如让尾数的最高位数值不为0,则是规格化浮点数,计算机运算都用该种数。(例5)将(24.09375)D
转换成规格化浮点数解:⑴(24.09375)D=11000.00011B⑵规格化K=+0.1100000011Bb=+5=+101B⑶地址分布存储器(地址0~127)程序区(RAM或ROM)数据区(只能用RAM)外部设备和接口电路键盘(输入设备)显示器(输出设备)总线数据总线DB(D0~D7)地址总线AB(A0~A7)控制总线CB(WR和RD)模型计算机的基本结构微处理器(CPU)算术逻辑单元(ALU)控制器:包括指令寄存器IR、指令译码器ID和定时、控制电路等部分。寄存器:专用寄存器:程序计数器PC、存储地址寄存器MAR、标志寄存器F、数据寄存器DR和指令寄存器IR通用寄存器:寄存器A和寄存器B模型计算机的指令系统指令系统(共4条)LD──将一个数装入某个寄存器ST──将寄存器内的数送往某个存储单元或某个I/O端口ADD──完成两个数的加法运算SJMP──程序跳转到指定单元继续执行指令组成助记符目的操作数,源操作数将两个数8和9相加的
结果送到存储器和显示器程序区为存储器的00H~20H,其余为数据区。30H存结果,80H为显示器端口。LDA,#08HADDA,#09HLDB,#30HSTA,[B]LDB,#80HSTA,[B]
LP:SJMPLP将程序输入模型计算机将汇编语言对照指令表逐条翻译成机器代码,用十六进制表示;存储器中决定程序区,确定程序起始地址;将机器指令代码逐个字节送至相应的存储单元;采用一定的方法对已输入的程序进行调试,排除设计或翻译中可能出现的错误。模型计算机的执行过程一条指令执行过程:取指阶段:PC→MAR,PC+1→PC;MAR→AB且RD有效,数据→DB→DR分析执行阶段:操作码DR→IR→控制操作数DR→被处理程序执行过程:逐条指令按上述过程执行,PC起始为00H,逐渐增加。读存储器时RD有效,存数据或输出到端口时WR有效。最后程序循环等。计算机的软件系统软件(SystemSoftware)操作系统(OperatingSystem)翻译软件管理维护软件程序库应用软件(AppliedSoftware)数据库(DataBase)第一章作业计算机有哪几种基本结构?试述它们的各自特点,MCS-96单片机属于哪种结构?教材习题一9.(6);11.(2);13。第2章MCS-96系列单片机的基本结构及工作原理
内容提要本章首先介绍单片机的发展及应用概况和单片机的软硬件系统,并对8096单片机和存储器的性能特点作了简要说明。此外还介绍了有关的基础知识,以便为学习和应用单片机打下必要的基础8096/8098芯片的基本结构单片机和普通的微机是一样的原理,但是单片机主要用在控制方面,所以也有许多的特点和优势。一个单片机芯片是把中央处理单元CPU、随机存取存储器RAM、只读存储器ROM、定时器/计数器以及I/O接口电路等主要计算机部件,集合在一块集成电路芯片上的微型计算机,也就是说它不仅包涵了以上的运算器、存储器、控制器,而且也包含了部分的输入输出器件,这些器件方便实现了单片机控制功能强的特点。本书以8096为例子,其芯片硬件结构如图2-1。MCS-96系列单片机的典型硬件结构框图MCS-96系列芯片的功能部件中央处理器CPU:采用面向寄存器结构存储器:256字节RAM(或有8K字节ROM)输入/输出(I/O)功能部件三个定时器T1、T2及WATCHDOG高速输入/输出部件HSI/HSOA/D转换部件脉宽调制输出(PWM)部件串行通讯接口四(五)个并行I/O接口P0,P2,P3及P4口(或有P1)MCS-96系列芯片的主要特性CPU为16位,采用面向寄存器结构支持位、字节和字以及双字操作片内有256字节RAM用作寄存器时钟频率可达12MHz,执行指令最短1μs指令系统可对符号数和非符号数操作,指令可带多达3个操作数,非常灵活硬件完成乘、除法运算带有多种可编程I/O功能部件8096/8098芯片引脚及功能MCS-96系列芯片有48脚、52脚、64脚68脚和80脚等多种封装形式8098的DIP48脚及8096引脚配置基本相同,只是14脚和15脚有点差别8096引脚引脚功能工作电源及地:VCC、VSS、VPP、VPD、VREF、ANGNDI/O信号线:HSI、HSO、P0、P1、P2、P3、P4控制信号和时钟信号:
RESET(入)、RD(出)、WR/WRL(出)、READY(入)、EA(入)、ALE/ADV(出)、XTALT1(入)、XTALT2(出)、BHE/WRHBHE/WRH功能总线高位字节允许(BHE)或写外部存储器高位字节(WRH)的输出信号,由CCR选择。由于8096的数据宽度为16位,可以按字或字节访问存储器;而8098的内部总线虽为16位,但访问外部存储器都是按8位进行的。因此8096有BHE,而8098没有。若A0=0,BHE=1:访问低位(偶数)字节若A0=1,BHE=0:访问高位(奇数)字节若A0=0,BHE=0:同时访问高低两个字节CPU的具体组成及其特色CPU的结构(硬件结构框图)运算器:RALU和寄存器阵列控制器:控制器、地址译码器、指令寄存器及外部联系方式:通过地址寄存器B和D-Bus通过地址寄存器A和A-BusCPU的特点大多数CPU采用面向累加器的结构,虽结构较简单,但减慢了运算速度。8096/8098的CPU采用面向寄存器的结构,每个通用寄存器都具有累加器的作用,故加快了整体速度。CPU总线数据总线D-Bus(16位)用于RALU和通用寄存器通过特殊功能寄存器(SFR)及输入/输出端口通讯。地址总线A-Bus(8位)用于RALU、通用寄存器和指令寄存器控制器通过存储器控制器及片内和片外存储器通讯。注意CPU总线是CPU内部总线,及后面谈及的系统总线(外部总线)是不同的概念。(硬件结构框图)寄存器算术逻辑单元RALUALU(17bits)程序计数器PC(16bits)增量器(16bits)PSW高字节(8bits)字/移位寄存器(高或低)(各16bits)暂存寄存器(16bits)循环计数器(5bits)延时环节常数(0,1,2)CPU寄存器阵列在内部RAM中,除了24个特殊功能寄存器外,其他各寄存器构成寄存器阵列,每个寄存器都可作为通用寄存器,且均累加器的功能。232个寄存器阵列中,18H—19H两个单元作为堆栈指示器,其他230个单元除不能存放程序代码外,用作其它控制。(硬件结构框图)CPU的操作存放在外部存储器的程序指令在存储控制器的控制下由A-Bus进入CPU的指令寄存器;控制器对指令译码,产生响应的操作控制信号;RALU完成指令所规定的操作。除法指令的执行为例说明CPU的操作过程。(结构框图)
CPU的时序时序的概念在指令执行过程中,对应于微命令的脉冲信号的出现在时间上的先后次序,称为时序。时钟信号、状态周期和指令周期振荡信号及振荡周期振荡信号是片外振荡电路产生,典型的振荡频率是12MHz,振荡周期是1/12μs。时钟信号及状态周期时钟信号是计算机一切微操作的基准信号,是振荡信号三分频后产生,时钟信号的周期就是状态周期T(典型值0.25μs)指令周期是一条指令执行的时间,最短是4T,最长43T。§48096∕8098的存储器空间8096∕8098可寻址空间为64KB。分为片内和片外两大部分:8098片内只有256个字节的RAM,在使用时,一般需要外接存储器。片内、片外统一编址,片内占有最低地址号。一、存储空间的配置情况存储器的地址编号为0000~FFFFH,整个存储空间根据系统功能均分若干个部份,如下表所示。存储器分布图只能作为数据存放,不能存放指令代码非专用掉电保护寄存器阵列寄存器阵列占内部RAM中的18H~0FFH共232个单元,作通用寄存器,不可存放指令代码。(存储器分布图)18H和19H可作堆栈指针,但在无堆栈时可当成通用寄存器使用。寄存器可直接使用地址,也可用字母命名(用伪指令为寄存器取名)。0F0H~0FFH共16个单元的掉电保护空间的数据不会因VCC掉电丢失(VPD接干电池)。特殊功能寄存器(SFR)特殊功能寄存器(SFR)00H~17H共24个单元是特殊功能寄存器(SpecialFunctionalRegisters),不能作为通用寄存器。(存储器分布图)SFR用于片内的I/O功能部件的控制。TIMER1,TIMER2,HSI_TIME和HSO_TIME只能按字访问,R0可按字或字节访问,其他的专用寄存器只能按字节访问。很多寄存器读写的功能不一样,要注意。存储器控制器RALU和内外存储器交换信息时需经过存储器控制器,它通过A-Bus及几条控制线及RALU相连。(硬件结构框图)RALU中的PC值和数据地址都分成两个字节传送(A-Bus是8位)。为加速程序的取指,控制器中有一个辅助程序计数器(从PC),能自动加一,只有执行非顺序指令才取PC。为加速数据的存取,存储器控制器设有三个字节的队列。§2-5I∕O口及I∕O控制、状态寄存器构成:MCS-96系列单片机中,48脚的芯片有4个I/O口,68脚的芯片有5个I/O口功能:用于微机及外部设备的信息交换。输入引脚用于将外部的数字或模拟信号输入至计算机内供CPU处理,输出引脚将CPU输出的数字量转换成一定电平信号向外部输出。组成:主要由输入∕输出缓冲器以及内部寄存器组成。输入口通过输入缓冲器连向芯片内部总线,输出口通过输出缓冲器连向内部寄存器,而双向口则有一个内部寄存器、一个输入缓冲器和一个输出缓冲器组成P0口(数字输入兼模拟输入口)P0口专做输入口使用,通过控制可以输入数字量或模拟量。作为数字量输入时,通过P0口的输入缓冲器直接上D-Bus。(硬件结构框图)作为模拟量输入时,通过A/D命令寄存器有选择地将P0口的任一条接向A/D变换器。P0口是高阻抗数字量输入口,而模拟量输入时,其特性是变化的。P1口(准双向I/O口)P1口由P1寄存器和驱动部分组成。T1和T2是低阻抗MOS管,T3是高阻抗耗尽型MOS管。P1作为输入口时,必须先写“1”再读,才能获得正确数据。P1口的一个管脚P2口(多功能口)P2口为多功能口,第二功能的选择由IOC控制,它作为一般I/O口是准双向性质。48脚芯片只有P2.0~P2.2和P2.5,而64脚芯片则有P2.0~P2.7。P2.0:串行口发送TXD(出),受控于IOC1.5;P2.1:串行口接收RXD(入),无特殊控制;P2.2:外部中断EXTINT(入),受控于IOC1.1;P2.3:定时器2的T2CLK(入),受控于IOC0.7;P2.4:定时2复位T2RST(入),受控于IOC0.5;P2.5:脉宽调制PWM(出),受控于IOC1.0;P2.6和P2.7:没有第二功能。P2口的多功能引脚P2引脚号基本功能其它功能引脚选择信号P2.0输出TXD(串行口发送)IOC1.5P2.1输入RXD(串行口接收)P2.2输入EXTINT(外部中断)IOC1.1P2.5输出PWM(脉冲调制)IOC1.0P3口和P4口
(数字I/O口兼总线口)P3和P4都是双功能口。P3和P4作为双向I/O口时是漏极开路的。作输入时必须先写“1”才能读;作输出时必须外接上拉电阻。P3口的引脚编号为P3.0~P3.7,做系统总线时,用作地址/数据复用总线,传送低字节AD0~AD7。P4口的引脚编号为P4.0~P4.7,做系统总线时,用作地址总线,传送高字节A8~A15。P3和P4作为总线时是三态口。在传送数据时,P3口的8根线分时传送16位的数据,先传数据的低8位,再传高8位:在传送地址时,P3口送出地址码的低8位;P4口传送地址码的高8位P3和P4口的结构I/O控制寄存器IOC0控制定时器2和高速输入单元(HSI)IOC1控制中断源和高速输出单元(HSO)及其他。I/O状态寄存器IOS0保存关于HSO的有关状态。IOS1保存定时器及HSI的有关状态。注意读完定时器的状态后,IOS相应位会被清0,故应该备份。CCR的定义及说明芯片配置寄存器CCR(ChipConfi-gureRegister)存放芯片操作的有关信息。CCR的内容不能直接设置,必须通过对CCB(地址为2018H)单元进行设置,做RESET操作后CCB中的内容被自动装入CCR。CCR的数据格式D7D6D5D4D3D2D1D0保留位(D0=1以便与将来的器件兼容)数据总线宽度选择:D1=1是为16位,D1=0时为8位写选通方式选择:对于8098:D2=1时标准方式,0时写选通方式地址有效选通信号选择D3=1时,芯片提供地址所存允许信号ALE;D3=0时,芯片提供地址有效输出信号ADV决定内部就绪控制方式:即在总线周期中插入等待状态数00:最多等待一个状态周期01:最多等待两个状态周期10:最多等待三个状态周期11:禁止内部就绪控制片内程序加密方式:00:读/写保护01:读保护10:写保护11:不保护对于8098,设置为10总线控制方式系统总线采用何种方式运行就是所谓的总线控制问题。通过CCR可灵活选择不同的总线控制方式,减少外部硬件设计。CCR.3CCR.2输出控制信号控制方式11100100WR+BHE,ALEWRH+WRL,ALEWR+BHE,ADVWRH+WRL,ADV标准写选通地址有效写选通和地址有效标准总线方式标准总线方式是最常用的控制方式,控制信号是ALE、BHE和WR。ALE下降沿时地址码有效,地址锁存入外部锁存器。写操作由WR控制,16位数据还需BHE控制。地址有效选通方式在此方式下,ALE的功能被地址有效选通信号ADV所代替。ADV既可作为锁存触发信号,又可作为片选信号,在存储器片数不多时可节省外加的译码电路。写选通方式8位总线时可选择WR信号的宽度,这对于靠WR的下降沿锁存数据的器件接口非常有用。16位总线时WRL和WRH取代了WR和BHE信号,因而无须译码电路便可得到奇偶字节的选通信号。地址有效且写选通方式此方式既有地址有效选通方式的特点,又有写选通方式的特点。就绪控制就绪控制:为协调慢速器件及CUP的连接,在CPU总线周期中插入等待状态,让外设准备好。就绪控制是通过Ready引脚电平被拉低开始到Ready引脚变为高电平(外部控制)或CCR所规定的状态数到(内部控制)结束来实现的。CCR.5CCR.4等待状态数00011011最多等待一个状态周期最多等待二个状态周期最多等待三个状态周期禁止内部就绪控制时钟源振荡信号的产生CPU的工作是在时钟的控制下有序地进行的。8096/8098的时钟由外部时钟源或外接石英晶体(6~12MHz)及内部振荡电路配合工作先产生1个振荡信号,然后经3分频再生成3种不同相位的时钟信号(A相、B相、C相,见下图)3相时钟的周期T被称为状态周期,也叫机器周期,简称T状态,它是8098CPU操作的最小计时单位。8098的大部分内部操作及A相、B相或C相之一同步,因而运行速度大大提高。时钟源振荡信号的产生内部振荡方式:在引脚XTAL1和XTAL2外接石英晶振(简称晶振)。由于单片机内部有一个高增益运算放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。C1、C2起稳定振荡频率、快速起振的作用。电容值一般为5~30PF。时钟源振荡信号的产生把已有的时钟信号引入单片机。这种方式适宜用于使单片机的时钟及外部信号保持一致。内部三相时钟的产生复位信号的产生系统复位的目的是使系统能够进入一种初始状态,为系统的正常工作做好准备。复位操作需RESET引脚上持续两个状态周期的低电平。复位电平由低变高后,芯片内部执行10个状态周期,使一些寄存器初始化,清PSW,将2080H赋给PC,芯片配置字节(CCB)从2018H读出写入芯片配置寄存器(CCR)。复位信号可由复位电路产生,也可由监视定时器溢出或复位指令RST产生。复位电路复位状态寄存器复位状态寄存器复位状态寄存器或管脚复位状态P1口不定PWM_CTRL00HTIMER10000HP2口xx0xxxxxBINT_PENDING不定TIMER20000HP3口0FFHINT_MASK00HIOS000HP4口0FFHAD_RESULT不定IOS100HIOC0x0x0x0x0BAD_COMMAND不定PSW0000HIOC1x0x0xxx1BHSI_MODE0FFHSP不定SP_STATx00xxxxxBHSI_STATUS不定PC2080HSP_CONxxxx0xxxBHSI_FIFO空RD高电平SBUF(TX)不定HSO_CAM空WR高电平SBUF(RX)不定WATCHDOG0000HALE/ADV低/高电平片内的监视定时器溢出或当执行专门的复位指令RST时,也将实现复位,复位操作过程一致。其它复位途径第二章作业教材习题二2;5;10;15。存储器的分类随机存储器RAM(RandomAccessMemory)用于存放现场输入、输出的数据,运算的中间结果等各种临时数据,可随时读写,但掉电数据会丢失。RAM从结构上可分为静态RAM和动态RAM。只读存储器ROM(ReadOnlyMemory)用于存放程序、表格和常数等永久性数据,可读但不可随意修改,掉电数据不会丢失。ROM有掩模ROM、PROM、EPROM和E2PROM。存储器芯片的选择存储器类型容量速度价格功耗对电源的要求总的原则:在满足技术指标的前提下,尽量选用价格低廉、功耗小、电源种类少、使用方便的芯片。常用存储器芯片——RAM芯片6264RAM芯片8K×8的静态RAM,CMOS工艺,双列直插式封装,28个引脚,地址线A0~A12,使用单一+5V电源,额定功耗220mW,典型存取时间为200nsI0∕O0~I7∕O7数据线A0~A12地址线片选信号线数据输出允许信号线62256RAM芯片容量:32K×8的静态RAM,28个引脚,地址线A0~A14,使用单一+5V电源,常用存储器芯片——EPROM芯片2764EPROM芯片8K×8的EPROM,紫外线擦除,电编程,双列直插式封装,28个引脚,地址线A0~A12,工作电源+5V,编程电源+21V,最大工作电流为100mA,标准读出时间为250ns编程信号线27128EPROM芯片16K×8EPROM,紫外线擦除,电编程,双列直插式封装,28个引脚,地址线A0~A13,工作电源+5V,编程电源+21V,最大工作电流为150mA,标准读出时间为250ns,及2764相似。27256EPROM芯片32K×8的大容量EPROM,紫外线擦除,电编程,双列直插式封装,28个引脚,地址线A0~A14,工作电源+5V,编程电源+21V,最大工作电流为150mA常用存储器芯片——E2PROM芯片2816EEPROM芯片2K×8的大容量EPROM,电擦除,电编程,既能对单个存储单元进行擦除和重写,也能对整个芯片在10ms内进行擦除。双列直插式封装,24个引脚,地址线A0~A10,工作电源+5V,编程电源+21V,典型读取时间为250ms。
三种工作方式:(1)读取式(2)单字节写模式(3)芯片擦除模式2817AEEPROM芯片2K×8的EEPROM,电擦除,电编程,在进行擦写操作时无需外加编程电源和写入脉冲“擦、写完毕”联络信号线选法实施方法字选:将存储器芯片的全部地址线及系统总线的低位线一一对应相连;片选:将剩余的系统地址总线高位中某一根直接用作某一存储器的片选信号。特点:简便易行,不需要外加任何译码逻辑电路,适用于容量较小的系统设计中。造成存储空间浪费,且大多数情况下地址不连续,给存储器操作带来不便;易产生地址重叠;任一时刻,只能有一个片选信号有效;片选信号比可用地址线多时,不能用例3-1某存储器由两片存储器芯片组成,其中一片为RAM,容量为1K×8,另一片为EPROM,容量为4K×8,试用线选法为其编址,并决定每一芯片的地址范围。线选法——示例解:一般单片机系统中,地址总线的根数是16根。因此设系统地址总线为16根,其编号为A0~A15。容量为1K×8的芯片的地址总线为10根,其编号为,它们及系统地址总线的低10位A0~A9相连;容量为4K×8的芯片的地址总线为12根,其编号为,它们及系统地址总线的低12位A0~A11相连;而片选信号由剩余的系统地址总线A12~A15给出,任用两根。现设A12作为RAM的片选信号,A13作为EPROM的片选信号,且A12=1时选中RAM芯片,A13=1时选中EPROM芯片。CE是低电平有效,则每一片选线上均加一非门。RAM占用地址范围:1000H~13FFHEPROM占用地址范围:2000H~2FFFH例3-2某微机系统有两片2K×8的RAM芯片,还有两个外设端口,试用线选法为存储器芯片和外设端口编址。解:外设端口编址方法:(1)存储器方式;(2)I/O映射方式。8098是(1)方式。RAM芯片:容量均为2K×8,片上地址线共11根,编号为,其及系统地址总线的低11位A0~A10对应相连,又将A11、A12作为两RAM的片选信号,当A11和A12分别为1时选中芯片。则两芯片的地址范围为:RAM1:0800H~0FFFH,2K空间RAM2:1000H~17FFH,2K空间外设端口:每一端口分别用A13和A14作为寻址线;当A13为1时选中端口1,当A14为1时选中端口2,则两端口的地址范围为:外设1:2000H;外设2:4000H线选法——示例全译码法实施方法字选:将存储器芯片的全部地址线及系统总线的低位线一一对应相连;片选:每一芯片的片选信号由剩余的系统地址总线全部高位经地址译码电路产生。特点:(1)若系统有N根地址线,则全译码法可提供全部的2N个地址码,避免了线选法的浪费地址空间、地址编号不连续及地址重叠的问题;(2)全译码法及线选法的区别在于产生片选信号方法不同,线选法是将一根系统地址线作为一块芯片(或一个外设端口)的片选信号,而全译码法则是将若干根系统地址线译码后得到某个片选信号;(3)全译码法需要译码电路,使得电路的结构复杂,也增加了成本,容量越大,用于片选信号的地址线越少,电路愈简单,而外设端口的地址选择信号需要全部系统地址线,连线多,电路较为复杂,当系统中有多个外设时,这一问题突出;(4)实际上,可采用集成电路的快速译码器及少量的门电路,对若干个存储器或外设端口统一译码;(5)方便扩展例3-3某微机系统中有两片存储器芯片,一片为RAM,容量为2K×8,另一片为EPROM,容量为2K×8,试用全译码法为其编址,要求RAM的起始地址为0000H,且两芯片的地址空间是连续的。全译码法_示例解:RAM芯片的容量为2K×8,片上地址线共11根,它们及系统地址总线的低11位A0~A10对应相连,其起始地址为0000H,末地址为07FFH。片选信号应用A11~A15,共5根线经译码后产生。由芯片安排的地址号可见,应在这5根线输出全为0时选中该芯片。因此片选信号的逻辑表达式为:EPROM:芯片的容量为2K×8,其地址线亦为11根,它们及系统地址总线的低11位A0~A10对应相连,该芯片的地址空间及RAM芯片相连,地址号为0800H其起始地址为0000H~0FFFH,其片选信号由A11~A15经译码后产生。由芯片地址号可知,当A15A14A13A12A11=00001时选中该片,则芯片的片选信号表达式为:解:EPROM芯片:容量为8K×8,其地址线共13根,地址范围为2000H~3FFFH,13根地址线及系统地址总线的低13位A0~A12直接相连,则A13~A15作为片选信号,且A13A14A15=1时选中芯片,则片选信号的逻辑表达式:外设端口的地址号应用全部地址总线A0~A15共16根经译码后产生,因其地址号为4F08H,则当A0~A15=0100111100001000B时选中该端口。若外设的片选信号是低电平有效,则逻辑表达式为:例3-4一单片机系统有一容量为8K×8的EPROM芯片,其起始地址为2000H,一外设的地址号为4F08H,试用全译码法编址。部分译码法实施方法字选:将存储器芯片的全部地址线及系统总线的低位线一一对应相连;片选:对于存储器芯片,由剩余地址总线中部分译码产生;对外设端口可由线选法产生。特点:(1)是线选法和全译码的综合,既避免了过多的地址空间的浪费,又简化了电路;(2)使用多少根地址线完成片选信号的译码需根据系统的具体情况而定;(3)仍存在存储空间的浪费;(4)实际上,一般采用译码器(如三—八译码器74L138)对存储器编码。例3-5某系统中三片2K×8的EPROM芯片和两个外设端口,试用部分译码法为它们编址,要求存储器的起始地址为0000H且地址号是连续的。部分译码法——示例解:EPROM芯片的地址线共11根,它们及系统地址总线的低11位A0~A10对应相连,其起始地址为0000H,地址总线中剩有A11~A155根线可用于片选信号,现用其中三根线A11、A12、A13来产生三片EPROM芯片和两个外设端口的片选信号,具体连接如下:EPROM1:地址为0000H~07FFH,则A13A12A11=000EPROM2:地址为0800H~0FFFH,则A13A12A11=001EPROM3:地址为1000H~17FFH,则A13A12A11=010外设端口1:取A13A12A11=011,地址为1800H外设端口2:取A13A12A11=100,地址为2000H存储器及系统连接的器件
——常用译码器、锁存器常用译码器:74LS138(3-8线译码器)译码器的作用:避免分散使用多个由一般逻辑器件构成的译码电路,节省元器件,使整个电路结构更为简洁清晰。译码器的输出作为存储器或I/O端口的片选信号,一片译码器有多个输出。使能端由G1、G2A、G2B组成,输入端为A、B、C,输出端为,低电平有效,仅当使能端的电平组合为G1G2AG2B=100时,才能对输入端进行译码,译出23=8个有效信号。常用译码器:74LS139(双2-4线译码器)两个独立的译码器,每个译码器有一个使能端(G端)、二个输入端(A、B)和四个输出端。仅当使能端G=0时,才能对输入端进行译码,译出22=4个有效信号。存储器及系统连接的器件
——常用译码器、锁存器锁存器:74LS373(8位)8位锁存器,有一个使能端(G端)、一个输出控制端E、8个输入端(1D~8D)、8个输出端(1Q~8Q)。功能如下表存储器及系统连接的器件
——常用译码器、锁存器驱动器:74LS240(8位反码)、74LS244(8位原码)8096/8098单片机的最小系统最基本的8096/8098单片机系统的硬件逻辑最简单的存储器及单片机的连接最简单的存储器及单片机的连接例3-6设8098单片机及一片2764EPROM芯片相连,试画出接线图多个存储器芯片的单片机系统例:8096单片机需外接16K的RAM和16K的EPROM,RAM用6264,EPROM用2764,要求RAM芯片的起始地址为0000H,且四块存储器芯片的地址空间是连续的,另外系统中还有两个外设端口,也需为它们编址,试设计这一系统。解:为使存储空间连续,且为进一步扩展留有余地,使用译码器来产生片选信号。多个存储器芯片的单片机系统各存储器和I/O端口的地址分布6264(低位):00xxxxxxxxxxxxx0B(0000H-3FFFH偶地址)6264(高位):00xxxxxxxxxxxxx1B(0000H-3FFFH奇地址)2764(低位):01xxxxxxxxxxxxx0B(4000H-7FFFH偶地址)2764(高位):01xxxxxxxxxxxxx1B(0000H-3FFFH奇地址)I/O端口1:8000H-BFFFH(16K字节)I/O端口2:C000H-FFFFH(16K字节)如果使用WR和BHE,则可以将上例的写选通控制方式改为标准总线控制方式。如何实现可以作为思考题留给大家。例3-7第三章作业教材
习题三7、8。指令的格式基本指令格式:操作码[操作数]机器指令格式:操作码第一操作数低字节第一操作数高字节第二操作数目的操作数汇编指令格式:操作码操作码操作数操作码目的操作数,源操作数操作码目的操作数,第二操作数,第一操作数
机器指令由操作码和操作数两个部分组成。操作码:规定CPU应执行的操作类型,是指令的核心部分,每一指令必有操作码。操作码一般放在指令的最前面。一种代码对应一种操作。8096指令中操作码的长度占1个字节。操作数:这一部分给出参及操作的数据或数据所在的地址,操作数可有多种类型。操作数并不是指令的必要部分,在许多指令中可只有操作码而无操作数。操作数在指令中可以没有,最多可以有3个。操作数的长度在0~5个字节之间。每一字节为8位,第一个字节必须是操作码。8096/8098的大多数指令的操作码为一个字节,最多为两个字节,且操作码为两个字节的情况只限于带符号的乘除法指令。此时,操作码的第一个字节均为FEH,这表明在8096/8098指令系统中,凡是以FEH为第一个字节的指令必是带符号的乘除法指令,且机器码的第二个字节必是操作码。操作数位于操作码之后,在8096/8098的指令中最多可有三个操作数。指令的格式——机器指令格式操作数的类型操作数的形式:直接数据(立即数)、寄存器中的数据和存储器中的数据。操作数的定位规则:位于寄存器或存储器中的操作数需按类型规则存放,如有些操作数只能位于寄存器,有些操作数的有效地址必须是偶数地址等。操作数的类型:字节型(Byte)、字型(Word)、位型(Bit)、短整型(ShortInteger)、整型(Integer)、双字型(DoubleWord)、长整型(LongInteger)8位无符号数(字节型)BYTE是无符号的8位变量,其取值范围是0~255。对BYTE操作数可施行算术和逻辑关系操作,其结果以模256的方式出现。逻辑操作时,字节型变量是按位进行的。数据格式:D7~D0取值范围:0~255操作数的类型16位无符号数(字型)WORD是无符号的16位变量,其取值范围是0~65535。同理,对字型变量施行算术和逻辑关系操作时,其结果以模65536的形式出现;逻辑操作也是按位进行的。在MCS-96的地址空间中,字型数据必须按偶数字节定位。一个字型数据的低位字节占有偶地址,而高位字节占有相邻的较高(奇地址)地址。字的地址就是其低位字节的地址。数据格式:D15~D0取值范围:0~65535定位规则:字型操作数的低字节应位于偶地址单元,高字节位于下一个高地址(奇地址)单元。且字型操作数的地址以其低字节的地址表示。操作数的类型位型(Bit)位型操作数指字型操作数中的某一位,它只取“真”或“伪”两个值(布尔值)。8096/8098单片机可对寄存器阵列中的任意单元进行位操作,用以控制程序的流向。由此可见,对8096/8098单片机而言,仅内部寄存器阵列中的单元才有位型操作数的概念,且只有位测试并跳转类指令涉及位型操作数。短整型(ShortInteger)短整型操作数为8位的有符号变量,其最高位D7位为符号位,它的取值范围为-128~+127。原则上讲,对短整型数可进行算术和逻辑运算,运算时应注意符号位的变化情况;及字节型操作数相同,短整型数无定位规则,亦即它可位于存储空间的任意地方,地址号位奇偶数均可。操作数的类型整型(Integer)整型操作数为16位的有符号变量,其最高位位为符号位,它的取值范围为-32768~+32767[-~+]。对整型数可进行算术和逻辑运算,但需注意运算对符号位的影响。整型数的定位规则及字型数的定位规则完全相同。32位无符号数(双字型)无符号的32位变量,其取值范围是0~4294967295。数据格式:D31~D0
,取值范围:0~(232-l)应用场合:32位移位;32位除以16位运算中的被除数;16位乘以16位运算中的乘积。定位规则:双字型操作数必须存放在8096片内RAM中,并且以能被4除尽的地址为其起始地址。双字型操作数的地址以其最低字节的地址表示。操作数的类型状态标志及状态字8096/8098单片机存放标志位的程序状态字PSW(ProgramStateWord)由位于CPU的标志寄存器和SFR的中断屏蔽寄存器组成。应用中既可以对PSW整体操作,也可对状态标志和中断屏蔽分别单独操作。D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0ZN
VVT
C-
ISTINT_MASK堆栈(Stack)堆栈用于存放临时数据,遵循“先进后出”的规则。MCS-96单片机堆栈既可建在片内的寄存器阵列中,也可设置在内外存储器中。堆栈是由高地址向低地址方向生长的。堆栈的操作分为压栈和出栈,每次操作都是针对一个字(16位)。ST标志粘连标志:保存右移时进入进位标志继而从进位标志移出的内容,用以正确反映右移后的四舍五入。四舍五入的规则常用:值≥1/2LSB则进位;否则舍去。改进:值<1/2LSB则舍去;值>1/2LSB则进位;值=1/2LSB时若LSB=1则进位,否则舍去,结果为偶数。CST移去位的值000110110(0≤值<1/4LSB)1/4LSB(1/4LSB≤值<1/2LSB)1/2LSB(1/2LSB≤值<3/4LSB)3/4LSB(3/4LSB≤值<LSB)寻址及寻址方式寻址是寻找指令所需的操作数,因为大多数操作数是存在存储器中,所以明确了存操作数的地址就找到了操作数。寻址方式就是得到操作数的方法。寻址方式愈多样,指令系统就愈灵活,编程就愈方便,计算机的功能就愈强大。程序的编制和运行效率都及寻址方式有关,主要体现在程序所占的空间和运行所需的时间。在8096/8098单片机中,内部RAM取代了寄存器,其是整个存储器空间的一部分,只不过地位较特殊,可作为寄存器使用。内部RAM中的各单元均有特定的地址号,并无相应的寄存器名,实际使用时,及其指令中应以地址号表示寄存器,在汇编指令中,寄存器也以其对应的地址号的形式出现。
MCS-96系列单片机内部寄存器阵列中寄存器的命名为了方便使用,对8096/8098单片机中内部寄存器阵列中的通用寄存器进行定义,予以命名。如将20H单元定义为字寄存器(16位)时,以AX表示,将22H单元定义为8位的寄存器,用BL表示等。要注意这样定义的寄存器名仅仅是一个符号而已,并不代表特定的地址,即给寄存器命名时,编程人员可随心所欲,可用任意的自负作为某个单元的寄存器名,但一旦给定某个寄存器命名,则不再予以变动,以免引起错误。对寄存器的命名通常用伪指令完成,关于伪指令将在本章的最后予以介绍。在介绍8096/8098的指令系统是,为了便于讨论,应以三个字型(16位)寄存器AX、BX和CX,及六个字节型(8位)。对BH、BL、CH和CL,其中AH为AX的高位字节(高8位),AL为AX的低位字节。对BH、BL、CH和CL也可作出类似的解释。MCS—96系列单片机指令系统的寻址方式寄存器寻址寄存器间接寻址立即寻址自动增量寻址短变址寻址长变址寻址零寄存器寻址堆栈指针寄存器寻址MCS-96系列单片机指令系统的寻址方式寄存器寻址若指令中的全部操作数均为寄存器,则该指令所使用的是寄存器寻址方式,例如:LDB24H,38HADDAX,BX,CXINCBAH注意第一条指令中的两个寄存器直接使用其他址号,而后面两条指令中的寄存器均使用定义的寄存器名采用这种寻址方式的指令的机器码字节数少,而且由于寄存器在芯片内部,故执行速度快。寄存器间接寻址若操作数置于存储器单元中,但指令中并不直接给出该存储器单元的地址号,而是将此地址号置于某一字型寄存器中,即用存储器间接表示存储器地址号,这种寻址方式称为寄存器间接寻址方式。例如:LD20H,[30H]ADDBAL,BL,[CX]说明:(1)存放地址号的寄存器称作间址寄存器,其存放的是地址号,也将其称为地址指针。由于存储器单元的地址号是16位的,因此间址寄存器是字型寄存器,由两个字节组成,且使用方括号。(2)应注意在间址寄存器中存放的是操作数所在的存储器单元的地址号,不要误以为存放的是操作数本身,理解这一点对正确地理解和使用这一寻址方式是极为重要的,譬如在第二条指令中,如在寄存器CX存放的数是2800H,则表明真正的操作数存放在地址号为2800H的单元中。(3)在一条指令中只能有一个操作数采用间接寻址方式,也就是说,只能有一个操作数存放在存储器单元中,且其他的操作数必须为寄存器操作数。(4)利用这种寻址方式的指令,机器码字节数较少,对操作数的寻址也较为灵活方便。MCS—96系列单片机指令系统的寻址方式立即寻址:LDB20H,#30H操作数以立即数的形式给出。为了避免和地址号混淆,8096/8098汇编指令中的立即数加前缀“#”符号。例如:LD20H,#2A00HLDBBL,#20H第一条指令中,操作数2A010H为立即数,而另一操作数20H则为寄存器。在这种寻址方式中,操作数直接体现为数据本身,最为直观明了,指令的机器码字节数少,缺点是不够灵活。
MCS—96系列单片机指令系统的寻址方式自动增量寻址:LDB20H,[30H]+这种寻址方式及寄存器间接寻址方式基本相同,即操作数的地址由间址寄存器给出,但有一个很重要的不同,即在指令执行后,间址寄存器中的地址变量将自动增量,增值的大小取决于操作数的类型。若是单字节的操作数,则间址寄存器的值自动增1;若是两字节的操作数,则自动增2,例如;LDBAL,[CX]+LDAX,[CX]+关于这种寻址方式,有如下几点说明:(1)在汇编指令中,为及间接寻址方式区别,该寻址方式的标记是在间址寄存器的符号后加一“+”号。(2)在编程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业管理人员高效决策指南
- 行业采购申请单物品分类与需求明确版
- 企业项目合作保证承诺书6篇
- 创新技术实施兑现承诺书范文8篇
- 项目招投标邀请函回应函(6篇)
- 餐饮行业食材采购标准流程指南
- 2026年运动与免疫力科学认知讲座
- 普洱宁洱县协议书纠纷律师
- 贵州银行的代发协议书编号
- 政府签了协议书还有低保
- DL-T5024-2020电力工程地基处理技术规程
- DZ∕T 0153-2014 物化探工程测量规范(正式版)
- 开荒保洁合同保洁开荒合同范本
- 地震应急演练实施方案村委会
- 育苗温室大棚施工组织设计方案-2
- 铃儿响叮当的变迁合唱简谱
- 《国际贸易实务》课件-第四章-交易磋商
- 全过程工程咨询实施投标方案
- 中医治疗“乳岩”医案44例
- 房地产项目投资经济分析资金和收益测算表预算和分析模型
- 头颅MRI入门必修之读片知识
评论
0/150
提交评论