第03章 寻址方式及堆栈(教案)
数据结构教案-详细版-第3章栈和队列教案
xxxx学院教案首页xxxx学院教案附页第一学时(栈的定义、常用操作与顺序存储的实现)一、情景导入(1)引出栈的概念由线性表引出栈:栈是线性表的一种,只是在操作上,与线性表有所差别。
如果没有道具,借用课本,粉笔盒或学生自主进行展示。
(2)进入主题,讲解栈的特点与线性表进行类比,栈与基础线性表的差别,在于它的操作受限、取数的方式不如线性表自由。
可以结合图3-1中的图示,引导学生回想存取碗时的具体操作,帮助学生领悟栈的特点。
图3-1 一摞碗二、知识讲解(1)栈的特点结合图3-2中栈的结构图,对栈的操作原则——后进先出,进行讲解。
图3-2 栈的结构图(2)栈的常用操作栈的常用操作如下:•创建栈(初始化栈)•判断栈是否为空•进栈•出栈•获取栈顶元素•获取栈的长度•销毁栈在对栈的原则进行讲解之后,对栈中常用操作进行总结。
(3)栈的顺序存储实现栈是线性表的一种,顺序存储的栈是一种顺序表。
在知识点(2)提到的操作中,进栈和出栈是可以展示出栈特点的特色操作,可以结合图示,对这两种操作的实现进行详细说明;此外,简单叙述栈中其余功能的实现方法。
在讲解完顺序栈中的各种操作之后,结合书中例3-1给出的代码,带领学生掌握栈的实现方法。
第二学时(栈的链式存储实现)一、知识回顾(1)对上节课留的作业进行答疑。
(2)回顾总结上节课的内容,引出本节课主题。
上个学时讲解了栈的定义、栈的特点与栈的顺序实现,本学时来探讨栈的链式存储实现。
二、知识讲解(1)链栈的数据结构定义链栈是一种链表,与顺序栈相同,链栈在操作时也受到限制,遵循“后进先出”的原则。
结合链表的数据结构定义,引导学生完成链栈的数据结构定义。
(2)链栈的实现链栈的存储方式与链表相同,操作原则与顺序栈相同。
从这两点出发进行分析,引导学生找到链栈实现的思路,然后给学生留出一定时间,由学生自主分析巩固链栈操作的实现方法,之后结合学生自主实现链栈时遇到的问题,对链栈进行讲解。
(用栈实现四则运算)三、情境引入通过计算机的算术运算功能,引出本学时的主题:计算机的基本功能大多都是基于对数据的操作,给出一个运算式,计算机能迅速计算出结果,若运算时有误,如运算式“1+3*(2+5”,右边少了一个“)”,编绎器会立刻检查出错误并报告,那么计算机是如何做到的呢?藉由以上问题,引出逆波兰表达式。
第三章 MCS-51单片机的寻址方式和指令系统
由此可把数据传送指令分成三部分
(一)内部数据传送(通用传送指令)
1.以A为目的操作数
MOV A,Rn MOV A,@Ri ;A← (Rn) ;A←((Ri))
双字节
11101rrr 1110011i
MOV A,direct ;A←(direct) 11100101 direct
MOV A,#data ;A←#data 例: MOV A,@R1 若(R1)=20H,(20H)=62H 结果:(A)=62H 11100100 data
指令MOVC A,@A+DPTR;执 行示意图
结果:(ACC)=64H
六、相对寻址
以当前PC的内容为基准,加上指令给出的 偏移量(rel)形成新的PC值(转移地址) 的寻址方式。
转移地址=目的地址 =当前(PC)+rel
目的地址=PC当前值十rel 目的地址=转移指令的PC值+2(或3)十rel 目的地址=转移指令地址+转移指令字节数+rel
单周期:64 双周期:45 四周期:2
若fosc=12MHz, 大多指令执行 仅1μs
按照指令的功能分5大类
一、数据传送类指令(29条) 二、算术运算类指令(24条) 三、逻辑操作类指令(24条) 四、控制转移类指令(17条) 五、位操作类指令 (17条)
在描述指令系统的功能时,常用符号介绍:
@——间址符号,如@Ri,@DPTR 13. / ——位操作数的前缀,表示对该位操作 数取反,如/bit。 14. (×)——由×寻址的单元中的内容。 15. ((X))——由X的内容作为地址的存 储单元的内容。 16. ← ——箭头右边的内容取代箭头左边的 内容。
12.
一、数据传送类指令(29条)
微机原理第三章8086的寻址方式和指令系统PPT课件
04 寻址方式和指令系统的关 系
寻址方式对指令执行的影响
01
寻址方式决定了指令操作数的来源和访问方式,从而
影响指令的执行效率和正确性。
02
不同的寻址方式可能导致指令执行时间不同,因为它
们可能需要不同的计算步骤和内存访问次数。
03
寻址方式的正确选择可以简化指令的执行过程,提高
指令的执行效率。
指令系统对寻址方式的支持
在个人电脑(PC)领域,IBM PC/AT是基于8086的扩展版 80286开发的,奠定了现代PC 的基础。
8086也被广泛应用于工业控制、 自动化设备、仪器仪表等领域。
现代计算机系统中8086的继承和发展
尽管随着技术的进步,更先进的微处理器已经取代了8086在主流应用中的地位, 但8086的设计理念和架构仍然在许多嵌入式系统、低功耗应用中得到继承和发展 。
CALL指令用于调用子程序, 并将返回地址压入堆栈。
处理器控制类指令
处理器控制类指令用于控制 处理器的状态和行为。
包括HLT、INT、IRET等指令。
02
01
03
HLT指令用于暂停处理器执 行,等待中断或系统调用。
INT指令用于触发软件中断, 执行中断处理程序。
04
05
IRET指令用于从中断返回, 恢复程序的执行。
算术运算类指令用于执行 加、减、乘、除等算术运 算。
ADD指令将两个操作数 相加并将结果存储在目标 操作数中。
ABCD
包括ADD、SUB、MUL、 DIV等指令。
SUB指令从第一个操作数中 减去第二个操作数,并将结 果存储在目标操作数中。
逻辑运算类指令
逻辑运算类指令用于执行逻 辑与、或、非等逻辑运算。
第3章TMS320C54XDSP寻址方式09.10
ARx包含了数据存储器地址 访问后,ARx以循环寻址方式减1 ARx包含了数据存储器地址 访问后,ARx以循环寻址方式减去 AR0 ARx包含了数据存储器地址 访问后,ARx以循环寻址方式加1 ARx包含了数据存储器地址 访问后,ARx以循环寻址方式加上 AR0 ARx加上16位长偏移量作为数据 存储器地址 访问后,ARx中内容不变 ARx加上16位长偏移量作为数据 存储器地址 访问后,ARx中内容加上16位长 偏移量 ARx以循环寻址方式加上16位长 偏移量作为数据存储器地址, 同时修改ARx中内容 以无符号16位长偏移量作为数据 存储器地址 (绝对地址)
19
单操作数 3 间接寻址 y0 a i x i a0 x0 a1 x1 a 2 x 2 a3 x3 编程举例: i 0 .mmregs .bss x, 4 .word 1, 2, 3, 4 STM #a, AR1 STM #x, AR2 LD #0, A LD *AR1+,T MAC *AR2+,A LD *AR1+,T MAC *AR2+,A LD *AR1+,T MAC *AR2+,A LD *AR1,T MAC *AR2,A …..
第一条指令表示将数据存储器中以DATA符号为地址单元中 的数据传送到由辅助寄存器ARl所指向的数据存储单元中去。 DATA代表数据存储单元的地址dmad。 第二条指令表示将程序存储器中以TABLE符号为地址单元中 的数据传送到由辅助寄存器AR2所指向的数据存储单元中去。 TABLE代表程序存储单元的地址pmad。 第三条指令表示将地址为0F2F0H的端口中的数据传送到由 辅助寄存器AR5所指向的数据存储单元中去。
17序号间址类型功能说明arxaddrarxarx包含了数据存储器地址arxaddrarxarxarx1arx包含了数据存储器地址访问后arx中地址减1arxaddrarxarxarx1arx包含了数据存储器地址访问后arx中地址加1arxaddrarx1arxarx1寻址前arx中地址加1arx0baddrarxarxbarxar0arx包含了数据存储器地址访问后arx以位倒序方式减去ar0arx0addrarxarxarxar0arx包含了数据存储器地址访问后arx中减去ar0arx0addrarxarxarxar0arx包含了数据存储器地址访问后arx中加上ar0arx0baddrarxarxbarxar0arx包含了数据存储器地址访问后arx以位倒序方式加上ar0号表示间址32位字时增减为2寻址前变址只用于写操作指令18arxaddrarxarxcircarx1arx包含了数据存储器地址访问后arx以循环寻址方式减1arx0addrarxarxcircarxar0arx包含了数据存储器地址访问后arx以循环寻址方式减去ar010arxaddrarxarxcircarx1arx包含了数据存储器地址访问后arx以循环寻址方式加111arx0addrarxarxcircarxar0arx包含了数据存储器地址访问后arx以循环寻址方式加上ar012arxlkaddrarxlkarxarxarx加上16位长偏移量作为数据存储器地址访问后arx中内容不变13arxlkaddrarxlkarxarxlkarx加上16位长偏移量作为数据存储器地址访问后arx中内容加上16位长偏移量14arxlkaddrcircarxlkarxcircarxlkarx以循环寻址方式加上16位长偏移量作为数据存储器地址同时修改arx中内容15lkaddrlk以无符号16位长偏移量作为数据存储器地址绝对地址lk不允许mmr寻址19间接寻址时
MCS-51_第03章 MCS-51的指令系统
内容相互交换。
3.2.3 算术运算类指令
表 3.2 算术运算指令
表 3.2 算术运算指令
表 3.3 影响标志位的指令
表 3 3 影 响 标 志 位 的 指 令
.
一、 加法指令 1. 普通加法指令 ADD A, Rn ADD A, direct ADD A, @Ri ADD A, #data
MOV R0 30H A, @R0 内部RAM
30H
20H
A 20H
5. 基址寄存器加变址寄存器间接寻址 这种寻址方式用于访问程序存储器中的数据表格, 它以 基址寄存器DPTR或PC的内容为基本地址, 加上变址寄存器 A的内容作为操作数的地址, 例如: MOVC A, @DPTR+A JMP @A+DPTR MOVC A, @ PC+A
3.2.2 数据传送类指令
图 3 –1 MCS -51传送指令示意图
表 3.1 数据传送类指令一览表
表 3.1 数据传送类指令一览表
1. 数据传送到累加器A的指令 MOV A, Rn MOV A, direct MOV A, @Ri MOV A, #data 这组指令的功能是:把源操作数的内容送入累加器A。 例如: MOV A, #10H, 该指令执行时将立即数 10H送入累 加器A中。
这组指令的功能是:把源操作数的内容送入内部RAM 单元或特殊功能寄存器。其中第三条指令和最后一条指令 都是三字节指令。第三条指令的功能很强, 能实现内部 RAM之间、特殊功能寄存器之间或特殊功能寄存条指令是将16位的立即
数送入数据指针寄存器DPTR。
4. 累加器A与外部数据存储器之间的传送指令 MOVX A, @DPTR MOVX A, @Ri MOVX @DPTR, A MOVX @Ri, A
[物理]单片机3第三章寻址方式
北京化工大学 信息科学与技术学院 郭 青
1
第三章
本章重点
寻址方式
80C51指令系统
指令格式
操作结果及对标志位影响
3.1
111条指令
概述
29 24 24 17
数据传送类指令 数学运算类指令
分类
逻辑运算类指令 控制转移类指令
位操作指令
17
单字节指令 按指令长度分类
双字节指令
三字节指令 12个振荡周期 64
COUNT:PUSH DPH; 保护DPTR内容
PUSH DPL;
MOV DPTR,#TABLE ;赋表首地址给DPTR
MOVC A, @A+DPTR
; POP DPL; 根据A中内容查表 恢复DPTR内容 返回主程序
POP DPH
RET;
ORG 1000H TABLE:DB 00 DB 01 DB 04 DB 09 DB 16 DB 25 DB 36 DB 49 DB 64 DB 81
19
3.3.1 数据传送类指令
按操作方式,分为三种: 数据传送 数据交换 栈操作
一、普通传送类指令 格式: MOV (目的操作数),(源操作数) 操作码助记符 操作: 将源操作数单元内容,传送到目的操作数 单元中,源操作数内容不变。不影响标志 位Cy,AC和OV。
操作数的组合关系
1、立即数的传送 MOV A, #data MOV Rn, #data (A) (Rn) #data #data
d:MOV direct,#data
将8位立即数送入由direct直接寻址的地 址单元中。 direct:00H~FFH,8位二进制地址码
寻址内部RAM(00H~7FH)及SFR
第三讲51单片机存储器及寻址方式
TMOD 定时器方式寄存器
部分专用寄存器介绍
1) 程序状态字寄存器PSW C AC F0 RS1 RS0 OV F1 P
C:为进位标志,AC:半进位标志,F0 、 F1为用户标志, RS1和RS0为当前工作寄存器组的选择位,OV 是溢出标志 位, P是奇偶标志位。
2)ACC:累加器 3)DPTR:地址寄存器
B ACC PSW TH2* TL2* RCAP2H* RCAP2L* T2MOD* T2CON* IP P3 专 IE 用 WDTRST 寄 P2 存 SBUF 器 SCON 区 P1 SFR TH1 TH0 TL1 TL0 TMOD TCON PCON DP1H DP1L DPH DPL SP P0
工作寄存器区: 00H~1FH
30H 2FH
用户RAM区
位寻址区:
20H~2FH
20H 1FH 18H 17H
位寻址区 (位地址00H~7FH)
第3组工作寄存器区R0~R7
用户RAM区: 30H~7FH
第2组工作寄存器区R0~R7 10H 0FH 第1组工作寄存器区R0~R7 08H 07H 第0组工作寄存器区R0~R7 00H
二、数据存储器
工作寄存器区
地址:00H~1FH,32B;
4组:每组为8个8位寄存器
R0~R7;
由PSW中的RS1,RS0选择 当前工作寄存器。
RS1RS0与工作寄存器的关系
工作寄存器选择
组
0 1 2
RS1 RS0 R0
0 0 1 0 1 0 00H 08H 10H
R1
01H 09H 11H
假定R1寄存器的内容是 60H,则其功能是以 R1寄存 器的内容60H为地址,将60H地址单元的内容与累加器A 中的数相“与”,其结果仍存放在A中。
第3章 80C51单片机的寻址方式和指令系统
(2)算术运算类指令(24条);
(3)逻辑运算及移位类指令(24条); (4)控制转移类指令(17条); (5)位操作类指令(17条)。
6
本节内容
3.1.1 汇编语言指令格式 3.1.2 机器码的三种格式 3.1.3 指令中常用符号说明
7
3.1.1 汇编语言指令格式
3.4.1 加法指令 3.4.2 减法指令 3.4.3 乘、除法指令
3.5 逻辑运算及移位类指令(24条)
3.5.1 逻辑与运算指令 3.5.2 逻辑或运算指令
3
第2章:80C51系列单片机基本结构及原理
3.5.3 逻辑异或运算指令 3.5.4 累加器清零、取反指令 3.5.5 循环移位指令
目录
3.6 控制转移类指令(17条)
解:指令执行过程如图3-3,结果:(A)= 60H 。 指令在ROM中的机器码为E8H,指令对应的机器码是:E8H=1110 1000B,二进 制的后三位000就是隐含的R0寄存器的编码,如果是R7其编码为111。 由于寄存器在CPU内部,所以采用寄存器寻址可以获得较高的运算速度。
31
32
能实现这种寻址方式的寄存器有: (1)工作寄存器 R0~R7 (4组工作寄存器均可) (2)累加器A (注:使用A为寄存器寻址,使用ACC为直接寻址) (3)寄存器B (注:以AB寄存器对的形式出现时为寄存器寻址,单独出现
一条完整的汇编语言指令通常由标号、操作码、操作数 (一般包括目的操作数和源操作数)及指令的注释构成。 指令格式: [标号:] <操作码> [操作数] [,操作数][;注释]
说明:
①在一条指令中,方括号中的内容可有可无,尖括号中的内容 必须有。
第三章操作数的寻址方式
P33 1、2、3、5、6(单数)、
图示
1、直接寻址
例:指令:mov bx,es:[1234h],(es)=1000h, (11234h)=1234h。问该指令执行后,bx的值是什 么?
PA=(es)×16+1234h=11234h (bx)=1234h
1、直接寻址
要点:
地址也常用内存变量名来表示,书写格式:v_1或 [v_1]。
综合
例4:如图所示,取第三个字数 据→(dx) 解:取第3个数据,其偏移量: num+3 (1)直接寻址: mov dx,num+4 ;num为字变量 (2)寄存器间接寻址: lea bx,num+4 mov dx,[bx]
综合
(3)寄存器相对寻址: mov si,4 mov dx,num[si]
一、概述 二、立即数寻址(imm) 三、寄存器寻址(reg) 四、存储器寻址(mem)
寄存器寻址(reg)
指令所要的操作数已存储在某寄存器中,或把目标 操作数存入寄存器。把在指令中指出所使用寄存器 (寄存器符号)的寻址方式称为寄存器寻址方式。
执行过程
指令中可以引用的寄存器及其符号如下: 8位寄存器有:ah、al、bh、bl、ch、cl、 dh和dl。 16位寄存器有:ax、bx、cx、dx、si、di、 sp、bp、ip和段寄存器。
寄存器寻址(reg)
例:
add varw,ax add varb,bh
;其中varw,varb是字、字节内存变量。
add bh,78h
add ax,1234h
mov ax,bx
mov bh,al
汇编课第3章寻址方式与指令系统之3 (1)
北京理工大学-张华平-2010
24
① 段内直接短转移 格式:JMP SHORT LABEL 例.
JMP SHORT B1 ;无条件转移到B1标号处 A1: ADD AX,BX B1: …
北京理工大学-张华平-2010
25
② 段内直接转移 格式:JMP LABEL 或: JMP NEAR PTR LABEL
同上
测试并取反由SRC 指定的DST中的位
同上
表3-4 位测试指令
北京理工大学-张华平-2010
10
三、位扫描指令
从386开始增加了位扫描指令,它们包括 BSF、BSR指令,可用于扫描操作数中第一个含 1的位。
北京理工大学-张华平-2010
11
1.顺向扫描指令 BSF 格式:BSF DST,RSC 功能:从右向左扫描RSC操作数中第一个含1的
… B3: SUB AX,CX
… C2 ENDS
北京理工大学-张华平-2010
动画演示
29
2.条件转移指令 执行这类指令时通过检测由前边指令已
设置的标志位确定是否转移,所以它们通常 是跟在影响标志的指令之后。这类指令本身 并不影响标志。
条件转移指令的通用汇编格式: JCC LABEL
北京理工大学-张华平-2010
(设为n),空出的位用操作数OPRD2高端的n位 填充,但OPRD2的内容不变,最后移出的位在进 位标志CF中。
2.双精度右移指令 SHRD 格式:SHRD OPRD1,OPRD2,CNT
北京理工大学-张华平-2010
20
3.6 程序控制指令
本节提供的指令可以改变程序执行的顺 序,控制程序的流向。它们均不影响标志位。
表3-7 检测北单京理个工大条学件-张华标平志-201位0 转移指令 33
微型计算机原理与接口技术课件-第三章指令系统和寻址方式
超越前缀。例如,数据若放在附加段中,则应在
有效地址前加“ES:”,这里的冒号“:”称为 修改
属性运算符,计算物理地址时要用ES作基地址, 而不再是默认值DS。
例如: MOV AX,ES:[500H] 该指令的源操作数的物理地址等于16×ES+
500H。
3.符号地址 在汇编语言中还允许用符号地址代替数值地
MOV CL,AH 注意:源操作数的长度必须与目的操作数一
致,否则会出错。例如,不能将AH寄存器的内 容传送到CX中去,尽管CX寄存器放得下AH的 内容,但汇编程序不知道将它放到CH还是CL中。
这种寻址方式的优点是:寄存器数量 一般在几个到几十个,比存储器单元少很 多,因此它的地址码短,从而缩短了指令 长度,节省了程序存储空间;另一方面, 从寄存器里取数比从存储器里取数的速度 快得多,从而提高了指令执行速度。
用汇编语言(即主要由指令系统组成的语言)编写的程 序称为汇编语言源程序,若直接将它送到计算机,机器
并不认识那些构成程序的指令和符号的含义,还必须由
汇编程序将源程序翻译成计算机能认识的二进制机器语
言指令(机器码)后,才能被计算机识别和执行,得到运算 结果。
8086指令系统采用变长指令,指令的长度可由l~6 字节组成。一字节指令中只包含8位操作码,没有操作数。 如清进位位指令CLC的机器码为1111 1000,可直接从指 令编码表中查到。对于大部分指令来说,除了操作码(不 一定是8位)外,还包含操作数部分,所以要由几个字节组 成。不同的指令,其操作码和寻址方式都是不一样的,
例如:AREA1 EQU 0867H MOV AX,AREA1
例如:AREA1 DW 0867H MOV AX,AREA1 (该指令也可
第3章80888086指令系统(老师用的课件哦)
第3章 8088/8086指令系统
图3.5 变址寻址示意图
第3章 8088/8086指令系统
例:MOV AX,200AH[SI];或(AX)←
[(DS)*16+(SI)+200AH
EA=(SI)
+200AH,SI为变址寄存器,200AH为16位的位移量。
图3.6为用BP寄存器进行变址寻址时的示意图。
第3章 8088/8086指令系统
3.存储器操作数 存储器操作数是把操作数放在存储器单元中。对这 类操作数,在指令中必须给出存储器的地址。存储器 的实际地址(也称物理地址)是由指定的段基址和段内地 址偏移量(也称为有效地址EA)所决定的。由于段基址 相对很少改变,故一般预先予以指定,以后通过隐含 方法使用,即只要段基址未改变,其在汇编指令中便 不再出现。此时,只给出有效地址EA(以各种寻址方式 给出)。
第3章 8088/8086指令系统
3.2 8088/8086指令系统
3.2.1 数据传送指令 1 .数据传送指令MOV 指令格式:MOV OPRD1,OPRD2 MOV 为操作码。 OPRD1为目的操作数,可以是寄存器、存储器、
累加器。
第3章 8088/8086指令系统
OPRD2为源操作数,可以是寄存器、存储器、累 加器和立即数。
第3章 8088/8086指令系统
4.寄存器间接寻址
寄存器间接寻址的操作数类型为存储器操作数,与 直接寻址方式的区别是:该存储单元的16位段内偏移 地址,不是从指令代码中直接得到,而是从指令所指 定的寄存器中得到。能用于间接寻址的寄存器为SI、 DI、BX、BP。若以SI、DI、BX进行间接寻址,应由 数据段DS的内容作为段基址,间接寻址寄存器的内容 为段内偏移量,并指定形成操作数的物理地址。若以 寄存器BP间接寻址,则BP中的内容为段内偏移量,段寄 存器SS与之一起形成物理地址。寄存器间接寻址示意 图如图3.4所示。
第3章C54x的寻址方式
DP地址的范围是从0~511(29-1),将存储器分成 512页。
7位dmad范围是从0~127,每页有128个可以访 问的单元。
以DP为基准的直接寻址是由DP值确定是512页中 的哪一页,由dmad确定是该页中的哪一个单元。
SP可以指向存储器中的任意一个地址。dmad可
以指向当前页中具体的单元,从而允许访问存储器
A 立即数的数值形式:
程序存储
① 短立即数。3、5、8、9位,单字指器令;
② 长立即数。16位,双字指令。 操作码 特点:指令中含有一个固定的立即数立,即运数行速度 较快,但需占用程序存储空间,并且数值不F1能80改变。
用途:用于表示常数或对寄存器初始化。
2021/4/22
DSP技术及应用
立即数寻址
❖ AR0-AR7的内容相当灵活,可以装入立即数, 加上立即数,减去立即数,也可以从数据存 储器中装入地址,还可以作以下的变址寻址
2021/4/22
DSP技术及应用
2021/4/22
DSP技术及应用
2021/4/22
DSP技术及应用
❖ 将该AR的内容加1或减1,然后再寻址(循环 常用)。
❖ 将该AR的内容加或减AR0的内容,然后再寻 址
❖ 将该AR的内容逆向进位加或减AR0的内容, 然后再寻址
2021/4/22
DSP技术及应用
寻址方式:间接寻址
ADD *,8,A ;将当前辅助寄存 器所指的地址里的数据,左移8-bit 后加给AccA
存储器映像 :用来改变映像寄存器,但不影响DP或SP的值 寄存器寻址 堆栈寻址 :用来管理系统堆栈中的操作
2021/4/22
DSP技术及应用
第3章 TMS320C54x的指令系 统
汇编语言寻址方式及堆栈
③ 8088/8086 CPU 按代码段、数据段、堆栈段、 附加段对内存进行分类管理:
➢ 代码段:CS : IP; ➢ 堆栈段:SS : SP; ➢ 数据段:DS : 位移量+基址量+变址量
④ 寻址方式 ➢ 寄存器寻址方式(访问 CPU 完成数据处理的接口, 按“直呼其名”的方式进行); ➢ 立即数寻址方式(伴随指令序列来自于代码段的 常量); ➢ 数据段寻址是三种偏移分量的组合:
和 SP 的初值决定的。
本章习题
本章参考
第五章 第 1、12 题 汇编语言教程.chm
谢谢
段基址:偏移量
形成物理地址。由于在大多数使用场合地址指 针的段基址是“现成的”和隐含的,所以本小节讨 论的重点是“有效地址”——偏移量的问题。
偏移量是某存储单元和段基址间的距离,又被 称作有效地址。
偏移量或有效地址的形成:
偏移量=位移量+基地址+变址量
上述三个分量的不同组合,演绎出存储器寻 址的各种方式。
可以认为相对基址变址寻址方式是最一般的寻址 方式,其他寻址方式都可以看作是基址变址寻址方式 的特例。比如:
MOV AL, [100H+BX+SI] 去掉其中任一个或二个分量就会是某种其他寻址 方式。
3.1.4 寻址方式与常量、变量及“准指针” ① 立即数寻址方式对应汇编语言的常量; ② 存储器寻址方式对应汇编语言的变量; ③ 在各种地址指针寄存器参与的存储器寻址方式 中,地址指针寄存器充当“准指针”的角色。
① 直接寻址 是在指令中直接给出操作数地址偏移量的寻
址方式。比如把 200H 单元的内容送入AL: MOV AL, [200H]
No Image
注意直接寻址和立即数寻址方式区别:方括 号里的数字是操作数的有效地址,[200H]表示该 单元的内容。
寻址方式教案
R0-R7 对应 的地址 R0:00H R1:01H R2:02H R3:03H R4:04H R5:05H R6:06H R7:07H R0:08H R1:09H R2:0AH R3:0BH R4:0CH R5:0DH R6:0EH R7:0FH 以此类推
组 0 ( 00H--07H)
01ຫໍສະໝຸດ 组1 (08H— 0FH)
标号
操作数 1
操作数 2
注 释
(不是一定有) (目的操作数)(源操作数)
导入
操作码助记符 (执行什么样的操作) 单片机在操作过程中寻找目的地址的过程中, 怎么 去寻找地址呢?下面学习第二小节寻址方式
立即 寻址
概念:指令中的操作数是数据,不是地址,这样的操作数 称为立即数,立即数直接参与操作,这种寻址方式称为立 即寻址。 听讲掌握 例:MOV A , #64H 功能: A 64H (把 64H 这个数据送到累加器 A 中) 立即寻址的示意图: 程序存储器 ROM 70H 71H
01110100 01100100
掌握立即 寻址方式 的功能
新授
ACC 累 加 器
执行结果:A 中的内容为 64H, 写作: (A)=64H 概念:指令中直接给出操作数所在存储单位的地址。 听讲掌握 例: MOV A , 64H 功能:A (64H)把 64H 单元中的内容送到累加 器 A 中。 直接寻址示意图: 数据存储器 掌握直接 寻址方式 的功能
公开课教案
教师 课题 时间 周丽芳 寻址方式 2011/11/22 下午第三节 (1)掌握 MCS-51 的寻址方式 (2)掌握几种寻址方式的功能 (3)理解执行指令后的结果 几种常用的寻址方式 寄存器寻址方式 教 学习 环节 学 内 容 地点 视频室 科目 微机控制技术 班级 0922
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3 堆栈操作指令;
ห้องสมุดไป่ตู้
4 堆栈和代码的寻址方式。
教 1 理解和区分立即数寻址与直接寻址、寄存器寻址与寄
学 重
存器间接寻址的区别;
点 2 理解存储器寻址方式和常量、变量的关系;
与 3 掌握SS、SP的初值及其与堆栈结构元素的关系。 难
点
讨
论
、
练
习
、
作
业
教
授课为主、配合上机演示。
学
手
段
参
考
资
料
四川大学教案
【理、工科】
周 次
第四周,第一次课
备注
章
节
第三章 寻址方式及堆栈
名
称
提要细则 在教学提 示卡中。
授
课 理论课(√);实践课( ); 教 学
方 实习( )
时 数
2
式
教 1 理解寻址方式的概念;
学 目
2 理解寻址方式和计算机核心组成的关系;
的 3 准确理解各种寻址方式的确切含义;
及 4 初步理解存储器寻址方式和常量、变量的关系;
要 5 堆栈概念、结构元素和操作指令。 求
教 学 内 容 提 要
时 间 分 配
1. 寻址方式 1 指令语句举例和寻址方式的概念;
2 计算机内核组成与寻址方式的基本分类;
3 8088/8086的7种寻址方式及两对寻址方式的区
别;
4 寻址方式和变量常量的关系初步。
2. 堆栈
1 堆栈的概念;
2 堆栈的构成元素;