PIC18F6390/6490/8390/8490
图5-6:
7
0
0
0
使用存储区选择寄存器(直接寻址)
BSR
(1)
0
0
0
1
0
0
000h
100h
银行1
200h
300h
2银行
数据存储器
00h
BANK 0
FFH
00h
FFH
00h
FFH
00h
7
1
1
1
1
从操作码
(2)
1
1
1
1
1
1
1
1
0
1
BANK SELECT
(2)
3银行
通过
13银行
E00h
14银行
F00h
FFFH
注1 :
2:
15银行
FFH
00h
FFH
00h
FFH
该指令的快速操作RAM位可用于强制所选银行的重写( BSR<3 : 0> )至
在访问存储区的寄存器。
该
MOVFF
指令在指令中嵌入了完整的12位地址。
5.3.2
访问银行
虽然使用BSR和嵌入的8位
地址,用户可以寻址的整个范围
数据存储器,它也意味着用户必须总是
确保了正确的存储选择。否则,
数据可以被读出或写入到错误的位置。
这可能是灾难性的,如果一个GPR的预定目标
的操作,但在SFR写入代替。
验证和/或更改BSR每个读或
写入的数据存储变得非常低效的。
为了连续访问最常用的数据
存储单元,所述数据存储器被配置成与
访问银行,它允许用户访问
映射的内存块而无需指定BSR 。
访问银行组成的前96个字节
存储器( 00H - 5Fh)决定Bank 0中,最后一个160字节
存储器( 60H - FFH )的15座的下半部分被称为
作为“操作RAM”,由GPR组成。这
上半部分是为器件的特殊功能寄存器映射。
这两个区域被连续映射
访问银行,并且可以以线性的方式来解决
由一个8位的地址(图5-5) 。
访问银行所使用的核心PIC18指令
包括快速操作RAM位(即“ a”参数
的指令)。当“a”等于“1” ,指令
使用包括在BSR和8位的地址
操作码的数据存储器地址。当'A'是' 0' ,
然而,该指令被强制使用Access
存储区地址映射; BSR的当前值是
完全忽略。
此“强制”寻址方式可使指令
在一个周期内对数据地址,而操作
首先更新BSR 。为80h的8位地址,并
以上,这意味着用户可以评估和操作
的SFR更有效。低于60h的快速操作RAM
对于用户可能需要的数据值的好地方
快速访问,如直接计算
结果或常用程序变量。访问RAM
还可以更快,更高效的代码上下文
保护和变量切换。
访问银行的映射略有不同
当使能扩展指令集( XINST
配置位=
1).
此进行更详细的讨论
in
5.3.3
通用
注册网络文件
PIC18器件在GPR一部分存储
区。这是数据RAM中,它是能够使用的所有
指令。 GPR从存储区0的底部
(地址000h )向上延伸的底部成长
的SFR区。不会将GPR一个初始化
上电复位,并在所有其他不变
复位。
©
2007 Microchip的技术公司
DS39629C第73页