430X 架构的基本变化是引入了 20 位地址范围,以允许在原始 430 设备上可用的 64K 之外进行寻址。有一组新指令与旧式 16 位指令并行操作 20 位地址。例如
CALL ; takes a 16 bit address
CALLA ; takes a 20 bit address
PUSH ; Push the bottom 16 bits of a register onto the stack
PUSHA ; Push the full 20 bit register
Run Code Online (Sandbox Code Playgroud)
为基于 430 的处理器编译的现有代码将在 430X 处理器的底部 64K 地址空间内运行。在开发工具(IAR 和可能的 Rowley)中,您可以指定一个内存模型,以便在确保代码不跨越 64K 边界的情况下不会生成更长的函数调用和其他 430X 特定指令。