美文网首页
计算机组成原理-02-相关背景(二)

计算机组成原理-02-相关背景(二)

作者: wuyou1998 | 来源:发表于2021-02-24 12:52 被阅读0次

    计算机的编程语言

    翻译型语言:C/C++、Objective-C、Golang

    解释型语言:Python、Php、JavaScript

    翻译+解释型语言:Java、C#

    程序翻译和程序解释

    计算机只能理解二进制这样的比特位,无法理解人类的语言,所以需要做语言之间的转换。

    假设现在有高级的程序语言A,和低级的程序语言B(B能被计算机直接执行)

    程序翻译

    我们用A编写的代码会先生成B语言代码,再交由计算机执行。

    将A生成B的工具叫编译器,生成的过程叫程序翻译

    image-20210222233226440

    程序解析

    我们使用B语言实现了一个程序,这个程序接收A语言作为输入,然后将A语言进行等价的逻辑转换成B语言,再执行。

    这个转换的过程叫程序解释,使用B语言编写的程序叫解释器

    image-20210222233239722
    总结

    计算机执行的指令都是低级语言B

    翻译过程生成新的B程序,解释过程不生成新的B程序

    解释的过程是拿B编写的解释器来解释A程序


    计算机的层次

    计算机的层次一般如下图:

    image-20210222233310696

    硬件逻辑层

    门、触发器等逻辑电路组成
    
    属于电子工程的领域
    

    微程序机器层

    编程语言是微指令集
    
    微指令所组成的微程序直接交由硬件执行
    

    传统机器层

    编程语言是CPU指令集(机器指令)
    
    编程语言和硬件是直接相关
    
    不同架构的CPU使用不同的CPU指令集
    
    机器指令 = 微程序 > 微指令
    一条机器指令对应一个微程序
    
    一个微程序对应一组微指令    
    

    操作系统层

    操作系统层是在软件和硬件之间的适配层
    
    向上提供了简易的操作界面    
    
    向下对接了指令系统,管理硬件资源
    

    汇编语言层

    编程语言是汇编语言
    
    汇编语言可以翻译成可直接执行的机器语言(机器指令)
    
    完成翻译的过程的程序就是汇编器
    

    高级语言层

    编程语言为广大程序员所接受的高级语言
    
    高级语言的类别非常多,常见的高级语言有:Python、Java、C/C++、Golang等
    

    应用层

    满足计算机针对某种用途而专门设计的软件,如XCode
    

    计算机的速度单位

    容量单位

    在物理层面,高低电平记录信息,理论上只认识0/1两种状态,0/1称为bit(比特位)

    0/1能够表示的内容太少了,需要更大的容量表示方法, 字节:1Byte=8bits

    image-20210222231402380

    速度单位

    网络速度:Mbps ==> M bit per second

    100Mbps = 100 / 8 = 12.5 MB

    CPU频率

    CPU的速度一般体现为CPU的时钟频率

    CPU的时钟频率的单位一般是赫兹(Hz,秒分之一,每秒中的周期性变动重复次数的计量)

    主流CPU的时钟频率都在2GHz以上


    计算机的字符和编码集

    ASCII码

    使用7个bits就可以完全表示ASCII码

    包含95个可打印字符,33个不可打印字符(包括控制字符),95 + 33 = 128 = 2^7

    由于很多应用或者国家中的符号ASCII码都无法表示,于是对其进行扩充,7bits => 8bits

    Extended ASCII码

    常见数学运算符,带音标的欧洲字符,其他常用符、表格符等。

    世界上有很多语言体系,ASCII无法胜任字符编码国际化的任务。

    中文编码集

    GB2312

    《信息交换用汉字编码字符集——基本集》

    一共收录了 7445 个字符,包括 6763 个汉字和 682 个其它符号

    GBK

    《汉字内码扩展规范》

    向下兼容GB2312,向上支持国际ISO标准,收录了21003个汉字,支持全部中日韩汉字

    兼容全球的字符集:Unicode

    Unicode:统一码、万国码、单一码

    Unicode定义了世界通用的符号集,UTF-*实现了编码

    UTF-8以字节为单位对Unicode进行编码

    Windows系统默认使用GBK编码,编程推荐使用UTF-8编码。

    相关文章

      网友评论

          本文标题:计算机组成原理-02-相关背景(二)

          本文链接:https://www.haomeiwen.com/subject/cjcsfltx.html