开发应用程序时,是否必须先建立网站进行网络推广?
摘要:做app 需要先做网站吗,网络推广方案策划,视频网站 备案,邢台网最新发布课程链接: 计算机组成_北京大学_中国大学MOOC(慕课) 2 - 1 - 201-设计自己的计算机(14
做app 需要先做网站吗,网络推广方案策划,视频网站 备案,邢台网最新发布课程链接#xff1a; 计算机组成_北京大学_中国大学MOOC(慕课) 2 - 1 - 201-设计自己的计算机#xff08;14‘24’‘#xff09;_哔哩哔哩_bilibili 什么是指令系统体系结构#xff1f;这个问题其实非常简单#xff0c;但要想解释清楚也没有那么容易。我们还是从一个小故事… 课程链接 计算机组成_北京大学_中国大学MOOC(慕课) 2 - 1 - 201-设计自己的计算机14‘24’‘_哔哩哔哩_bilibili 什么是指令系统体系结构这个问题其实非常简单但要想解释清楚也没有那么容易。我们还是从一个小故事开始吧。
有一天有两个小伙伴碰了面发现对方都很愁苦沟通后发现双方都碰到了一些运算上的问题于是两人一拍即合准备一起解决这个问题。怎么解决呢不如一起设计一个计算机吧。那怎么分工呢一个小伙伴说我是软件程序猿我来编写如何运算的软件指令。另一个小伙伴说那正好我是硬件攻城狮我来设计计算机的硬件主要是CPU。
OK, 那我们就分头干活吧 真的就可以这么开始了吗怎么保证软件程序猿写的软件就能在硬件攻城狮设计的硬件上运行起来呢所以他们还得商量商量把共同的接口定义好然后才能分头去设计软件和硬件。
那他们要商量的共同的接口就是指令系统体系结构。
他们面临的计算任务并不复杂所以只需要一个简单的指令系统就可以了。看上去需要一个加法所以先设计一个加法指令另外存储器和寄存器之间的数据传送需要两条指令LOAD和STORE。另外由于CPU是按照PC寄存器来顺序执行指令的有时候我们可能需要跳转到其他位置执行这样的话就还需要一条跳转指令JMP。 这样我们就设计出了一个简单的计算机指令系统能够满足当前所需要进行的运算。
但是这个用英文单词和字母描述的指令并不是计算机能识别的二进制代码因此我们还要做进一步的规定。
我们约定每条指令都是等长的都是2个字节。其中第一个字节的高4位是操作码我们目前支持4种操作所以只用到了其中的2位实际上可以扩展到16个操作。第一个字节的低4位是寄存器号我们约定目前只提供4个寄存器R0~R3,实际上可以扩展到16个寄存器。第二个字节是存储单元地址一共8位所以可以索引256个存储器。 在约定好指令格式以后我们再来看一个可以执行的任务的例子。 基于这样的任务软件程序猿就可以编写出下面的机器语言程序。当然直接编写机器语言程序是非常困难的随着计算机技术的发展我们现在可以通过编写高级语言程序再通过编译器转换成汇编语言程序最后再转换成机器语言程序。 现在我们已经写好了一个程序根据冯·诺依曼计算机存储程序的概念我们把这个程序放到存储器当中。这里仅展示存储器的一个片段即存储器的地址为5~18的存储单元中的内容。 与此同时硬件攻城狮也完成了CPU的设计并将CPU和存储器进行连接构建出了完整的计算机系统。为了便于理解存储器中的内容还是以汇编代码的形式呈现。 此时如果CPU中的PC寄存器已经装入了0000 1000的地址那么接下来的指令执行过程我们已经很熟悉了。 现在我们已经对什么是指令系统体系结构有了初步了解也知道了如何开始着手设计一个属于自己的计算机。下一节我们将分析一些真实的体系结构。
