回 帖 发 新 帖 刷新版面

主题:[讨论]MOV的目的数和源操作数为何不能同时为内存?

MOV的目的数和源操作数为何不能同时为内存?
我觉得是不是,因为CPU不能同时对内存发出读和写指令。

回复列表 (共6个回复)

沙发

我的理解是,
汇编是直接超作cpu的语言,
每一行都是真正直接的指令,而且都与cpu的寄存器有关

板凳

总线的问题吧,与内存通路的线路成本高(因为是外部),而多一条指令就能解决问题,少一半的线,性价比就高了。内存的存取在运算中不占太大的比例啊

3 楼

[quote]我的理解是,
汇编是直接超作cpu的语言,
每一行都是真正直接的指令,而且都与cpu的寄存器有关[/quote]

是不是CPU每从内存中取数据都要先经过寄存器呢?而如果可从内存和内存中直接读写数据不经过寄存器,那是否就可以不用寄存器了?请救以上两个问题.

4 楼

正确的理解应该为:
若两个操作数都在内存,则CPU要有两次访问内存的周期取操作数,指令周期太长了!

5 楼

不是周期,是一个命令的复杂度,就像移位,一位和多位就不是一个操作。

6 楼

这很难说

我来回复

您尚未登录,请登录后再回复。点此登录或注册