首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >6502指令时钟周期背后的逻辑是什么?

6502指令时钟周期背后的逻辑是什么?
EN

Stack Overflow用户
提问于 2019-12-08 04:59:12
回答 1查看 558关注 0票数 0

以下是6502数据表第10页中需要考虑的一些问题:

http://archive.6502.org/datasheets/rockwell_r650x_r651x.pdf

  • :如果跨越页面边界,那么第10页是什么?
  • ,如果在同一页上发生分支,那么“添加1到N”意味着什么?如果分支发生在不同的页面上,那么添加2到N是什么意思?
  • 确实对其他设备进行读写操作会导致时钟周期的不正常?

<代码>H 110还有其他因素可以影响6502 (更具体地说是NES)的时钟周期吗?H 211F 212

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-09 12:14:05

关于6502机器指令。计算指令地址并将其存储为两个8位字节。当执行地址计算时,例如使用寄存器索引指令,或者对于分支指令的目标地址,可能存在从最不重要字节到最重要字节的内部进位。这就是“跨越页面边界”的意思--“页面”是256个字节。内部进位过程可以处以一个周期的惩罚。

为了看得更清楚,如果你用十六进制编码你的地址,那么地址的下字节是右两位数字。例如,地址$1234十六进制,下字节将包含$34十六进制和上$12。如果您从‘跨越页面边界’分支到或加载或存储的地址,通过将上字节翻转一个,例如地址为1300美元,则会导致循环惩罚。

对于分支指令,如果分支被“取”,则会再增加一个循环,换句话说,满足条件,程序跳转到新位置。因此,如果分支碰巧进入另一个页面,那么将有效地添加两个周期。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59232571

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档