北航微机原理课件第八讲(可修改).ppt

合集下载

微机原理课件第8讲(电子ok)

微机原理课件第8讲(电子ok)

19
汇编语言的一个实例: hello.asm
SEGMENT DB ‘Hello, world!’,0DH,0AH,’$’ ENDS SEGMENT ASSUME CS:prog,DS:data start: MOV AX,data MOV DS,AX LEA DX,hello ;取字符串首地址 MOV AH,9 INT 21H ;Dos9号功能调用显示字符串 MOV AH,4CH INT 21H ;退回DOS prog ENDS END start
数据,能被机器直接识别的计算机语言。速度快、 占用内存少。
汇编语言(Assembly Language):采用助记符表示
的程序设计语言。内存空间少,而且执行速度快。
高级语言(High Level Language):高级语言则
是面向用户的语言。
2
机器语言
①指令中仅包含“0”和“1”。 优点:执行速度快 缺点:难记,编程时容易出错,修改程序时更是 如此 ②不同种机器之间程序不能通用。 不同生产厂家,不同种计算机指令系统不相同, 所以,在一台计算机上执行的程序,要想在另一台 计算机上执行,必须另编程序,造成了重复工作。
汇编语言的指令语句可以由1~4部分构成: 【标号:】助记符 【操作数1】…【操作数n 】 【;注释】 LOOPER: MOV AL,DATA2[SI] ;取一个字节加数 其中方括号中间的内容可以省略。
16
伪指令语句格式 汇编语言的伪指令语句可以由1~4部分构成: 【名字】指示符 【操作数1】…【操作数n 】 【;注释】 DATA1 DB 0F8H,60H,0ACH,74H,3BH ;被加数 名字是给伪指令取的名称,它用符号地址标识,名 字后面不允许带“:”,名字可以是变量名、段名、过 程名。

微机原理第八章微型计算机的程序设计 ppt课件

微机原理第八章微型计算机的程序设计 ppt课件

mov ax, data
mov ds, ax
MOV AL, BYTE PTR W1
;AL=31H (+78H)
ADD AL, BYTE PTR W2 ;AL=A9H, CF=0,AF=0
DAA ;BCD数加法调整指令; AL=09H, CF=1
MOV SUM, AL
MOV AL, BYTE PTR W1+1 ; AL=89H (+56H)
MOV SUM, AL ;(SUM)=06H
MOV AL,AH; AL=09H
ADD AL, BYTE PTR W2+1 ; AL=09H+06H=0FH,属于第1种情况
MOV AH, 0
此句也可表达为MOV [SUM], AL; 见P151
AAA ; AL=05H, AH=01H
;第一种情况处理:AL=(AL+06H)&0FH, 因0FH+06H=15H,故 AL=05H,AH=AH+1=0+1=01H,所以AX=0105H
• W1
DW 8931H
• W2
DW 5678H
• SUM DB 3 DUP(0)
• data ends
• code segment
begin proc far
assume ss: stack, cs: code, ds:data
push ds
sub ax, ax
push ax
2020/9/18
10
2020/9/18
8
微机原理第八章微型计算机的程
序设计
AAA-----两个非压缩BCD数相加调 整指令
若(AL&0FH)>9或AF=1,则(AL+6)&0FH送AL,AH 加1且CF置1;

微机原理-08

微机原理-08

1第八章DMA技术BUPT主要内容8237A的工作方式8237A寄存器组的作用8237A寄存器组的编程4学时幻灯片2幻灯片34幻灯片5幻灯片6 BUPT二、8237的内部组成与结构7 BUPT 8.2 DMA 控制器芯片Intel 82371.四个独立的DMA 通道每个通道都有一个16位的基地址寄存器,一个16位的基字节数计数器,一个16位的当前地址寄存器和一个16位的当前字节数计数器及一个8位的方式(模式)寄存器,方式寄存器接收并保存来自于CPU 的方式控制字,使本通道能够工作于不同的方式下;2.定时及控制逻辑电路对在DMA 请求服务之前,CPU 编程对给定的命令字和方式控制字进行译码,以确定DMA 的工作方式,并控制产生所需要的定时信号;3.优先级编码逻辑对通道进行优先级编码,确定在同时接收到不同通道的DMA 请求时,能够确定相应的先后次序。

通道的优先级可以通过编程确定为是固定的或者是循环的。

幻灯片8幻灯片9幻灯片 10 BUPT 7.HRQ :总线请求信号.8237向CPU 提出DMA 请求的输出信号引脚,高电平有效。

8.HLDA :总线响应信号.CPU 对HRQ 请求信号的应答信号输入引脚,高电平有效。

9.DB 0~DB 7:8条双向三态数据总线引脚。

在CPU 控制系统总线时,可以通过DB 0~DB 7对8237编程或读出8237的内部状态寄存器的内容;在DMA 操作期间,由DB 0~DB 7输出高8位地址信号A 8~A 15,并利用ADSTB 信号锁存该地址信号。

在进行内存不同区域之间的DMA 传送时,除了送出A 8~A 15地址信号外,还分时输入从存储器源区域读出的数据,送入8237的暂存寄存器中,等到存储器写周期时,再将这些数据通过这8个引脚,由8237的暂存寄存器送到系统数据总线上,然后写入到规定的存储单元中去。

10.A 3~A 0:4条双向三态的低位地址信号引脚。

在空闲周期,接收来自于CPU 的四位地址信号,用以寻址8237内部的不同的寄存器(组);在DMA 传送时,输出要访问的存储单元或者I/O 端口地址的低4位。

微机原理与接口技术[8-1]课件资料

微机原理与接口技术[8-1]课件资料
类型0的中断服务 程序入口地址 类型1的中断服务 程序入口地址 类型2的中断服务 程序入口地址
. . .
息,引导程序进入中断服务子程序,这些中断在内
存中专门开辟一个区域,存放中断向量表(也称中 断矢量表)。
00000H
中断服务程序的入口地址构成的表 称为中断向量表
00004H
00008H
0000CH
003FCH
类型255的中断服 务程序入口地址
8086的中断向量表示意图
18:01
7
§8-1 概述-中断概念
4.中断优先级
当有多个中断源请求中断时,中断系统判别中 断申请的优先级,CPU响应优先级高的中断,挂起 优先级低的中断。 当CPU在运行中断服务子程序时,又有新的更 高优先级的中断申请进入,CPU要挂起原中断进入 更高级的中断服务子程序,实现中断嵌套功能。
18:01 3
§8-1 概述-中断概念
1.中断源
当CPU正常运行程序时,由于微处理器内部 事件或外设请求,引起CPU中断正在运行的程序, 转去执行请求中断的外设(或内部事件)的中断 服务子程序,中断服务程序执行完毕,再返回被 中止的程序,该过程称为中断。 中断源:引起程序中断的事件
中断源 中断响应 中断向量表 中断优先级 中断屏蔽
§8-1 概述-Βιβλιοθήκη 中断分类1. 外部中断① 不可屏蔽中断请求
INT n 指令 INTO 指令 除法 出错 单步 TF=1
非屏蔽中断请求
NMI
中断逻辑
INTR
8259A
可 屏 蔽 中 断 请 求

由CPU的引脚NMI引入,采用边沿触发,上升沿之后维持两个时钟
周期高电平有效。

北航微机原理课件第八讲演示文稿

北航微机原理课件第八讲演示文稿
北航微机原理课件第八讲演示 文稿
第一页,共39页。
优选北航微机原理课件第八讲
第二页,共39页。
如何利用地址线产生脉冲
+5V
RD MN/MX
WR
8086 M/IO
两态总线
控制 总线
8284 时钟
CLK RESET
ALE
READY
A19-A16
BHE
AD15-AD0 DEN DT/R
RESET
READY
子程序(过程)定义格式:
符号名 (AA)
PROC 类型(FAR/NEAR)
……
RET(RETURN)
符号名(AA)
ENDP
子程序调用和返回指令: CALL AA
过程有两种类型:
按过程与调用语句间的位置,过程有两种类型。
NEAR类型:调用指令与过程在同一个段中
FAR类型:调用指令与过程不在同一个段中
CALL指令和RET指令都不影响条件码。
LOOP, LOOPE/LOOPZ, LOOPNE/LOOPNZ
CALL, RET
中断指令
第四页,共39页。
INT, INTO, IRET
(一)、无条件转移指令 1. JMP(jmp)目标标号
JMP指令必须指定转移的目标地址(或转向地址)。
转移分成两类:段内或段间转移。
(1)段内直接转移:只要改变IP寄存器的内容

CSEG1
ENDS
CSEG2
SEGMENT

subp
PROC FAR

RET
subp
ENDP
CSEG2
ENDS
第二十页,共39页。
(2)、 RET( Reture from procedure)返回

微机原理第1-8章PPT讲演稿(详细资料)

微机原理第1-8章PPT讲演稿(详细资料)

地址总线(Address Bus):
传送地址信息、CPU在AB总线上输出将 要访问的内存单元或I/O端口地址、该总线为 单向,地址总线的位数决定了CPU可以直接 寻址的内存单元范围。
举例
数据总线(Data Bus):
传送数据信息的总线。在CPU进行读操 作 时 , 内 存 或 外 设 的 数 据 通 过 DB 总 线 送 往 CPU;在CPU进行写操作时,CPU数据通过 DB总线送往内存或外设,所以该总线为双向 总线。
第四代 1981~1992
32位
已达到10万 ~100万个管/片
操作系统 高级语言软件硬化
Intel 80386,80486 MC 68020
第五代 1993以后
超过300万个 64位 管/片
操作系统
Pentium
高级语言软件硬化 PII PIII PIV
三、微型计算机的分类
按处理器同时处理数据的位数或字长分: 8位机 16位机 32位机 64位机
目 录
第一章 第二章 第三章 第四章 第五章 第六章 第七章 第八章 第九章 第十章 第十一章 第十二章
ห้องสมุดไป่ตู้
概论 运算基础 微处理器结构 半导体存储器 8086的寻址方式和指令系统 汇编语言程序设计 8086时序 输入/输出及中断系统 输入/输出接口技术 数/模与模/数接口技术 微机最小系统与监控程序 从8086到Pentium II
外部设备
Λ
I/O接口电路
总线
存储器 RAM ROM
控制部件
算术逻辑部件
寄存器组
MPU
2. 存储器
微机的存储器分为:主存和辅存
主存(内存):用于存放当前正在运行的程序和正 待处理数据。(CPU内部cache,主 板上的内存, 造价高,速度快,存 储容量小)

微机原理第8章ppt

微机原理第8章ppt

第8章
中断向量地址 与中断类型码的关系 中断向量地址 = 4*N ,其中N为中断类型码
如:中断类型码为13H的中断向量地址为: 4*13H=0004CH,则 (0004CH)=中断类型13H的处理程序的偏移地址, (0004EH)=中断类型13H处理程序的段地址。
第8章
MOV AX,DX INT 4AH MOV CX,0 …. …. IRET ….
中断处理程序 F000H:1805H 第一条指令
05H 18H 00H F0H 中断255偏址 中断255偏址 中断255段址 中断255段址
….
第8章
8.5.4、8086对中断的响应
8086中的各种中断的响应和处理过程是不同的, 主要区别在于如何获取相应的中断类型码。
第8章
1、硬件中断
CPU在当前指令周期的T状态采样中断请求输入 信号,如果有可屏蔽中断请求,且CPU处在开 中断状态(IF=1),则CPU在当前指令完成后, 转入两个连续的中断响应周期,在第二个中断 响应周期的T4状态前沿采样数据总线,获取由 外设输入的中断类型码;若是采样到的是非屏 蔽请求,则CPU不经过上述的两个中断响应周 期,而在内部自动产生中断类型码2。
;否,检查磁带是否有请求
;有,转到磁带服务程序
第8章 (二)移位法 IN AL,20H
RCL AL,1
JC PWF
RCL AL,1
JC DISS . . .
第8章 查询方法的优点: (1)优先次序:先被查询的优先级最高,后被查 询的优先级依次降低。 (2)省硬件。 查询方法的缺点: 由询问转入相应的服务程序入口的时间长。尤其 是在中断源较多的情况下。
中断向量表 00000H 1805H IP 00001H F000H CS 00002H 00003H

微机原理08

微机原理08

13
四、I/O端口地址译码技术
I/O端口地址译码的一般原则是把地址译码分成两部分: •一部分是高位地址线与控制信号组合,经地址译码电路产 生I/O接口芯片的片选信号,实现片间寻址; •另一部分是低位地址线直接连接到I/O接口芯片,实现I/O 接口芯片的片内寻址,即访问片内的寄存器。 译码电路可以分为固定式译码和可选式译码两种形式,I/O端口 译码可以利用基本门电路、专用译码器、以及可编程逻辑器件 等实现。
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Y0 =0,其他为 1 Y1 =0,其他为 1 Y2 =0,其他为 1 Y3 =0,其他为 1 Y4 =0,其他为 1 Y5 =0,其他为 1 Y6 =0,其他为 1 Y7 =0,其他为 1 Y8 =0,其他为 1 Y9 =0,其他为 1 Y10 =0,其他为 1 Y11 =0,其他为 1 Y12 =0,其他为 1
0 0 0 0 0 0 0 0 其他情况
4 5 6
Y4 G 2A Y5 G 2B Y6 G1 Y7
Y1 =0,其他为 1 Y2 =0,其他为 1 Y3 =0,其他为 1 Y4 =0,其他为 1 Y5 =0,其他为 1 Y6 =0,其他为 1 Y7 =0,其他为 1 Y0 Y7 全为 1 ~
74LS138
8
三、I/O端口的编址方式
•I/O端口与存储单元统一编址 •I/O端口独立编址
PC系列机主要采用I/O端口独立编址方式 Port 65535
Port 255
Port 3 Port 2 Port 1 Port 0
9
三、I/O端口的编址方式
端口的寻址 •把端口地址放在DX寄存器中,对该端口进行读写 IN AL, DX OUT DX, AL ——可寻址的端口号为0~65535(FFFFH)
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

最新.
7
(3)段间直接转移:要修改IP、 CS寄存器的内容。 转到
另一段去执行程序。 转移目标地址= 新的段地址和偏移地址两部分组成。
格式:JMP FAR PTR OPR; OPR—在汇编语言中使用 符号地址 (如标号AKK,假设定义在另一程序段CC00:0044)。 转移地址与指令不在同一个段里。 在机器语言中则要指定转向地址的偏移地址和段地址
JMP FAR PTR AKK 执行操作: (IP)←OPR所在的段内偏移地址0044H。
(CS)←OPR所在的段的段址CC00H。 器内直容接加转载移IP通和过CS符. 号地址加最新载. IP和CS,间接转移通过存8储
(4) 段间间接转移:(CS) 、 (IP)都改变 格式:JMP DWORD PTR OPR
RESET
READY
三态总线 DIR
STB OE
BHE
8282 锁存器
地址 总线
(3片)
存储器
I/O接口
KKK:奇 M偶OV AL,(BX)
8286 收发器
T (2片) OE
CALL DELAY 数据
总线
INC BX
MOV AL,(BX)
CALL DELAY
JMP KKK
最新.
2
五.控制传送指令(Control transfer instructions)
若ABC=0F0H,则回跳16字节 最新.
5
(2) 段内间接转移: (CS)不变,只改变(IP)
格式:JMP OPR OPR —为16位寄存器、 或存储器(除立即数以外的任何一种寻址方式)
执行操作: (IP) (EA) 或(IP) (reg16)
IP指针的内容根据寄存器或存储器(数据段、附加段、堆 栈段)的内容而改变。
指在同一段的范围之内进行转移 (IP)←(IP)当前+目标标号所代表的地址偏移量
地址偏移量又称为符号地址 目标标号为8位,称为短转移。 目标标号为16位,称为近转移。
最新.
4
例如:代码段内有一条无条件转移指令在汇编语言中使用符号地址。 JMP SHORT NEXT指令执行过程: NEXT—在汇编语言中使用符号地址 (IP)←(IP)当前+D8(8位带符号数)
LOOP, LOOPE/LOOPZ, LOOPNE/LOOPNZ
CALL, RET
中断指令
INT, INTO, IRET最新.
3
(一)、无条件转移指令
1. JMP(jmp)目标标号 JMP指令必须指定转移的目标地址(或转向地址)。 转移分成两类:段内或段间转移。
(1)段内直接转移:只要改变IP寄存器的内容
OPR —存储器操作数 (除立即数和寄存器以外的任何一种寻址方式)
执行操作:将4字节连续地址分别送给IP和CS (IP)←(EA)
(CS)←(EA+2) 例:已知 (BX)=1000H,(SI)=2000H , (DS)=2000H
(23000H)=2212H, (23002H)=4434H
JMP DWORD PTR [BX][SI]
助记符 JZ/JE
JS JO JP/JPE JC
转移条件 助记符 转移条件
ZF=1 JNZ/JNE ZF=0
SF=1
JNSБайду номын сангаас
SF=0
OF=1
JNO
OF=0
PF=1 JNP/JPO PF=0
CF=1
JNC
CF=0
② 以CX的值为0作为转移条件
助记符
转移条件
JCXZ
最新. CX=0
11
③以两个无符号数比较的结果作为转移条件
第八讲 8088指令系统(续) 2009.4.7(星期二)
课程内容: 五、控制传送指令 六、处理器控制指令
最新.
1
如何利用地址线产生脉冲
+5V
RD MN/MX
WR
8086 M/IO
两态总线
控制 总线
8284 时钟
CLK RESET
ALE
READY
A19-A16
BHE
AD15-AD0 DEN DT/R
JMP BX
; (IP)=1000H,在当前段内,属于 ;寄存器寻址
JMP WORD PTR [BX] ;(CS)=3000H , (IP)=1234H
在当前段内,(PA)=(16d(DS)+(BX))=(11000H) 为 1234H
将PA地址存储器的内容( 1234H )给IP
;属于寄存器间接寻址。
指令格式举例:
JMP BX
JMP SI
JMP TABLE [BX]
; 操作数已定义为16位存储器
JMP ALPHA_WORD ;操作数已定义为16位存储器 JMP WORD PTR [BP][DI最]新;. 操作数已定义为16位存储器6
例:
(IP)=5000H, (CS)=3000H , (DS)=1000H, (BX)=1000H (11000H)=1234H,
控制传送指令概述
控制传送指令包括四种:
转移指令,循环控制指令,过程调用指令,中断指令。
指令类型
助记符
无条件转移 JMP
条件转移
循环控制 过程调用
JE/JZ, JNE/JNZ, JS, JNS, JP/JPE, JNP /JPO,JO, JNO, JC, JNC, JB/JNAE, JAE/JNB, JA/JNBE, JBE/JNA,JG/JNLE, JGE/JNL, JL/JNGE, JLE/JNG ,JCXZ
内存
向前跳,D8为正数,
...
往回跳,D8用补码
OP
源程序 : 条件转移指令:JMP SHORT next
... ... ...
(IP)当前
3000:1000H ... ...
(NEXT的值 定义为50H)
next: MOV AL,03H
3000:1050H
OP
03H
JMP SHORT ABC
(IP)=(IP)当前+D8 ...
(IP)←(IP)当前+ OPR(D8) 使用相对寻址方式,范围-128~+127个字节 不满足条件时:(IP)不变,顺序执行下一条指令 (该指令为两字节长度,一字节为指令功能码,一指令为一 个字节的相对跳转地址偏移量)
最新.
10
按转移条件不同,条件转移指令可以分为四大类: ① 以单个状态标志作为转移条件助记符 转移条件
则: (BX)+(SI)=3000H
(IP)=(PA)=(16d(DS)+(BX)+(SI))=(23000H)=2212H
(CS)=(PA+2)=4434H
最新.
9
2.条件转移指令
指令格式:J cc OPR 操作:根据上一条指令所设置的条件码来判别测试条件转移。
每一种条件转移指令都有它的测试条件。 满足条件时 :
相关文档
最新文档