您的位置:首页 > 理论基础

北大计算机组成原理笔记2.1——为什么要有指令系统

2014-11-14 23:44 731 查看
设计自己的处理器

标题有点大,其实就是从零开始,探讨学习处理器是怎么被设计出来的思想。

问题来了,为什么会有那些不同架构的CPU,然后有不同配套的汇编语言?

计算机由两部分组成,软件和硬件(没有软件的计算机连废铁都不如,哈哈半导体)。



那么硬件工程师要和软件工程师共同沟通并开发我们想要的计算机,沟通需要一个标准,就像谍战人员的密码电报一样,你得“自己人懂自己人的语言”。硬件工程师和软件工程师达成一致,于是这个标准就是—— 指令系统。

起初为了便于人类记忆,于是就把相应指令尽可能的用人类语言的单词简单写法代替,ADD,JMP(jump为便于记忆写成了JMP)

           


实际上,计算机是不认识这些人类字符的。他只能识别两种逻辑——0和1.但是基于这两种逻辑表达形式0和1,利用不同的序列能够衍生出其他丰富的逻辑表达形式。比方说0001表示 ADD 0000表示LOAD等等。

下面是指令的格式,假定我们设计的计算机CPU的指令长度都是2byte(实际上x86就不是指令等长度的)

我们可以假定如下设计理念。



           只要建立好这种对应的字符对应01组合的对应关系,我们就可以很方便的“翻译字符到01组合”。实际上这个过程是汇编语言编译之后得到机器代码。



任何事情真正弄明白都要知道来龙去脉,以上就回答了,blog开头提出的问题。为什么我们需要一套指令系统?
为了更好的协同合作!
----------------------------------------------------------------------------------------------------------------------------------------------
仅作个人笔记用,推荐有心人一起学习交流讨论北大在coursera出的《计算机组成原理》。陆老师讲的很好!
我打算把自己遇到的问题或学到的东东总结出来。仅做个人交流讨论用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: