STC8G系列存储结构RAM FLASH EEPROM
1、数据储存器——RAM 内部 RAM 【以STC8A8K为例:其中低128字节直接访问为CODE、高128字节间接访问为ICODE】 内部扩展RAM 【以STC8A8K为例:包括8192字节内部XCODE】
外部扩展RAM【外部XCODE最大可以扩展为64KB】
2、程序储存器——ROM 3、EEPROM
RAM用于存放程序执行的中间结果和过程数据(掉电后数据消失)变量定义时 如果不加 code stc8a8k 默认存放RAM。
内部 RAM
共 256 字节,可分为 2 个部分:
低 128 字节 RAM 【0x00H-0x7FH】,其中0x00H-0x1FH共32字节为4个寄存器组,通过PSW RS0 RS1进行选择。 20H-2FH共16个字节可以直接进行位寻址。【不用与或操作】
高 128 字节 RAM【0x80H-0xFFH】。
备注:
rs0(1bit) rs1(1bit)各是PSW(8bit)中的一位,PSW是51单片机特殊功能寄存器 【20220619: sfr PSW = 0xd0; //程序状态字寄存器(0xd0=208)】。
(1)Cy(PSW.7)PSW.7是Cy即C,来源于最近一次算术指令或逻辑指令执行时软硬件的改。
(2)Ac(PSW.6) 辅助进位标志位,用于BCD码的十进制调整运算。当低四位向高四位借进位时Ac被置1,否则清0。此位也可和DA指令结合起来用。
(3)F0(PSW.5)用户使用的状态标志位。这个你可以任意使用。
(4)RS1、RS0(PSW.4、PSW.3):4组工作寄存器区选择控制位1和位0。
(5)OV(PSW.2)溢出标志位 在执行算术指令时,指示运算是否产生溢出。
(6)PSW.1位: 保留位,未用。
(7)P(PSW.0)奇偶标志位。
比如 RS1=1等价于PSW |=0x10; RS0=0 等价于PSW &=0xf7;
内部扩展RAM
STC8集成了内部的扩展RAM,单片机内部扩展 RAM 是否可以访问,受辅助寄存器 AUXR 中的 EXTRAM 位控制。


【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
2020-06-18 linux内核中Kconfig文档的作用
2020-06-18 make menuconfig后加ARCH=arm命令行解释