




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微处理器原理与接口技术第一页,共386页。课程简介掌握微处理器、微机、单片机的基本结构及工作原理掌握微机、单片机输入输出接口的工作原理掌握单片机应用系统硬件及软件设计方法课程教学目标SO1第二页,共386页。课程主要内容:一、8086/8088CPU及微机系统工作原理8086/8088内部结构、外部引脚、工作方式、总线时序、微机系统组成。二、微机接口技术存储器、并行接口、串行接口、定时/计数器、中断控制器。三、80C51单片机基本工作原理80C51内部结构、外部引脚、工作时序。四、80C51单片机内部接口电路并口、串口、定时/计数器、中断系统。五、80C51单片机程序设计指令系统、汇编程序设计、C51程序设计。六、80C51单片机应用系统设计串行扩展总线、人机接口、模拟接口、功率接口、设计实例。第三页,共386页。多动手、勤思考、善总结。
如何学好本课程:第四页,共386页。第一章微型计算机基础知识
1.1数制与编码1.2微机的基本结构和工作特点
第五页,共386页。1.1数制与编码一、不同数制及其相互转换例:100=100D=64H=01100100B=144Q第六页,共386页。二、计算机中的信息编码1、无符号整数的编码√普通二进制码√BCD码例:123的普通二进制码为7Bh,8421BCD码为123h.第七页,共386页。2、有符号整数的编码√原码√反码√补码例:-1的8位补码为FFh,16位补码为FFFFh.第八页,共386页。3、浮点数的编码IEEE-754标准格式单精度(32位)、双精度(64位)、长双精度(80位)例:-123456.0的32位浮点数形式为C7F12000h.符号位阶码尾数总位数
短浮点数182332
长浮点数1115264
临时浮点数1156480
单精度数代码对应的数值公式为:(-1)s*1.M*2E-127第九页,共386页。4、西文字符的编码ASCII编码数字符号0~9:30H~39H小写字母:a~z:61H~7AH大写字母:A~Z:41H~5AH标点符号:控制字符:扩展字符:例:HELLO字符串的ASCII编码为48454C4C4Fh.第十页,共386页。5、汉字编码国标码机内码加上8080H例:“你好!”的机内码为C4E3BAC3A3A1h.一级常用汉字3755个,二级次常用汉字3008个
输入码(键盘输入)字形码(显示、打印)第十一页,共386页。6、其它信息在计算机中的编码表示图片、声音、视频……编码标准的JPG数据(1524字节,仅列出约1/6)第十二页,共386页。1.1微计算机的基本组成和工作原理
1.1.1微计算机的基本组成微型机将运算器和控制器集成在一块芯片上,该芯片被称为微处理器MPU(MicroProcessingUnit),也就是我们习惯说的CPU(CentralProcessingUnit),是计算机结构中心的核心部分。第十三页,共386页。计算机的基本结构框图第十四页,共386页。(1)运算器:是计算机对各种数据进行运算,对各种信息进行加工、处理的部件,因此,它是数据运算、加工和处理的中心。(2)存储器:是计算机存放各种数据、信息和执行程序的部件。存储器又分主存储器(又称内存)和辅助存储器(又称外存)。(3)输入设备:它给计算机输入各种原始信息,包括数据、文字、声音、图像和程序,并将它们转换成计算机能识别的二进制代码存入存储器中。常用的输入设备有键盘、鼠标、扫描仪,手写板及数码相机等。第十五页,共386页。(4)输出设备:它将计算机中各种数据运算的结果,各种信息加工、处理的结果以人们可识别的信息形式输出。常用的输出设备有显示器、打印机等。输入、输出设备是人机交互的设备,统称为外部设备,简称外设。(5)控制器:是计算机对以上各部件进行控制、指挥,以实现计算机运行过程自动化的部件。因此,它是计算机发布操作命令的控制中心和指挥系统。第十六页,共386页。以上的五大基本组成是计算机的实体,统称为计算机硬件(Hardware)。其中运算器和控制器称为计算机系统的主机。而把包括解题步骤在内的各式各样的程序叫做计算机软件(Software)。第十七页,共386页。1.2微处理器、微计算机、微计算机系统
1.2.1微处理器(Microprocessor)
微处理器就是把中央处理器CPU的复杂电路,包括运算器和控制器做在一片或几片大规模集成电路的半导体芯片上。把这种微缩的CPU大规模集成电路LSI(LargeScaleIntegration)称为微处理器(Microprocessor),简称MP、μP或CPU。其职能是执行算术、逻辑运算和控制整个计算机自动地、协调地完成操作。第十八页,共386页。1.2微机的基本结构和工作特点
总线有4个层次(见主板照片)微机基本结构(主机部分)第十九页,共386页。微处理器微型计算机系统从局部到全局分为三个层次:微型计算机(主机)微型计算机系统+存储器+I/O接口+总线+外设+电源+软件第二十页,共386页。第二十一页,共386页。微机工作特点(VonNeumann的程序存储思想)首先将程序(指令序列)编好,然后通过输入设备送到存储器中保存起来,接下来就可以由计算机自动执行存好的程序了。具体过程是:
①取出指令:从存储单元取出一条指令送到CPU内部的指令寄存器暂存;
②分析指令:将指令寄存器中的指令送到指令译码器,译出对应的微操作;
③执行指令:向有关部件发出控制信号,完成指令规定的操作;
④继续执行下一条指令,直到程序执行完为止。
匈牙利数学家冯·诺依曼第二十二页,共386页。微机系统实例-IBMPC/XT机主板总线的层次第二十三页,共386页。(1)片内总线:又称芯片内部总线,位于CPU芯片内部,用来实现CPU内部各功能单元电路之间的相互连接和信号的相互传递。(2)片总线:又称元件级总线,是微机主板上以CPU为核心,芯片与芯片间连接的总线。(3)内总线:通常又称为微机系统总线,用来实现计算机系统中的插件板与插件板间的连接。各种微计算机系统中都有自己的系统总线,如IBMPC微机的PC总线,IBMPC/XT微机的ISA总线,80386/80486微机的EISA总线以及Pentium微机的PCI,AGP总线等。(4)外总线:又称通信总线,用于系统之间的连接,完成系统与系统间的通信。例如,微机系统与微机系统、微机系统与测量仪器之间、微机系统与其他电子设备系统之间、微机系统与多媒体设备之间的通信。如RS-232C,IEEE-488,CAMAC和USB等。第二十四页,共386页。1.1数制与编码1.2微机的基本结构和工作特点
本章小节作业:1-2EO1第二十五页,共386页。第二章8086/8088微处理器结构及工作原理2.1微处理器的主要性能指标2.28086/8088的内部结构2.38086/8088的引脚功能与工作方式2.48086/8088的总线周期与工作时序2.58086/8088的存储器和I/O端口组织2.632位80X86微处理器第二十六页,共386页。
字长:4位,8位,16位,32位,64位…指令数:8086/8088有133条基本指令运算速度:MIPS可访问地址空间:n条地址线可访问2n个存储单元高速缓存:位于CPU与主存储器之间虚拟存储空间:外存用作内存扩展多处理器支持:主处理器+协处理器2.1微处理器的主要性能指标第二十七页,共386页。2.28086/8088微处理器的内部结构一、8086/8088CPU的编程结构
8086第二十八页,共386页。功能:负责指令的执行,进行8位及16位的各种运算。组成:①运算器:ALU(算术逻辑单元)+暂存器+标志寄存器(FLAG)②通用寄存器组:AX,BX,CX,DX,BP,SP,SI,DI③控制器:核心为指令译码器1.执行部件(EU)第二十九页,共386页。2.总线接口单元(BIU)功能:负责与存储器及I/O接口之间的数据传送操作。
■从程序存储单元取指令送到指令队列,供EU执行;
■从数据存储单元或I/O端口取操作数;
■将操作结果送到数据存储单元或I/O端口。组成:①段寄存器(DS、CS、ES、SS)②指令指针寄存器IP(指向下一条要执行指令)③20位地址加法器(逻辑地址20位物理地址)④6字节(8088为4字节)指令队列缓冲器(FIFO结构)第三十页,共386页。3.BIU与EU的协调工作①每当8086的指令队列中有两个空字节,或8088的指令队列中有一个空字节时,BIU就会自动进入总线周期,把指令取到指令队列中。取指的顺序是按指令在程序存储单元中的存储顺序。第三十一页,共386页。②每当EU准备执行一条指令时,它会从BIU部件的指令队列前部取出指令的代码,然后用几个时钟周期去执行指令。在执行指令的过程中,如果必须访问存储器或者I/O端口,那么EU就会请求BIU进入总线周期,完成访问内存或者I/O端口的操作;如果此时BIU正好处于空闲状态,会立即响应EU的请求。但是,如果BIU正在将某个指令字节取到指令队列中,则BIU将首先完成这个取指令的总线周期,然后再去响应EU发出的访问总线的请求。第三十二页,共386页。③当指令队列已满,且EU又没有总线访问请求时,BIU便进入空闲状态。④在执行转移指令、调用指令和返回指令时,EU会将指令队列中已经装入的字节全部消除,并要求BIU开始读取要转向的那个程序段中的指令代码。第三十三页,共386页。不难看出,BIU与EU的工作是不同步的。EU在执行指令的时候,BIU也在进行取指令、读操作数或存操作结果的操作,这是一个并行工作过程,改变了以往计算机取指令→译码→执行指令的串行工作方式,大大提高了工作效率。第三十四页,共386页。图8086/8088CPU的寄存器结构
第三十五页,共386页。二、8086/8088CPU内部寄存器AX,BX,CX,DX,CS,DS,SS,ES,BP,SP,SI,DI,IP,FLAG共14个。1.数据寄存器四个16位数据寄存器(AX、BX、CX、DX),可以存放16位的操作数,也可拆成8个8位的寄存器(AH、AL;BH、BL;CH、CL;DH、DL)来使用。其中AX称为累加器,BX称为基址寄存器,CX称为计数寄存器,DX称为数据寄存器。第三十六页,共386页。2.指针寄存器两个16位的指针寄存器SP和BP,其中SP是堆栈指针寄存器,由它和堆栈段寄存器SS一起来确定堆栈在内存中的位置;BP是基址指针寄存器,通常用于存放基地址。3.变址寄存器两个16位的变址寄存器SI和DI,其中SI是源变址寄存器,DI是目的变址寄存器,都用于指令的变址寻址方式。第三十七页,共386页。4.段寄存器四个16位段寄存器,即代码段寄存器CS、数据段寄存器DS、堆栈段寄存器SS和附加段寄存器ES。这些段寄存器的内容与有效的地址偏移量一起,可确定内存的物理地址。通常CS控制程序区,DS和ES控制数据区,SS控制堆栈区。5.指令指针寄存器IPIP和CS一起可以确定下一条指令的内存地址。顺序执行程序时,CPU每取一个指令字节,IP自动加1,指向下一个要读取的字节;当IP单独改变时,会发生段内的程序转移;当CS和IP同时改变时,会产生段间的程序转移。第三十八页,共386页。6.处理器状态字FLAG(FLAG)FLAG标志寄存器的内容,又称为处理器状态字PSW。其中共有9个标志位,可分成两类:一类为状态标志,一类为控制标志。其中状态标志表示前一步操作(如加、减等)执行以后,ALU所处的状态,后续操作可以根据这些状态标志进行判断,实现转移;控制标志则可以通过指令人为设置,用以对某一种特定的功能起控制作用(如中断屏蔽等),反映了人们对微机系统工作方式的可控制性。第三十九页,共386页。状态标志:6个ZF—零标志,运算结果为0时,ZF=1。CF—进位标志,做加法时最高位出现进位或做减法时最高位出现借位,CF=1。AF—辅助进位标志,通常用于对BCD算术运算结果的调整。OF—溢出标志。有符号数运算结果超出8/16位补码表示范围时,OF=1。PF—奇偶标志,运算结果低8位中l的个数为偶数时,PF=1。SF—符号标志,与运算结果的最高位取相同的值。第四十页,共386页。控制标志:3个TF—陷阱标志(单步标志位、跟踪标志)。将该位置1,将使8086/8088进入单步工作方式,通常用于程序的调试。IF—中断允许标志,将若该位置1,则处理器可以响应可屏蔽中断,否则不响应。DF—方向标志,将该位清零,则串操作指令的地址调整方向为递增,否则,为递减。第四十一页,共386页。一、8086/8088CPU的两种工作模式为了适应各种应用场合,在设计8086/8088CPU芯片时,就考虑了其可工作在两种模式下,即最小模式与最大模式。最小模式:系统中只有一个8086/8088微处理器,所有的总线控制信号都由8086/8088直接产生,系统中的总线控制逻辑电路被减到最少,最小模式适用于规模较小的微机应用系统。最大模式:系统中至少包含两个微处理器,8086/8088为主处理器,其它的为协处理器,协助主处理器工作。而总线控制信号由8288总线控制器产生。最大模式用在中、大规模的微机应用系统中。2.38086/8088微处理器工作模式及外部结构第四十二页,共386页。最小模式下的系统结构图第四十三页,共386页。存储器简单I/O第四十四页,共386页。最大模式下的系统结构图第四十五页,共386页。二、8086/8088CPU的外部引脚
第四十六页,共386页。两种模式下名称和功能相同的引脚:VCC、GND:电源、接地引脚,8086/8088采用单一的+5V电源,但有两个接地引脚。AD15~AD0:地址/数据复用的总线信号引脚,分时输出低16位地址及16位数据。A19/s6~A16/s3:地址/状态复用信号引脚,分时输出存储器高4位地址及状态信息,其中s6始终为低电平,S5用来指示中断允许标志IF的状态;s4、s3共有四种组合,用来表示当前使用的段寄存器,即:00:ES,01:SS,10:CS,11:DS。8086的引脚功能第四十七页,共386页。NMI、INTR:中断请求信号输入引脚,引入中断源向CPU提出的中断请求信号,前者为上升沿有效,后者为高电平有效,前者为非屏蔽中断请求,后者为可屏蔽中断请求信号。:读控制输出信号引脚,低电平有效,用以指明要执行一个对内存单元或I/O端口的读操作,具体是读内存单元,还是读I/O端口,取决于控制信号。CLK:时钟信号输入引脚,时钟信号为矩形波信号,占空比约为33%,即1/3周期为高电平,2/3周期为低电平,8086/8088的时钟频率(又称为主频)为4.77MHz,即从该引脚输入的时钟信号的频率为4.77MHz。第四十八页,共386页。RESET:复位信号输入引脚,高电平有效。8088/8086CPU要求复位信号至少维持4个时钟周期才能起到复位的效果,复位信号输入之后,CPU结束当前操作,并对处理器的标志寄存器、IP、DS、SS、ES寄存器及指令队列进行清零操作,而将CS设置为0FFFFH。READY:准备就绪信号输入引脚,高电平有效,READY引脚接收来自内存或I/O端口的响应信号,为高时表明内存单元或I/O端口已经准备好进行读写操作,为低则表示还没有准备好,CPU就会在总线周期中自动插入Tw等待周期,直到检测到高电平才进行数据传输。第四十九页,共386页。测试信号输入引脚,低电平有效,TEST信号与WAIT指令结合起来使用,CPU执行WAIT指令后,处于等待状态,当TEST引脚输入低电平时,系统脱离等待状态,继续执行WAIT指令后面的指令。最小/最大模式选择输入引脚,其高、低输入电平决定了CPU工作在最小模式还是最大模式,接+5V时,CPU工作于最小模式,接地时,CPU工作于最大模式。高8位数据允许/状态复用信号输出引脚。分时输出有效信号,表示高8位数据线D15~D8上的数据有效和S7状态信号,但S7未定义任何实际意义。第五十页,共386页。最小模式下的引脚中断响应输出引脚,低电平有效,该信号是CPU响应中断请求后向中断源发出的认可信号,并用以通知中断源,提供中断类型码,该信号为两个连续的负脉冲。地址锁存允许输出信号,高电平有效,CPU通过该引脚向地址锁存器8282/8283发出地址锁存允许信号,把当前地址/数据复用总线上输出的地址信息锁存起来。数据允许输出引脚,低电平有效,为总线收发器8286提供一个控制信号,表示CPU当前准备发送或接收一个数据。第五十一页,共386页。数据收发控制输出,在使用8286/8287作为数据总线收发器时控制数据传送的方向,高电平表示数据由CPU经总线收发器8286/8287输出,否则,数据传送方向相反。存储器或I/O端口选择输出,低电平表示CPU要进行I/O端口的读写操作,低位地址总线上出现的是I/O端口的地址;高电平表示CPU要进行存储器的读写操作,地址总线上出现的是要访问的存储器的地址。第五十二页,共386页。写控制信号输出,低电平有效,与配合实现对存储单元或I/O端口的写操作控制。总线保持请求输入,高电平有效。这是系统中的其它总线部件向CPU发来的总线请求信号。总线保持响应输出,高电平有效,表示CPU认可其它总线部件提出的总线占用请求,准备让出总线控制权。第五十三页,共386页。最大模式下的引脚S2S1S0总线周期000中断响应001读I/O端口010写I/O端口011暂停100取指101读存储器110写存储器111无作用第五十四页,共386页。QS1QS0性能00无操作01从指令队列的第一个字节取走代码10队列为空11除第一个字节外,还取走了后续字节中的代码第五十五页,共386页。:多处理器系统中的总线请求/允许线。:总线封锁信号,多处理器系统中避免访问冲突。与8087(协处理器)或8089(I/O处理器)相连接,保证系统中的各个处理器同步工作,实现总线共享。第五十六页,共386页。2.48086/8088的总线周期与工作时序一、8086/8088CPU的时钟占空比为1/3的矩形波,由8284时钟发生器产生。第五十七页,共386页。二、8086/8088CPU的总线周期概念:BIU通过总线访问一次(读写一次数据或读取一次指令)存储器或I/O接口所花的时间。1个总线周期=4个T状态+若干个可选的Tw状态第五十八页,共386页。最小模式下的总线写操作时序送出地址送出数据送出写信号撤消写信号(完成写操作)第五十九页,共386页。8086最小模式下的总线写操作时序第六十页,共386页。(2)读总线周期时序
最小模式下的总线读操作时序第六十一页,共386页。(3)中断响应周期时序
典型的8086中断时序图第六十二页,共386页。指令与总线操作注:.8086/8088采用小端字节序(littleendian),字型数据(16位)在存储器中的存放顺序为:低字节存放在低地址单元,高字节存放在高地址单元。.字型数据低字节所在的低地址单元为偶数时,称为规则字(如本例),否则称为非规则字。.8086应用系统中,1MB存储器空间由偶地址单元库和奇地址单元库组成,分别由A0和BHE作片选。偶地址单元的数据通过D0~D7传输,奇地址单元的数据通过D8~D15传输。第六十三页,共386页。……ABh…179BBh179B9h对于8086应用系统:.BHE与A0的00、01、10组合分别对应一个总线周期内对偶地址的16位读写(如本例)、对奇地址的8位读写、对偶地址的8位读写。.规则字的读写只需一个总线周期,非规则字的读写需要两个总线周期。……CDh…179BAh179B8hA0=0BHE=0D0~D7D8~D15D0~D15A1~A19A1~A19A0~A19MEMW偶地址单元奇地址单元①②③④①①①①②②图中①~④步的操作分别对应一个总线周期中的T1~T4时钟周期。MOVAX,1234hMOVDS,AXMOVBX,0ABCDhMOV[5678h],BX第六十四页,共386页。第六十五页,共386页。MOVDX,2A8hNEXT:INAL,DXOUTDX,ALJMPNEXT执行效果?第六十六页,共386页。1.存储容量8086/8088有20根地址线,可以直接寻址的存储器单元数为1MB。2.物理地址8086/8088可直接寻址1MB的存储空间,其地址区域为00000H~FFFFFH,访问每个存储单元所需的20位地址,称为存储单元的物理地址,也称实际地址。2.58086/8088的存储器和I/O端口组织一、存储器组织第六十七页,共386页。3.存储器的分段及逻辑地址由于CPU内部的寄存器都是16位的,为了能够提供20位的物理地址,系统中采用了存储器分段的方法。1MB存储器空间逻辑上可划分为64K个段,两个相邻段的首地址相差16个字节,每个段最大存储量64KB。由CS、DS、SS、ES段寄存器来指定存储单元所处的段,由IP、SP、BX、BP、SI、DI等地址指针寄存器指定或由指令直接给出存储单元相对于所处段起始地址的16位段内偏移量(也称偏移地址或有效地址)。以段值:段内偏移量形式表示的地址称为逻辑地址。(段地址:偏移地址)第六十八页,共386页。存储器的每个段的容量为64KB,并允许在整个存储空间内浮动,即段与段之间可以部分重叠、完全重叠、连续排列,非常灵活。第六十九页,共386页。4.物理地址的形成物理地址=段值×16+偏移地址例如:逻辑地址1234H:0005H对应的物理地址为12345H。注意:.物理地址与逻辑地址并不是一一对应的;.段寄存器与偏移地址寄存器的搭配第七十页,共386页。5.存储器分段组织带来的好处.便于操作系统对应用程序进行有效的内存管理(地址浮动);.压缩代码长度。程序代码和数据不超过64KB时,可使用同一个段空间。第七十一页,共386页。6.系统专用存储空间.中断矢量区:00000H~003FFH共1K字节,用以存放256种中断类型的中断向量,每个中断向量占用4个字节,共256×4=1024=1K.显示缓冲区:B0000H—B0F9FH约4K字节,是单色显示器的显示缓冲区,存放文本方式下,所显示字符的ASCII码及属性码;B8000H—BBF3FH约16K字节,是彩色显示器的显示缓冲区,存放图形方式下,屏幕显示象素的代码。.启动区:FFFF0H—FFFFFH共16个单元,用以存放一条无条件转移指令的代码,转移到系统的初始化部分。第七十二页,共386页。7.堆栈(1)堆栈的概念堆栈是在存储器中开辟的一个临时存储区,这个存储区的一端固定(称为栈底),另一端活动(称为栈顶),且只允许数据从活动端(栈顶)进出。采用“后进先出”的规则。(2)堆栈的组织堆栈指针SP总是指向堆栈的栈顶。8086/8088堆栈的生长方向是从大地址向小地址,每次入栈操作SP递减2B(因8086/8088只支持对字型数据的堆栈操作)。第七十三页,共386页。(3)堆栈的功能及工作过程功能:保存断点地址和重要数据。入栈操作:以PUSHAX为例
SPSP-2(SP+1)高字节AH(SP)低字节AL出栈操作:以POPBX为例低字节单元BL(SP)高字节单元BH(SP+1)SPSP+2…………SP12h34hAHAL低地址高地址SS段PUSHAX…34h12h…SP12h34hAHALSS段POPBX…34h12h…SP12h34hBHBLSS段第七十四页,共386页。二、I/O端口组织I/O端口的地址编排方式:与存储器统一编址独立编址80X86采用独立编址方式。I/O端口有独立的64K字节或32K字。采用专用的IN/OUT指令来访问端口。第七十五页,共386页。本章小结2.1微处理器的主要性能指标2.28086/8088的内部结构(EU+BIU,14个REG,FLAG各位功能)2.38086/8088的引脚功能与工作方式(最小/最大,引脚分时复用,系统结构)2.48086/8088的总线周期与工作时序(概念,4个T状态,Tw,了解时序)2.58086/8088的存储器和I/O端口组织(分段结构,逻辑地址->物理地址)2.632位80X86微处理器(不要求)第七十六页,共386页。第三章8086/8088的指令系统3.18086/8088的指令格式与寻址方式3.28086/8088指令系统详解第七十七页,共386页。3.18086/8088的指令格式与寻址方式一、8086/8088指令的基本格式
操作码[操作数](指令长度为1~6B,其中操作码1~2B)如:B83412h(其功能是将数据1234h赋值给AX寄存器)机器指令如:B83412h的助记符指令形式为MOVAX,1234h助记符指令(便于理解和记忆)助记符操作数[,操作数](可借助汇编或解释程序将助记符指令转换为机器指令)助记符目的操作数源操作数第七十八页,共386页。指令中的操作数可能是:立即数:指令中出现的常量型操作数,与操作码共同存放在代码段。寄存器操作数:存放在通用寄存器或段寄存器中。存储器操作数:存放在存储器某一个单元或连续多个单元。I/O端口操作数:来源于或要传送到某I/O端口。第七十九页,共386页。二、8086/8088指令的寻址方式隐含寻址I/O寻址立即寻址寄存器寻址存储器寻址直接寻址间接寻址相对寻址基址变址寻址相对基址变址寻址8086/8088寻址方式(固定寻址)寻址方式:指令中操作数所在地址的表示方式。.一般讨论寻址方式时多指源操作数的寻址方式。.在转移控制类指令中,寻址方式指的是转移地址的表示方式。第八十页,共386页。1.隐含寻址(固定寻址):操作数在默认的寄存器中指令中未出现操作数,实际上总是对特定寄存器进行操作。例如:DAA指令总是对AL中的数进行加6调整。第八十一页,共386页。2.I/O寻址:操作数在I/O端口中IN/OUT指令(对I/O端口进行读/写操作)采用I/O寻址方式。指令中给出了要进行输入/输出操作的I/O端口地址。8位端口地址可直接给出,也可用DX存放;16位端口地址必须用DX存放。例1:INAL,50H;将50H端口的数据读入AL。例2:MOVAX,1234HMOVDX,5678HOUTDX,AX;将AX中的数据1234H输出到;5678H端口和5679H端口。第八十二页,共386页。3.立即寻址:操作数在存储器代码段操作数本身直接出现在指令中(立即数)。例1:MOVCX,1234H;将16位立即数1234H存入CX例2:MOVAL,255;将8位立即数255存入AL立即数只能用作指令的源操作数。第八十三页,共386页。4.寄存器寻址:操作数在寄存器中指令中给出已存放了操作数的寄存器。例1:MOVDS,AX;将AX中的16位数传送给(存入)DS。例2:INCBX;将BX中的16位数取出加1后再存入BX。第八十四页,共386页。5.存储器寻址:操作数在存储器中存储器寻址直接寻址间接寻址相对寻址基址变址寻址相对基址变址寻址第八十五页,共386页。直接寻址由指令直接给出存储器操作数的有效地址(EA)。MOVAL,ES:[1234h];EA=1234h,段跨越MOVAX,[2001H];EA=2001h,非规则字MOVBX,X;EA=OFFSET(X)MOVCL,ARRAY+2;EA=OFFSET(ARRAY)+2MOVAL,TAIL-6;EA=OFFSET(TAIL)-6变量是符号化了的地址,加不加方括号效果一样,都是直接寻址。(未使用段跨越前缀时,段地址默认存放在DS中)第八十六页,共386页。间接寻址存储器操作数的有效地址放在BX、BP基址寄存器或SI、DI变址寄存器中。MOVAL,[BX];EA=(BX),8位操作MOVAX,ES:[SI];EA=(SI),段跨越,16位操作INCBYTEPTR[BP];EA=(BP),8位操作第八十七页,共386页。相对寻址存储器操作数的有效地址由BX、BP、SI或DI的值加一个位移量构成。MOVAL,[BX+2];也可写作2[BX],EA=(BX)+2MOVAX,BUFF[SI-3];也可写作[SI+BUFF-3];EA=(SI)+OFFSET(BUFF)-3第八十八页,共386页。基址变址寻址存储器操作数的有效地址由BX或BP基址寄存器的值加SI或DI变址寄存器的值构成,共有4种组合。MOVAL,[BX][SI];也可写作[BX+SI],EA=(BX)+(SI)ADDAL,[BX][DI];EA=(BX)+(DI)MOVAX,ES:[BP+SI];EA=(BP)+(SI),段跨越,16位操作INCWORDPTR[BP][DI];EA=(BP)+(DI),16位操作第八十九页,共386页。相对基址变址寻址存储器操作数的有效地址由BX或BP基址寄存器的值加SI或DI变址寄存器的值再加一个位移量构成。MOVAL,[BX+3][SI-1]ADDAL,3[BX][DI]MOVAX,ES:[BP+SI+VAR1-2]第九十页,共386页。三、8086/8088指令的执行时间
指令的空间指标与时间指标指令的执行时间=基本执行时间+计算EA的时间+执行总线周期的时间。第九十一页,共386页。3.28086/8088指令系统详解一、数据传送类指令通用传送指令:MOV、PUSH、POP、XCHG累加器AL、AX专用传送指令:IN、OUT、XLAT目标地址传送指令:LEA、LDS、LES标志传送指令:LAHF、SAHF、PUSHF、POPF133条基本指令,可组合为上千种指令功能。第九十二页,共386页。MOV指令的源操作数和目的操作数r↔rr↔segr↔mr←immseg↔mm←imm第九十三页,共386页。MOV指令使用中常犯的错误数据类型不匹配
MOVAX,DL×MOVAL,2000H×两个存储器操作数直接传送MOV[2000H],[1000H]×MOVAL,DLMOVAX,2000HMOVAX,[1000H]MOV[2000H],AX第九十四页,共386页。MOV指令使用中常犯的错误给段寄存器赋立即数MOVDS,1000H×MOVAX,1000HMOVDS,AX以CS或IP为目的操作数MOVCS,AX×MOVIP,AX×第九十五页,共386页。PUSH、POP指令的用法通用寄存器、段寄存器操作数
PUSHAXPUSHESPOPBXPOPDS存储器操作数
PUSH[BX]PUSH[2000H]POP[BX]POP[1000H]第九十六页,共386页。PUSH、POP对栈顶指针SP的影响入栈操作:以PUSHAX为例
SPSP-2(SP+1)高字节AH(SP)低字节AL出栈操作:以POPBX为例低字节单元BL(SP)高字节单元BH(SP+1)SPSP+2第九十七页,共386页。PUSH、POP指令使用中常犯的错误使用非字数据类型作为源或目的操作数PUSHAL×PUSHAXPOPAL×POPAX使用立即数作为源或目的操作数PUSH2000H×
POP2000H×使用特殊寄存器CS、IP作为目的操作数POPCS×POPIP×第九十八页,共386页。IN、OUT指令使用中常犯的错误端口地址超过8位却未使用DX寄存器INAL,100H×MOVDX,100HINAL,DX
使用了AL、AX之外的寄存器
INBL,20H×INAL,20H
使用了DX之外的端口地址寄存器
MOVCX,2000HMOVDX,2000HOUTCX,AL×OUTDX,AL端口地址写法错误
INAL,[20H]×INAL,20H
INAL,[DX]×INAL,DX
源、目的操作数位置颠倒
IN20H,AL×INAL,20HOUTAL,21H×OUT21H,AL
第九十九页,共386页。例:用MOV、PUSH/POP、XCHG指令完成两寄存器AX、BX寄存器数据的交换。
MOVCX,AXMOVAX,BXMOVBX,CX6字节机器码PUSHAXPUSHBXPOPAXPOPBX4字节机器码XCHGAX,BX1字节机器码第一百页,共386页。例:将数据段从AREA1开始的100个字节搬到附加段AREA2开始的存储区中。LEASI,AREA1;源数据块首地址AREA1赋给地址指针SI
LEADI,AREA2;目的数据块首地址AREA2赋给地址指针DIMOVCX,100;数据块长度值100赋给计数器寄存器CXAGAIN:MOVAL,[SI];从DS段SI所指地址中取字节给ALMOVES:[DI],AL;将AL的值送入ES段DI所指地址中INCSI;SI=SI+1指向下一个存储器单元INCDI;DI=DI+1指向下一个存储器单元DECCX;CX=CX-1计数器减1JNZAGAIN;(CX)不等于零则循环,等于零则结束循环第一百零一页,共386页。数据传送类指令总结源、目的操作数类型必须一致源、目的操作数不能同为存储器操作数源、目的操作数不能同为段寄存器立即数、CS、IP不能作目的操作数数传指令仅改变目的操作数,源操作数不变(XCHG除外)数传指令的执行不影响状态标志位(SAHF、POPF除外)IN、OUT指令专用寄存器为AL、AX、DXXLAT指令专用寄存器为AL、BX堆栈操作只能按字进行第一百零二页,共386页。二、算术运算类指令加法指令:ADD、ADC、INC、DAA、AAA减法指令:SUB、SBB、DEC、DAS、AAS、NEG、CMP乘法指令:MUL、IMUL、AAM除法指令:DIV、IDIV、AAD、CBW、CWD第一百零三页,共386页。除INC和DEC指令不影响CF标志外,算术运算指令对6个状态标志位都有相应的影响。
CF=1——无符号数运算产生溢出OF=1——有符号数运算产生溢出ZF=1——两数运算结果为0SF=1——两个有符号数运算结果为负AF=1——两个BCD数运算半字节有进位PF=1——两数运算结果有偶数个1第一百零四页,共386页。算术运算类指令总结算术运算指令会影响状态标志位INC和DEC指令不影响CF位加减法指令无专用寄存器乘除法指令有专用寄存器AL、AX、DXBCD调整指令有专用寄存器AL、AX符号扩展指令有专用寄存器AL、AX、DX乘法指令:8位×8位→16位或16位×16位→32位除法指令:16位÷8位→8位…8位或32位÷16位→16位…16位比较指令仅影响状态标志,不送回相减结果加减法指令无有符号、无符号之分乘除法指令有有符号、无符号之分第一百零五页,共386页。三、逻辑运算类指令布尔型指令:AND、OR、XOR、NOT、TEST移位类指令:SHL/SAL、SHR、SAR循环移位类指令:ROL、ROR、RCL、RCR第一百零六页,共386页。三、逻辑运算类指令移位循环单向逻辑算术带C不带C左移右移左移右移左移右移左移右移移位与乘除法的关系第一百零七页,共386页。移位指令中寄存器CL的使用若仅移1位,可直接给出移位值1RORAL,1RORAX,1SHRBYTEPTR[BX],1SHRWORDPTR[BX],1若移超过1位,需将移位位数先放入CL中MOVCL,nSHRAX,CL第一百零八页,共386页。逻辑运算类指令总结AND、TEST指令的相同点和不同点位与、或、异或对位值的作用SHL、SAL指令形式不同但功能相同SHR、SAR指令形式不同且功能也不同CL寄存器在位移量中的作用大、小循环移位指令的功能区别第一百零九页,共386页。四、串操作类指令串传送指令:MOVSB、MOVSW串比较指令:CMPSB、CMPSW串扫描指令:SCASB、SCASW从串取指令:LODSB、LODSW存入串指令:STOSB、STOSW第一百一十页,共386页。MOVSBMOVAL,DS:[SI]INCSI/DECSIMOVES:[DI],ALINCDI/DECDIMOVAX,DS:[SI]INCSI/DECSIINCSI/DECSIMOVES:[DI],AXINCDI/DECDIINCDI/DECDILODSBSTOSBDF=0/1MOVSWSTOSWLODSW第一百一十一页,共386页。串操作指令的重复前缀特点仅用于串操作指令前,仅为前缀而非指令功能REP前缀当(CX)=0时,退出REP重复REPE/REPZ前缀当(CX)=0或(ZF)=0时,退出REPE/REPZ重复REPNE/REPNZ前缀当(CX)=0或(ZF)=1时,退出REPNE/REPNZ重复第一百一十二页,共386页。MOV、MOVSB指令、REP前缀的应用例:将数据段自AREA1开始的100个字节搬到附加段自AREA2开始的连续单元中。DSESARREA2ARREA1第一百一十三页,共386页。用MOV指令LEASI,AREA1LEADI,AREA2MOVCX,100NEXT:MOVAL,[SI]MOVES:[DI],ALINCSIINCDI
DECCXJNZNEXTLOOPNEXT用MOVSB指令LEASI,AREA1LEADI,AREA2MOVCX,100CLDNEXT:MOVSB
LOOPNEXT用REP前缀LEASI,AREA1LEADI,AREA2MOVCX,100CLDREPMOVSB
第一百一十四页,共386页。串操作指令总结尾符B、W对地址指针调整值的作用控制标志DF对地址指针调整方向的作用源、目的串与段寄存器DS、ES的约定关系源、目的串与指针寄存器SI、DI的约定关系寄存器AL、AX在串操作指令中的作用计数器CX在串操作指令中的作用重复前缀REP/REPE/REPNE在串操作指令中的作用第一百一十五页,共386页。五、控制转移类指令无条件转移指令:JMP有条件转移指令:Jcc(cc为条件)过程调用指令:CALL、RET中断指令:INT、IRET循环控制指令:LOOP、LOOPZ、LOOPNZ、JCXZ
(LOOPE)(LOOPNE)第一百一十六页,共386页。JMP指令的种类段内直接间接段间直接:间接JMPNEARPTRMAINJMPBXJMPWORDPTR[BX]JMPDWORDPTR[BX]JMPFARPTRMAIN第一百一十七页,共386页。CALL、JMP指令比较CALL指令:
先保护现场CS当前:IP当前后获得调用过程入口CS目的:IP目的JMP指令
不保护现场CS当前:IP当前只获得跳转程序入口CS目的:IP目的第一百一十八页,共386页。有条件转移指令的英文符号Zero——目的操作数减源操作数为0(ZF=0)Equal——目的操作数等于源操作数(ZF=0)Above——目的操作数高于源操作数(CF=0)Below——目的操作数低于源操作数(CF=1)Greater——目的操作数大于源操作数(OF⊕SF=0)Less——目的操作数小于源操作数(OF⊕SF=1)Carry——两无符号运算后有进位(CF=1)Overflow——两有符号运算后有溢出(OF=1)Sign——两有符号运算后有符号(SF=1)Parity——奇偶位为偶(PF=1)Not——不是第一百一十九页,共386页。INT——中断控制指令中断概念特事特办,立即处理中断类型
内部中断:软中断,由执行中断指令获得中断服务如常用的INT21H
外部中断:硬中断,由外部电平触发获得中断服务第一百二十页,共386页。LOOP——循环控制指令指令特点以计数器CX,标志位ZF为条件,控制循环体指令格式LOOPLABEL若(CX-1)≠0,执行循环体LABEL,否则退出LOOPZLABEL或LOOPELABEL若(CX-1)≠0且ZF=1,执行循环体LABEL
LOOPNZLABEL或LOOPNELABEL若(CX-1)≠0且ZF=0、执行循环体LABELLOOPNEXTDECCXJNZNEXT第一百二十一页,共386页。控制转移类指令总结JMP指令中段内、段间转移的特点Jcc指令与状态标志位的关系及指令的多样性CMP、TEST与Jcc指令的配合CALL、JMP、INT指令的相同点与不同点第一百二十二页,共386页。 六、CPU控制类指令标志位控制:CLC、CMC、STC、CLD、STD、CLI、STI外部同步:HLT、WAIT、ESC、LOCK空操作:NOP第一百二十三页,共386页。本章小结一、数据传送类指令二、算术运算类指令三、逻辑运算类指令四、串操作类指令五、控制转移类指令六、CPU控制类指令第一百二十四页,共386页。第四章汇编语言程序设计4.1伪指令及宏汇编基本语法4.2顺序程序设计4.3分支程序设计4.4循环程序设计4.5子程序设计4.6系统功能调用4.7BIOS调用4.8实用程序设计第一百二十五页,共386页。4.1伪指令及宏汇编基本语法一、宏汇编语言程序的语句类型基本指令语句伪指令语句宏指令语句第一百二十六页,共386页。二、宏汇编语言程序的语句格式[标号:]操作符操作数[,操作数][;注释]标号:符号化的代码地址。操作符:可以是指令、伪指令或宏指令的助记符。操作数:可以是以下形式:·常数·寄存器名·标号、变量名(符号化的数据地址)·表达式(由常数、地址常量和运算符组合而成)NEXT:ADDAX,BX;AX(AX)+(BX)第一百二十七页,共386页。汇编语言程序中标识符的命名规则字母:A~Z或a~z注:汇编源程序中不区分大小写字符数字:0~9注:数字不用于标识符的第一位特殊符号:?、/、_、%等注:标识符中谨慎使用特殊符号第一百二十八页,共386页。汇编语言程序中的保留字运算符例:OFFSET、PTR汇编源程序中标识符不能使用的字符串寄存器名例:AX、SP标志符例:CF、TF指令助记符例:MOV、ADD伪指令符例:SEGMENT、END第一百二十九页,共386页。汇编语言程序中的表达式(操作数段含有运算符)MOVAX,[2000H+2]
MOVAX,BUFF+3MOVCX,TYPEXMOVBH,HIGHCXMOVBL,LOW(12*8-5%2)
ANDAL,0AHAND0AH
第一百三十页,共386页。汇编语言程序中的运算符
算术运算符:+、-、*、/、MOD逻辑运算符:AND、OR、XOR、NOT、SHL、SHR关系运算符:EQ、NE、LT、GT、LE、GE分析运算符:SEG、OFFSET、TYPE、SIZE、LENGTH综合运算符:PTR、段超越前缀、THIS、SHORT、HIGH、LOW(合成运算符)第一百三十一页,共386页。三、伪指令及其应用数据定义及存储器分配伪指令:DB、DW、DD、DQ、DT符号定义伪指令:EQU、=(=可重复定义,都不分配内存)段定义伪指令:SEGMENT、ENDS段寻址伪指令:ASSUME地址定位伪指令:ORG(与地址有关的$)结构与记录有关的伪指令:STRUC、RECORD过程定义伪指令:PROC、ENDP宏定义伪指令:MACRO、ENDM第一百三十二页,共386页。DATASEGMENTNUM1DB41H,'A'NUM2DB4*5ORG$+1NUM3DB-1,255NUM4DW-1,255MAXEQU85NUM5DB'AB'NUM6DW'AB'SOMEEQU$-NUM5NUM7DB?,80+4*20SHR2NUM8DBSOMEDUP('')TOTAL=20XDB2DUP(?,'?')TOTAL=15YDB3DUP(6,2DUP(-1)),-2PTR1DWNUM2PTR2DDNUM4MEMSIZEEQU$-NUM1DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVAL,(MAX+TOTAL)*2+55MOVAH,SOMEMOVCL,MEMSIZEMOVCH,TYPEPTR2MOVBL,LENGTHNUM8MOVBH,SIZENUM8EXIT:MOVAH,4CHINT21HCODEENDSENDSTART第一百三十三页,共386页。四、宏指令及其应用无参数宏定义及宏调用宏定义:SHIFTMACROMOVCL,4SHLAX,CLENDM宏调用:MOVAX,1000HSHIFTMOV[2000H],AX子程序定义:SHIFTPROCMOVCL,4SHLAX,CLRETSHIFTENDP子程序调用:MOVAX,1000HCALLSHIFTMOV[2000H],AX第一百三十四页,共386页。宏定义:SHIFTMACROReg,NMOVCL,NSHLReg,CLENDM宏调用:MOVAX,1000HMOVBL,20HSHIFTAX,4SHIFTBL,5有参数宏定义及宏调用第一百三十五页,共386页。过程:执行程序时,重复调用过程代码,需保护、恢复现场,省空费时。宏vs子程序(过程)宏:汇编源程序时,重复复制宏代码,无断点问题,省时费空第一百三十六页,共386页。五、汇编语言的上机过程上机的硬件、软件环境硬件:PC/XT以上PC机软件:DOS3.3以上操作系统上机的软件工具汇编源程序文件的编辑软件:EDIT、UltraEdit、NotePad
*.ASM源程序文本文件汇编源程序文件的汇编软件:MASM、TASM
*.OBJ目标代码文件目标代码文件的连接软件:LINK、TLINK
*.EXE可执行文件可执行文件的调试软件:DEBUG、TD第一百三十七页,共386页。ASM:汇编语言源程序文件OBJ:浮动的目标代码文件EXE:重定位的绝对代码文件问题的算法D.ASMD.EXE文本编辑汇编连接调试D.OBJEditUltraEditTASMMASMTDTLINKLINK其它OBJ(包括库代码)第一百三十八页,共386页。一般说来,编制一个汇编语言程序的步骤如下:(1)分析题意确定算法。这一步是能否编制出高质量程序的关键,因此拿到题应该仔细地分析和理解题意,找出合理的算法及适当的数据结构,不应当急于去写程序。(2)根据算法画流程图。流程图可以减少出错的可能性。可由粗到细把算法逐步地具体化,直到便于用指令实现为止。(3)根据流程图编写程序。(4)上机调试程序。第一百三十九页,共386页。4.2顺序程序设计顺序程序是从第一条指令开始,按其自然顺序一条一条地执行,直到最后一条指令为止。例1:双字加/减法例2:表达式求值例3:查表操作第一百四十页,共386页。DATASEGMENTXDB81HYDB-1ZDB4RESULTDW?,?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AX
MOVAL,ZCBWMOVBX,AX
MOVAL,XADDAL,YCBWCWD
IDIVBX
MOVRESULT,AXMOVRESULT+2,DX
EXIT:MOVAH,4CHINT21HCODEENDSENDSTART例:编程求(X+Y)÷Z的值,其中X、Y、Z均为8位有符号型变量,结果(商和余数)为两个16位有符号数。第一百四十一页,共386页。4.3分支程序设计e?YN一、标准分支结构第一百四十二页,共386页。例:编程求DATASEGMENTXDB-2YDB?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXCMPX,0JGEPLUSMINUS:MOVY,-1JMPEXITPLUS:MOVY,1EXIT:MOVAH,4CHINT21HCODEENDSENDSTART第一百四十三页,共386页。二、分支结构的其它形式e?NY1、第一百四十四页,共386页。例:编程求DATASEGMENTXDB-2YDB?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AX
MOVY,1CMPX,0JGEEXITMOVY,-1EXIT:MOVAH,4CHINT21HCODEENDSENDSTART第一百四十五页,共386页。例:编程求DATASEGMENTXDB-2YDB?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AX
MOVAL,XMOVY,ALCMPX,0JGEEXITNEGYEXIT:MOVAH,4CHINT21HCODEENDSENDSTART第一百四十六页,共386页。例:编程实现以下运算。DATASEGMENTXDB2YDB3ZDB?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AX
MOVAL,XMOVZ,ALCMPAL,YJAEEXITMOVAL,YMOVZ,ALEXIT:MOVAH,4CHINT21HCODEENDSENDSTART第一百四十七页,共386页。2、e1?YNe2?Ne3?YYN第一百四十八页,共386页。例:编程实现以下运算。DATASEGMENTXDB-2YDB?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AX
CMPX,0JLLESSJGGREATEREQUAL:MOVY,0JMPEXITGREATER:MOVY,1JMPEXITLESS:MOVY,-1
EXIT:MOVAH,4CHINT21HCODEENDSENDSTART第一百四十九页,共386页。例:编程实现以下运算。DATASEGMENTXDB85YDB?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AX
CMPX,90JAESACMPX,80JAESBCMPX,70JAESC
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 云南财经职业学院《汉语词汇语法教学(词汇)》2023-2024学年第一学期期末试卷
- 潍坊科技学院《舞蹈基础与编排》2023-2024学年第一学期期末试卷
- 北京工商大学嘉华学院《医学免疫学Ⅲ》2023-2024学年第一学期期末试卷
- 医学病灶精准定位-洞察及研究
- 2025年制造业数据治理策略与能源管理研究报告
- 2025年制造业绿色供应链与绿色供应链管理技术创新与绿色产业生态发展策略研究报告001
- 2025年制造业供应链数字化协同管理在绿色供应链中的应用研究报告
- 物联网平台赋能的农产品供应链安全体系构建-洞察及研究
- 室外展板活动方案
- 小学开学德育周活动方案
- 电工厂搬迁方案(3篇)
- 培训班助教教师管理制度
- 钢板配送设计方案(3篇)
- 2025年安徽能源集团招聘笔试参考题库含答案解析
- 河道维修养护管理制度
- 2025年 事业单位公基真题考试卷库(附答案)
- 派出所消防管理制度
- 北京市朝阳区招聘社区工作者笔试真题2024
- 2025年重庆市中考数学试卷真题(含标准答案)
- 中医基础学课件护理情志
- 2025年中小学教师师德知识竞赛试题库及答案
评论
0/150
提交评论