|
|
|
|
移动端

奥博娱乐:计算机组成原理:计算机的层次与编程语言

本文来源:http://www.133845.com/www_puercn_com/

申博官网下载直营网,令人难以理解的是,这个新成立的单位明明挂着“服务管理”的牌子,出台的规定却似乎显示出他们的服务欠奉,管理无能。员工考评体系发生改变,促使每一个远洋人不得不“跑起来”。2004,也就是十年前笔者刚来北京,彼时北京居民人均可支配收入1.56万元,而2004年一季度,北京全市住宅销售均价为5826元/平方米。尤其纽约现在有较多新房不断推出的背景下,买家还是拥有一定话语权。

投资额在100万美金左右的房产,平均1-3个月就能售出。当房地产价格与居民收入不匹配时会非常危险。在进入“大数据”时代,怎样把服务和管理结合起来,是政府公共服务要实行创新的课题,公共服务的人性化,也是政府执政水平的指标之一,所谓的“服务管理局”,提法上也是先讲“服务”,后讲“管理”的。当然,你要进行实名制的申报登记。

”一些变化显示出端倪。2004,也就是十年前笔者刚来北京,彼时北京居民人均可支配收入1.56万元,而2004年一季度,北京全市住宅销售均价为5826元/平方米。因而,房地产成为中国经济的一大支柱产业。其动作之大,力度之强悍,清扫范围之广,令远洋上下人人无不紧张,最终做出自觉或不自觉的改变。

计算机基础方面的知识,对于一些非科班出身的同学来讲,一直是他们心中的痛,而对于科班出身的同学,很多同学在工作之后,也意识到自身所学知识的不足与欠缺,想回头补补基础知识。

作者:程序员技术之瞳来源:今日头条|2019-09-10 12:58

计算机基础方面的知识,对于一些非科班出身的同学来讲,一直是他们心中的痛,而对于科班出身的同学,很多同学在工作之后,也意识到自身所学知识的不足与欠缺,想回头补补基础知识。关于计算机基础的课程很多,内容繁杂,但无论是相关书籍还是大学课程,都有点脱离工作。特别地,计算机基础知识体系庞杂,想要从零学习或者复习都耗时耗力。

有鉴于此,本系列文章将带你更快的补足编程必备基础知识,涵盖计算机领域三大基础知识:计算机组成原理、操作系统、计算机网络,这些都是大学计算机课程里面最重要的内容。文章对这些内容做了提炼和总结,摒弃了作为程序员不需要掌握的知识。

目的是:

  • 帮助大家形成计算机知识的结构体系
  • 帮助大家理解计算机底层原理
  • 帮助大家在工作实践中借鉴其中的优秀设计

程序翻译与程序解释

计算机是无法直接理解人类语言的,它只认识01010101...这样的比特位,因此,我们需要进行程序翻译或程序解析,把人类语言翻译或解析成计算机所能理解的语言。

那么程序翻译和程序解析这两者之间有什么区别和联系呢?为了理解问题,我们引入两个语言,一个是较为高级的计算机语言——L1,另一个是较为低级的计算机语言——L0,我们接下来会使用这两个语言作为例子来理解什么是程序翻译,什么是程序解析。

程序翻译

假设我们现在使用较为高级的计算机语言L1来进行程序的逻辑描述,也就是说我们使用L1来编写程序,那么这个由L1编写的程序是怎么样执行的呢?当然了,它不是直接执行的,而是在执行的时候生成一个逻辑等价的由低级语言L0组成的程序,这个L0是计算机实际执行的语言,那么由L1生成L0这个过程,我们称之为程序翻译,用于生成L0的工具叫编译器。

计算机组成原理:计算机的层次与编程语言

程序翻译过程

程序解析

同样的,假如我们使用L1来进行程序的逻辑描述,那么这个由L1编写的程序是怎样执行的呢?为了执行L1,我们还需要使用L0实现另外一个程序,这个程序把L1程序作为输入来进行执行,每一句L1程序会在L0所实现的程序里面进行等价的转换,然后执行,这就是程序的解析,其中,使用L0实现的程序叫做解释器。

计算机组成原理:计算机的层次与编程语言

程序解释的过程

简要的总结程序翻译和程序解析:

  1. 对于前面的两个例子而言,计算机执行的指令都是L0
  2. 翻译过程生成新的L0程序,解释过程不生成新的L0程序
  3. 解释过程由L0编写的解释器去解释L1程序

理解了程序翻译和程序解释,我们来看下常见的编程语言,哪些语言是翻译型语言,哪些是解释型语言,如下图:

计算机组成原理:计算机的层次与编程语言

翻译型语言和解释型语言

对于常见的,我们还有Java和C#,它们又属于哪种语言呢?其实,严格的来说,它们既不属于翻译型语言,也不属于解释型语言,它们是属于翻译+解释型语言。

如何理解翻译+解释型语言呢?以Java程序的运行过程为例,Java程序首先会被编译器编译成JVM字节码,然后会通过解释器解释成机器码,从而被计算机执行。

计算机组成原理:计算机的层次与编程语言

计算机的层次与编程语言

按层次来划分计算机系统的话,我们可以划分成七个层次。

计算机组成原理:计算机的层次与编程语言

计算机的层次

下面逐一介绍每一层。

硬件逻辑层:主要由门电路、触发器等逻辑电路组成,属于电子工程的领域,这里就不展开介绍了。

微程序机器层:编程语言主要是微指令集,微指令所组成的微程序直接交由硬件执行,主要是由生产硬件的公司的程序员来编写的。

传统机器层:编程语言主要是CPU指令集(机器指令),和硬件是直接相关的,程序员所用机器指令编写的程序可以交由微程序直接进行解析,而这里提到的指令集,存储在CPU内部,对CPU的运算进行指导和优化,拥有指令集,CPU就可以有效地运行。我们知道,CPU的制造商分为AMD和Intel两大阵营,那么这两大厂商生产的CPU最大的区别是——指令集不同,Intel的CPU所使用的指令集不适合AMD的CPU,同样的,AMD的CPU所使用的指令集也不适合Intel。除了不同厂商以后,同一个厂商也可以生产不同指令集的CPU,即不同架构的CPU使用不同的CPU指令集。

计算机组成原理:计算机的层次与编程语言

微指令、微程序、机器指令的概念

操作系统层:操作系统,一方面,向上提供了简易的操作界面,使得用户能够容易地操作计算机;同时,向下对接了指令系统,管理硬件资源。操作系统对用户程序所使用机器的各种资源进行管理和分配,包括CPU、存储器等等,比如说,当一个用户程序需要运行的时候,首先由操作系统将其加载到内存中,这就需要操作系统首先为其分配内存空间来进行存储。再比如说,某一个程序需要使用某一个输出设备进行结果输出的时候,需要操作系统为其提供该设备的控制权。由此可见,操作系统是在软件和硬件之间的适配层。

汇编语言层:编程语言是汇编语言,汇编语言可以翻译成可直接执行的机器语言,完成这个翻译过程的程序就是汇编器。从这一层开始,它们所使用的编程语言就是人类比较容易理解的语言了。

高级语言层:编程语言就是为广大程序员所接受的高级语言,种类非常多,由几百种,常见的编程语言有Python、Java、C/C++、Golang等。

应用层:计算机针对某种用途而设计的应用,像Word、Excel等。

【编辑推荐】

  1. 2020年什么编程语言最受欢迎,待遇高?
  2. 10万程序员的调查大数据:这14种编程语言就业前景好
  3. PYPL 9 月编程语言排行榜发布,Python 一枝独秀
  4. 编程语言Nim 中文官网现已上线
  5. IEEE 2019编程语言排行榜出炉:趋势、开源、职位需求,Python都是第一
【责任编辑:华轩 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

这就是5G

这就是5G

5G那些事儿
共15章 | armmay

119人订阅学习

16招轻松掌握PPT技巧

16招轻松掌握PPT技巧

GET职场加薪技能
共16章 | 晒书包

371人订阅学习

20个局域网建设改造案例

20个局域网建设改造案例

网络搭建技巧
共20章 | 捷哥CCIE

764人订阅学习

读 书 +更多

JSP应用开发详解(第三版)

本书结合JSP和Servlet的最新规范,从基本的语法和规范入手,以经验为后盾,以实用为目标,以实例为导向,以实践为指导,深入浅出地讲解了JS...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO官微

申博微信支付充值 百家乐手机版登入网址 申博微信支付充值 99真人娱乐成登入 菲律宾申博官方网址 旧版太阳城申博开户
申博管理网登入 申博注册登入 申博官网登录登入 菲律宾太阳娱乐登入 菲律宾太阳网a99.com 菲律宾申博88msc娱乐
申博游戏安卓系统下载 菲律宾申博现金网登入 菲律宾申博娱乐官网 申博代理开户合作登入 申博官网网址登入 申博注册登入