数据的7种寻址方式

合集下载

七种寻址方式定义

七种寻址方式定义

七种寻址方式定义1. 直接寻址(Direct Addressing)直接寻址是一种最简单的寻址方式,它通过使用一个固定的地址来引用存储器中的数据。

在直接寻址中,程序员可以直接指定要访问的内存地址,使得数据能够被快速地检索和处理。

优点: - 简单直观,易于理解和实现。

- 访问速度快,因为没有额外的计算操作。

缺点: - 空间浪费:由于每个变量都需要分配一个独立的内存地址,可能会导致内存空间的浪费。

- 灵活性差:无法动态地分配和管理内存。

2. 间接寻址(Indirect Addressing)间接寻址是一种通过使用指针来间接访问数据的寻址方式。

在间接寻址中,指针包含了要访问的数据的地址,程序员通过操作指针来获取或修改这些数据。

优点: - 灵活性高:可以动态地分配和管理内存。

- 节省空间:多个变量可以共享同一个指针,减少了内存占用。

缺点: - 访问速度相对较慢:由于需要额外的指针操作,访问数据比直接寻址要慢一些。

3. 寄存器寻址(Register Addressing)寄存器寻址是一种通过使用CPU内部的寄存器来访问数据的寻址方式。

在寄存器寻址中,操作数直接存储在CPU的寄存器中,而不是通过内存地址来获取。

优点: - 访问速度极快:由于数据直接存储在CPU的寄存器中,不需要额外的内存访问操作。

- 节省空间:不占用内存空间。

缺点: - 寄存器数量有限:由于现代计算机中可用的寄存器数量有限,可能无法满足大量数据的需求。

- 可移植性差:不同的计算机架构可能具有不同数量和类型的寄存器。

4. 立即寻址(Immediate Addressing)立即寻址是一种通过使用指令本身或指令后面紧跟着的常量值来访问数据的寻址方式。

在立即寻址中,操作数直接包含在指令中,而不需要额外的地址信息。

优点: - 简单直观:操作数直接包含在指令中,易于理解和实现。

- 节省空间:不需要额外的地址信息。

缺点: - 数据大小受限:由于操作数直接包含在指令中,所以通常只能表示较小的常量值。

七种寻址方式举例例题

七种寻址方式举例例题

七种寻址方式举例例题
1. 直接寻址方式:例如,要访问内存中地址为100的数据,直接将地址100传递给内存控制器即可。

2. 立即寻址方式:例如,要将立即数5存储到寄存器R1中,直接将立即数5传递给寄存器R1即可。

3. 间接寻址方式:例如,要访问内存中地址存储在寄存器R2中的数据,先从寄存器R2中获取地址,再将该地址传递给内存控制器。

4. 寄存器寻址方式:例如,要将寄存器R3中的数据存储到寄存器R4中,直接将寄存器R3和寄存器R4传递给寄存器控制器。

5. 寄存器间接寻址方式:例如,要访问内存中地址为寄存器R5中存储的地址的数据,先从寄存器R5中获取地址,再将该地址传递给内存控制器。

6. 基址寻址方式:例如,要访问内存中基地址为寄存器R6中存储的地址加上一个偏移量的数据,先从寄存器R6中获取基地址,再将基地址加上偏移量得到目标地址,最后将目标地址传递给内存控制器。

7. 变址寻址方式:例如,要访问内存中地址为寄存器R7中存储的地址加上寄存器R8中存储的地址的数据,先从寄存器
R7中获取地址,再从寄存器R8中获取地址,最后将两个地址相加得到目标地址,将目标地址传递给内存控制器。

七种寻址方式

七种寻址方式

七种寻址⽅式在存储器中,操作数和指令字写⼊或读出的⽅式,有地址指定的⽅式,相联存储⽅式和堆栈存取⽅式,⼏乎所有的计算机,在内存中都采⽤地址指定⽅式,当采⽤地址指定⽅式的时候,形成操作数或指令地址的⽅式称为寻址⽅式,寻址⽅式分为两类,即为指令寻址⽅式和数据寻址⽅式,在传统⽅式设计的计算机中,内存中指令的寻址与数据的寻址是交替进⾏的⽴即数寻址⽅式:将操作数放在操作码的后⾯。

⼀起放在指令代码段中,在程序运⾏的过程中,程序直接调⽤该操作数,⽽不⽤到其他的地址的单元中去取得相应的操作数。

上述中的操作数也被称为⽴即数。

可以有不同的进制寄存器寻址⽅式:指令所要的操作数已经存储在某个寄存器中,或把⽬标操作数存⼊寄存器中,把在指令中指出所⽤的寄存器(寄存器助忆符)的寻址⽅式称为寄存器寻址⽅式寄存器寻址⽅式是⼀种简单快捷的寻址⽅式,源和⽬的操作数都可以是寄存器直接寻址⽅式:在指令格式的地址字段中直接指出操作数在内存中的地址id。

⼀般情况下数据放在数据段中,所以物理地址将由数据段寄存器DS和指令中给出的有效地址直接形成,但如果使⽤段超越前缀,那么操作数可存放在其他段直接寻址⽅式常⽤于处理内存单元的数据,操作数是内存变量的值,指令中直接给出操作数地址(DIR)的寻址⽅式称为直接寻址⽅式,寻址的对象为:1内存数据存储器,指令中直接地址表⽰2、特殊功能的寄存器SFR,在指令中⽤寄存器名称表⽰寄存器间接寻址⽅式:是指将指定的寄存器内容为地址,由该地址所指定的单元内容作为操作数,MCS-51规定R0或R1为间接寻址寄存器,他可寻址内部RAM低地位的12个字节单元内容,还可以采⽤数据指针(DPTR)作为直接寻址寄存器,寻址外部数据存储器的64k字节空间,但不能⽤本寻址⽅式寻址特殊功能寄存器寄存器的间接寻址需要以寄存器符号的形式来表⽰,并且在寄存器名称前⾯加上间接寻址符号“@”。

例如指令MOV A,@RO就使⽤了寄存器间接寻址⽅式,这条指令的意义就是将地址指针RO指向内部数据存储单元中的数据送⼊累加器A中。

七种寻址方式

七种寻址方式
程序存储区 1020 EA 12 R2
片内RAM区 4A
ACC
4A
MOV A,R2执行示意图
2.直接寻址方式 操作数直接以单元地址的形式给出: MOV A,40H 寻址范围: (1) 内部RAM的128个单元 (2) 特殊功能寄存器。除了以单元地址的形式外, 还可用寄存器符号的形式给出。例如: MOV A,80H 与 MOV A,P0是等价的。 直接寻址方式是访问特殊功能寄存器的唯一寻址方式

JC
03H ;若进位C=0,则程序顺序执行,即 不跳转,PC= PC+2 ;若进位C=1, 则以PC 中的当前内容为基地址, 加上偏移量03H 后所得到的结果为 该转移指令的目的地址 。
程序存储区
1000 1001
40 03 1002 PC


1005
ALU C2
单片机的工作过程
例:
取指过程 执行过程
运算器 ①② 累加器A
MOV A,#09H
程序计数器
74H 09H
;把09H送到累加器A中
地址寄存器
外部地址总线AB
0002H PC= 0000H 0001H
内 部 数 据 总 线
0000H
存 储 器
(PC) (PC) (PC) 0002H 0001H 0 0 0 0 1 0 0 1 0000H 0 1 1 1 0 1 0 0
若进位c1则以pc中的当前内容为基地址加上偏移量03h后所得到的结果为该转移指令的目的地址程序存储区401000031001c21005alu1002pc指令指令寄存器寄存器译码译码地址地址译码译码程序计数器程序计数器地址寄存器地址寄存器累加器累加器a运算器运算器外部地址总线外部地址总线abab外部地址总线外部地址总线abab数据缓冲器数据缓冲器外部数据总线外部数据总线外部数据总线外部数据总线dbdb寄存器区寄存器区外部控制总线外部控制总线cbcb外部控制总线外部控制总线cbcb内部控制信号内部控制信号时钟及清零时钟及清零取指过程取指过程mova09h74h09h

七种寻址方式

七种寻址方式
取指过程
程序计数器 地址寄存器 外部地址总线AB 外部地址总线AB
0002H PC= 0000H 0001H
0000H
内 部 数 据 总 线
(PC) (PC) (PC)
执行过程
运算器 ①② 累加器A 累加器A 存 储 器
0002H 0001H 0 0 0 0 1 0 0 1 0000H 0 1 1 1 0 1 0 0
…Leabharlann MOVC A,@A+DPTR执行示意图 ,@A+DPTR执行示意图

6.位寻址方式 MCS-51有位处理功能 可以对数据位进行操作,例如: 有位处理功能, MCS-51有位处理功能,可以对数据位进行操作,例如: MOV C,40H C, 是把位40H的值送到进位位C 40H的值送到进位位 是把位40H的值送到进位位C。 寻址范围包括: 寻址范围包括: 内部RAM中的位寻址区。位有两种表示方法,例如, RAM中的位寻址区 (1)内部RAM中的位寻址区。位有两种表示方法,例如, 40H;另一种是单元地址加上位,例如,(28H).0, 40H;另一种是单元地址加上位,例如,(28H).0,指 的是28H单元中的最低位。它们是等价的。 28H单元中的最低位 的是28H单元中的最低位。它们是等价的。 (2)特殊功能寄存器中的可寻址位 可寻址位在指令中有如下4种的表示方法: 可寻址位在指令中有如下4种的表示方法: 直接使用位地址。例如PSW.5的位地址为0D5H PSW.5的位地址为0D5H。 a. 直接使用位地址。例如PSW.5的位地址为0D5H。
程序存储区 1020 EA 12 R2
片内RAM区 4A
ACC
4A
MOV A,R2执行示意图
2.直接寻址方式 操作数直接以单元地址的形式给出: 操作数直接以单元地址的形式给出: A, MOV A,40H 寻址范围: 寻址范围: 内部RAM 128个单元 RAM的 (1) 内部RAM的128个单元 特殊功能寄存器。除了以单元地址的形式外, (2) 特殊功能寄存器。除了以单元地址的形式外, 可用寄存器符号的形式给出 例如: 的形式给出。 还可用寄存器符号的形式给出。例如: A, A,P0是等价的 是等价的。 MOV A,80H 与 MOV A,P0是等价的。 直接寻址方式是访问特殊功能寄存器的唯一寻址方式

8051单片机寻址方式

8051单片机寻址方式

8051单片机寻址方式8051单片机共有7种寻址方式。

寻址方式是指令中确定操作数的形式,用来确定操作数所处的存储空间。

1.立即寻址:在指令中直接给出操作数MOV A, #80H 8位操作数MOV A, #2000H 16位操作数2.直接寻址:指令中直接给出操作数地址(1)SFR,这一存储空间只能使用直接寻址MOV PSW, #50H(2)内部数据RAM,这一存储空间可以使用直接寻址和寄存器间接寻址MOV A, 30H3.寄存器寻址:以通用寄存器的内容作为操作数(通用寄存器包括A, B, DPTR, R0~R7)INC DPTR注意:A、B既是通用寄存器,也是SFR(直接寻址)4.寄存器间接寻址:以寄存器中的内容作为操作数的地址能够用于寄存器间接寻址的寄存器有:R0,R1,DPTR,SP区分内部数据RAM寻址和外部数据RAM寻址:外部数据RAM寻址指令上采用MOVX 对内部数据RAM寻址:使用8位的R0或者R1即可MOV @R0, A对外部数据RAM寻址:使用P2端口提供高8位地址,使用R0或者R1提供低8位地址;或者使用16位的DPTR提供地址MOVX A, @R1MOVX @DPTR, A5.变址寻址:以基址寄存器PC或者DPTR与变址寄存器A中的内容之和作为操作数的地址变址寻址只能对程序存储器中的数据进行寻址,由于程序存储器是只读的,因此变址寻址只有读操作,指令上采用MOVCMOVC A, @A+DPTRMOVC A, @A+PC6.相对寻址:用于修改PC的值,使得PC加上指令中给出的一字节的偏移量由于转移指令有两字节和三字节这两种形式,因此偏移量的范围分别为-126~+129和-125~+130SJMP 80H7.位寻址:以位地址中的内容为操作数SETB 20HMOV 32H, C总结一下各种寻址方式的使用场合:立即寻址:常数直接寻址:SFR和内部数据RAM寄存器寻址:寄存器区寄存器间接寻址:内部数据RAM和外部数据RAM变址寻址:程序存储器相对寻址:PC位寻址:位地址区。

数据寻址方式介绍

数据寻址方式介绍

数据寻址方式介绍数据寻址方式是计算机中的一种技术,用于确定存储器中数据元素的位置。

在计算机系统中,存储器是一个重要的组成部分,用于存储数据和程序。

为了有效地存取存储器中的数据,需要一种确定数据所在位置的方式。

数据寻址方式可以分为以下几种类型:1.直接寻址:直接寻址是最简单的寻址方式,通过给定一个绝对地址来确定数据元素的位置。

在直接寻址方式中,每个数据元素都有一个唯一的地址,计算机可以直接通过这个地址访问数据。

这种寻址方式的优点是简单快速,但是缺点是地址空间受限,浪费存储空间。

2.间接寻址:间接寻址是通过给定一个地址的地址来确定数据元素的位置。

在间接寻址方式中,存储器中的每个地址都指向存储器中的另一个地址,进而确定数据元素的位置。

这种寻址方式的优点是地址空间较大,可以充分利用存储空间。

但是缺点是多次访问存储器,时间效率较低。

3.寄存器寻址:寄存器寻址是通过将数据元素存储在寄存器中,然后通过寄存器编号来访问数据元素。

在寄存器寻址方式中,计算机系统中有一组寄存器可以用于数据存储,这些寄存器具有较快的访问速度。

这种寻址方式的优点是访问速度快,但是缺点是寄存器数量有限,存储容量有限。

4.索引寻址:索引寻址是通过给定一个索引来确定数据元素的位置。

在索引寻址方式中,存储器中的每个地址都存储了数据元素的索引值,通过给定的索引值可以快速确定数据元素的位置。

这种寻址方式的优点是可以通过索引值快速定位数据元素,但是缺点是需要额外的索引存储空间。

5.相对寻址:相对寻址是根据当前指令的位置来确定数据元素的位置。

在相对寻址方式中,指令中的地址是相对于当前指令的位置的偏移量,通过加上这个偏移量可以计算出数据元素的位置。

这种寻址方式的优点是灵活,可以根据当前指令的位置动态计算数据元素的位置,但是缺点是指令中的地址需要较多的位数。

6.基址寻址:基址寻址是通过给定一个基地址和一个偏移量来确定数据元素的位置。

在基址寻址方式中,基址是存储器中的一个地址,偏移量是相对于基址的地址的偏移量,通过将基址和偏移量相加可以计算出数据元素的位置。

七种寻址方式.ppt

七种寻址方式.ppt
其中Ri中的内容为40H,把内部RAM中40H单元的内容送 到A。
寻址范围: (1)访问内部RAM低128个单元,其通用形式为@Ri (2)对片外数据存储器的64K字节的间接寻址,例如:
MOVX A,@DPTR
(3)片外数据存储器的低256字节
例如:MOVX A,@Ri
(4)堆栈区
堆栈操作指令PUSH(压栈)和POP(出栈)使用堆 栈指针(SP)作间址寄存器
寄存器DPTR等。
1020
程序存储区 EA
片内RAM区
12
R2
4A
ACC
4A
MOV A,R2执行示意图
2.直接寻址方式 操作数直接以单元地址的形式给出: MOV A,40H 寻址范围: (1) 内部RAM的128个单元 (2) 特殊功能寄存器。除了以单元地址的形式外, 还可用寄存器符号的形式给出。例如: MOV A,80H 与 MOV A,P0是等价的。
地址 译码
寄存器区 内部控制信号
数据缓冲器 外部数据总线DB
指令 时钟及清零 寄存器
译码
外部控制总线CB
返回
D7 D6 D5 D4 D3 D2 D1 D0 27H 0 0 1 0 0 0 0 0
3F 3E 3D 3C 3B 3A 39 38
图4.9 SETB 3DH 指令执行示意图
7.相对寻址方式
在相对寻址的转移指令中,给出了地址偏 移量,以“rel”表示,即把PC的当前值加上偏 移量就构成了程序转移的目的地址:
目的地址=转移指令所在的地址 + 转移指令的字 节数 + rel
偏移量rel是一带符号的8位二进制数补码数 。
范围是:–128 ~ +127
向地址增加方向最大可转移(127+转移指令字节) 个单元地址,向地址减少方向最大可转移 (128-转移指令字节)个单元地址。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第3章数据的7种寻址方式,包括指令的格式,功能,指令的正误判断。

20位物理地址的生成:将段地址添上一个0(十六进制),再加上偏移地址。

数据传送指令:MOV PUSH,POP,XCHG,LEA,IN,OUT1、MOV ,注意指令的正误判断,可从3点入手。

(1)指令格式(2)数据大小是否超出范围(3)类型是否匹配。

通常,不能在两个内存单元间直接传送,段寄存器间不能直接传送,立即数不能直接传送到段寄存器,不能用CS作目的操作数。

2、PUSH 入栈指令,先减后压。

不能对字节进行压栈操作。

3、POP 出栈指令,先弹后加,将栈顶的一个字弹出到目的操作数。

4、EXCHG 交换指令。

不能在两个内存单元间直接交换。

5、LEA 取有效地址指令。

6、IN 输入指令,当端口大于255时,要用DX来表示端口号。

7、OUT 输出指令,当端口大于255时,要用DX来表示端口号算术运算等指令1、ADD AL,[1000H]例:AL=85H,BL=79H,执行指令ADD AL,BLAL= 0FEH ,CF= 0 ,OF= 02、SUB AL,BL3、INC [1000H] ERRORINC BYTE PTR [1000H]INC WORD PTR [1000H]该指令不影响CF标志4、DEC [1000H] ERRORDEC BX5、NEG AL 求相反数例:Y=X,X>=0; Y=|X|,X<0,编写程序段实现该功能MOV AL,XCMP AL,0JGE Y1NEG ALY1:MOV Y,ALHLT编程序的思路:取数据,在CPU里做运算,存数据;如果数据较多,通常要设指针,再取数据,取完数据后,修改地址指针,又取下一个数据,循环下去。

6、CMP AL,BL无符号数,A表示大,B表示小,E表示相等。

有符号数,G表示大,L表示小,E表示相等。

例:CMP AX,BXJGE NEXTXCHG AX,BXNEXT: CMP AX,CXJGE DONEXCHG AX,CXDONE:该程序段的功能是找AX,BX,CX中最大的数,并把最大的数放在AX中。

例:MOV CX,0LOP:AND AX,AXJZ STPSAL AX,1JNC LOPINC CXJMP LOPSTP:HLT该程序段的功能是找AX中“1”的个数,存入CX中。

位运算指令1、AND,OR,NOT,XOR,TESTAND指令通常用来对指定位清0。

例:把DL的第5位清0,其余位保持不变AND DL,11011111BOR指令通常用来对指定位置1。

例:把DL的第5位置1,其余位保持不变。

OR DL,00100000BXOR指令通常用来对指定位取反。

例:把DL的第5位取反,其余位保持不变。

XOR DL,00100000B2、SHL,SAL,SHR,SAR,ROL,ROR,RCL,RCR,当移位次数为1时,直接写移位次数;当移位次数大于1时,要把移位次数放入CL中。

控制转移类指令1、JMP,JC,JNC,JO,JNO,JA,JAE,JB,JBE,JE,JG,JL,JGE,JLE,复习时参看习题3.5(1),(3),3.6,3.9(2),3.112、LOOP,先减后判断第4章例:求SUM=D1+D2编写完整程序实现该功能。

DA TA SEGMENTD1 DB 5D2 DB 7SUM DB ?DA TA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV AL,D1MOV BL,D2ADD AL,BLMOV SUM,ALMOV AH,4CHINT 21HCODE ENDSEND START例:Y=1,X>0;Y=0,X=0;Y=-1,X<0;编写完束程序实现该功能。

DA TA SEGMENTX DB -78Y DB ?DA TA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV AL,XCMP AL,0JE Y1JG Y2MOV Y,-1JMP OVERY1:MOV Y,0JMP OVERY2:MOV Y,1OVER: MOV AH,4CHINT 21HCODE ENDSEND START例:用数据定义语句完成下述功能:(1)将ABC为首址的内存单元初始化为12,34,6个-5。

ABC DB 12,34,6 DUP(-5)(2)定义字符串ABC为“STUDENT”ABC DB ‘STUDENT’例:习题4.19,编写一个完整的源程序,将BUF字节单元存放的两位BCD码,转换成2个字节的ASCII码,并分别存放在ASC和ASC+1字节单元中。

DA TA SEGMENTBUF D B 54HASC D B ?,?DA TA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV AL,BUFMOV CL,4SHR AL,CL;05HADD AL,30HMOV ASC,ALMOV AL,BUFAND AL,0FHADD AL,30HMOV ASC+1,ALMOV AH,4CHINT 21HCODE ENDSEND START例:4.16试编写一程序段,在CHAR为首址的26个字节单元中依次存放字母‘A’-‘Z’LEA BX,CHARMOV CX,26MOV AL,'A'NEXT: MOV [BX],ALINC BXINC ALLOOP NEXTHLT例:判断AL中的数据是否为负数,若为负数,将BL设置为-1,否则将BL设置为1,编写程序段实现该功能。

CMP AL,0JL Y1MOV BL,1JMP OVERY1: MOV BL,-1OVER: HLT例:判断AL中的数据是否为偶数,若为偶数,将BL设置为0,否则将BL设置为1,编写程序段实现该功能。

SHR AL,1JNC Y1MOV BL,1JMP OVERY1: MOV BL,0OVER: HLT例:编写完整的汇编语言源程序求1-100的累加和,并将和存入SUM内存单元中.DATA SEGMENTSUM DW ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DA TASTART: MOV AX,DA TAMOV DS,AXMOV AX,0;AX用来存入累加和MOV BX,1;BX为加数MOV CX,100;循环次数NEXT: ADD AX,BXINC BXLOOP NEXTMOV SUM,AXMOV AH,4CHINT 21HCODE ENDSEND START例:数据段定义如下,编写完整的汇编语言源程序统计数组ARRAY中负元素的个数,存入RS单元中。

DATA SEGMENTARRAY DB -10,23,98,-24,90,45,98RS DB ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DA TASTART: MOV AX,DA TAMOV DS,AXLEA BX,ARRAYMOV CX,7;数组中的元素个数MOV DL,0;统计负数个数NEXT: MOV AL,[BX]CMP AL,0JL Y1JMP AGAINY1: INC DLAGAIN: INC BXLOOP NEXTMOV AH,4CHINT 21HCODE ENDSEND STARTDOS系统功能调用方法:(1)入口参数送指定寄存器。

(2)功能号送AH。

(3)INT 21H第5章1、根据在计算机系统中的地位,存储器可分为内存和外存,相比较而言,内存容量小,执行速度快。

2、存储器中的数据组织:在微机系统中,内存一般以字节编址。

存放一个字时,按“低低高高”的原则进行存放,即低字节放在低地址,高字节放在高地址。

例:设DS=1000H,BX=2000H,(12000H)=34H,(12001H)=56H,则指令MOV AX,[BX]执行后,AX=5634H.M3、存储器芯片的存储容量表示为:2M *Nbit, M表示地址线的位数,N表示数据线的位数。

例:若有一内存芯片,其容量为212 *8bit, 则该芯片有12条地址线,有8条数据线。

例:有一存储器系统容量为16KB,选用512*4bitRAM芯片构成该系统,需多少芯片?16KB的存储系统最少需多少寻址线?16KB=64片512*4bit16KB的存储系统最少需:16*210 =2 14,故最少需要14条寻址线。

4、RAM称为随机读写存储器,可分为静态和动态两种。

ROM称为只读存储器,可分为掩膜ROM,PROM,EPROM,EEPROM。

5、推算芯片地址范围的方法:(1)列出20位地址标记。

A19.......A0(2)确定出芯片的片内最低地址,即全为0,确定出芯片的片内最高地址,即全为1,之后确定出片外的地址为0或为1(对最低地址和最高地址页言,片外地址都相同)(3)将上述最低地址,最高地址写为5位十六进制形式即可。

确定芯片的地址范围,需要掌握138译码器输入与输出的对应关系,3个使能端的接法例:P193图5-13,P209习题5.4,5.86、片选控制的3种方法:全译码,部分译码,线选。

全译码:全部地址线都参与译码,存储器芯片中的任意单元都有唯一确定的地址。

部分译码:部分地址线参与译码,存储单元的地址有重叠。

线选:不需要译码器芯片,用于构成容量较小的存储器系统。

第6章1、接口:外设同微机间用来实现数据传送的控制电路称为接口。

端口:接口中可由CPU进行读或写的寄存器称为端口。

按存放信息的类型来分,端口可分为“数据口”,“状态口”,“控制口”。

CPU同外设交换的信息为数据信息、控制信息和状态信息。

2、I/O端口的编址方式有两种,即独立编址和统一编址。

8086系统采用独立编址,用16条地址线来访问端口,故端口可多达64K个。

8086系统用20条地址线来访问内存,故内存的最大空间为1MB.3、查询方式的过程(1)通过执行一条输入指令,读取所选外设的当前状态。

(2)若外设正处于“忙”或“未准备就绪”,则程序转回继续检测外设状态;如果外设处于“空”或“准备就绪”,则发出一条输入/输出指令,进行一次数据传送。

第7章1、可屏蔽中断:微处理器内部能够屏蔽的中断,称为可屏蔽中断。

若中断允许标志IF=0,则屏蔽INTR引脚上的中断。

不可屏蔽中断:微处理器内部不能屏蔽的中断,称为不可屏蔽中断,8086引脚NMI上的中断,即为不可屏蔽中断。

用指令STI开放中断,CLI关闭中断。

2、中断嵌套:当CPU执行优先级较低的中断服务程序时,允许响应优先级比它高的中断源请求中断,而挂起正在处理的中断,这就是中断嵌套。

相关文档
最新文档