3

所以我有一个 TI-84 Plus C Silver Edition。我刚刚开始使用操作码在上面编写汇编程序。我在这里找到了一个很好的参考图表,但想知道如何进行 bcalls,特别是如何将字符打印到屏幕上。看起来调用的十六进制代码是 3 个字节长,但调用需要 2 个字节。那我怎么称呼它?另外,有没有人知道内存位置程序在为我的计算器运行时被加载到其中?我还没有找到它。

4

2 回答 2

2

根据此处的定义: http ://wikiti.brandonw.net/index.php?title=84PCSE:OS: Include_File ,“bcall”是一条RST 28指令,后跟 bcall 的特定编号。所以要打印一个你会做的角色(假设PutC44FB):

rst 28h
dw 44FBh

大概要打印的字符在A寄存器中。

于 2015-11-01T00:46:49.567 回答
1

TIrst 28h用于他们的 bcall,它转换为十六进制为EF. Bcalls 是 2 个字节,但请记住 Z80 和 eZ80 是 little-endian 处理器。如前所述,_PutCis 44FB,所以你必须使用第FB一个,然后是44,使得bcall(_PutC)等价于EFFB44

我认为您使用的 calc 有一个 eZ80。虽然 eZ80 向后兼容 Z80 指令集,但您链接到的表对于 eZ80 来说并不完整。如果你想变得更加疯狂,你可以在这里使用 Zilog 提供的文档,但我必须警告你,如果你对 Z80 组装不太满意,阅读材料会太密集。

于 2015-11-03T14:36:16.717 回答