首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 单片机 >

一个CPU取指令的有关问题

2012-03-12 
一个CPU取指令的问题见以前有人提过,不过看了回答不太信服,希望能有比较肯定的答复。问题描述如下:内存地址

一个CPU取指令的问题
见以前有人提过,不过看了回答不太信服,希望能有比较肯定的答复。问题描述如下:

  内存地址空间上存了一堆二进制数据,有的是数据有的是地址,CS:IP从内存上去取指令,一次取一条指令出来放入缓存里然后CPU执行。问题是CS:IP是怎么取指令的,因为每条指令的长度是不一样的,CPU怎么知道要取两个字节的还是三个字节的呢

[解决办法]
指令是由操作码和地址码组成的,操作码告诉机器执行什么动作。CS:IP从内存上取操作码或地址码,不是取一条指令来执行,然后IP自动+1,指向下一地址。每条指令功能不同,长度也不同,当取操作码时,机器根据操作码来判断多少字节的指令。
[解决办法]
看看 cpu 的设计/工作原理,指令编码格式

深入理解计算机系统 有讲
[解决办法]
每条指令功能不同,长度也不同,当取操作码时,机器根据操作码来判断多少字节的指令。

热点排行