计算机系统的多级层次结构

 计算机系统的层次结构

计算机系统最底部的两个底层结构

那我们上一篇文章所举的例子来看:(ps:如果还没有看请查收~各个硬件的工作原理-CSDN博客)

第一条指令是二进制机器指令,它被分为了9个微指令 

如下图:

由于传统的机器只能识别二进制指令,而这种指令用来编程是非常不方便的,所以在20世纪50年代出现了符号式的设计语言  -- 汇编语言

本质上跟机器语言没有太大的差别,只是更便于人类理解,依然是属于低级的语言,所以对编程而言也是不方便的.随着慢慢发展出现了很多高级语言(C++,java,python...)

为什么这些叫虚拟机器?是因为这些机器看起来好像可以直接懂高级语言一样,但实际上高级语言需要通过编译器翻译.而且我们写的程序难免会用到操作系统的一些服务,比如说:一些系统调用,所以一般用汇编语言编写的程序通常需要请求操作系统来请求服务,系统调用又称之为"广义指令"

下层是上层的基础,上层是对下层的扩展

三种级别的语言

C/C++就要通过一步编译和一步汇编来生成可执行的程序,当然如果你的程序中调用了其他的库函数,那么在经过汇编之后还要链接的操作,也就是将你写的程序和你调用的程序给链接起来

也有一些语言直接通过编译程序就转化成了机器语言程序

也有一些高级语言不是通过编译程序,而是通过解释程序,把高级语言代码翻译为与之对等的机器语言,很多脚本类语言都是采用这样的机制如:JavaScript Python Shell

编译程序就好像是你直接抄了一篇英语文章,而解释程序就好像同声传译(来一句我翻译一句).

注:编译,汇编,解释程序,可以统称为"翻译程序".

计算机体系结构VS 计算机组成原理

计算机体系结构:如何设计硬件与软件之间的接口(eg:有无乘法指令)

计算机组成原理:如何用硬件实现所定义的接口(eg:如何实现乘法指令)

图中的"透明"----看不见  [计算机的意思跟我们日常生活的透明不同]

某事"公开透明" --- 看得见

如果你觉得有帮助的话,就点点赞呀~ 共勉!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值