T48C893
rev. a4, 22-jan-028 (82)
3.2 组件 的 marc4 核心
可擦可编程只读存储器
(4 k x 8 位)
零 页
FFFh
7FFh
1FFh
000h
1F0h
1F8h
010h
018h
000h
008h
020h
1E8h
1E0h
SCALL地址
140h
180h
040h
0C0h
008h
$AUTOSLEEP
$RESET
INT0
INT1
INT2
INT3
INT4
INT5
INT6
INT7
1E0h
1C0h
100h
080h
零
页
000h
图示 4. 只读存储器 编排 的 t48c893
这 核心 包含 只读存储器, 内存, alu, 程序 计数器,
内存 地址 寄存器, 操作指南 解码器 和 中断
控制. 这 下列的 sections describe 各自
函数的块 在 更多 detail:
3.2.1 程序 记忆
这 程序 记忆 (可擦可编程只读存储器) 是 编写程序 和
这 应用 程序. 这 可擦可编程只读存储器 是 addressed 用
一个 12-位 宽 程序 计数器, 因此 predefining 一个
最大程序 bank 大小 的 4 kbytes. 这 最低 用户
程序-记忆地址 段 是 带去 向上 用 一个 512
字节 零 页 这个 包含 predefined 开始 地址
为 中断 维护 routines 和 特定的 subroutines
accessible和 单独的 字节 说明 (scall).
这 相应的 记忆 编排 是 显示 在 图示 4.
看-向上 tables 的 constants 能 也 是 使保持 在 只读存储器 和
是 accessed 通过 这 marc4
’
s 建造-在 表格
操作指南.
3.2.2 内存
这 t48c893 包含 256 x 4-位 宽 静态的 随机的
进入记忆 (内存). 它 是 使用 为 这 expression 堆栈,
这 返回 堆栈 和 数据 记忆 为 变量 和 arrays.
这 内存 是 addressed 用 任何 的 这 四 8-位 宽 内存
地址 寄存器 sp, rp, x 和 y.
expression 堆栈
这 4-位 宽 expression 堆栈 是 addressed 和 这
expression 堆栈 pointer (sp). 所有 arithmetic, i/o 和
记忆涉及 行动 引领 它们的 operands 从,
和 返回 它们的 结果 至 这 expression 堆栈. 这
marc4 执行 这 行动 和 这 顶 的 堆栈
items (tos 和 tos
–
1). 这 tos 寄存器 包含 这
顶 元素 的 这 expression 堆栈 和 工作 在 这 一样
方法 作 一个 accumulator. 这个 堆栈 是 也 使用 为 passing
参数 在 subroutines 和 作 一个 scratch 垫子 范围
为 temporary 存储 的 数据.
返回 堆栈
这 12-位 宽 返回 堆栈 是 addressed 用 这 返回
堆栈 pointer (rp). 它 是 使用 为 storing 返回 地址
的 subroutines, 中断 routines 和 为 keeping 循环
index counts. 这 返回 堆栈 能 也 是 使用 作 一个
temporary存储 范围.
这 marc4 操作指南 设置 支持 这 exchange 的 数据
在这 顶 elements 的 这 expression 堆栈 和 这
返回 堆栈. 这 二 stacks 在里面 这 内存 有 一个 用户
definablelocation 和 最大 depth.