日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

微机原理和计算机组成原理一样吗_计算机组成原理:计算机的层次与编程语言...

發布時間:2025/3/15 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微机原理和计算机组成原理一样吗_计算机组成原理:计算机的层次与编程语言... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

計算機基礎方面的知識,對于一些非科班出身的同學來講,一直是他們心中的痛,而對于科班出身的同學,很多同學在工作之后,也意識到自身所學知識的不足與欠缺,想回頭補補基礎知識。關于計算機基礎的課程很多,內容繁雜,但無論是相關書籍還是大學課程,都有點脫離工作。特別地,計算機基礎知識體系龐雜,想要從零學習或者復習都耗時耗力。

有鑒于此,本系列文章將帶你更快的補足編程必備基礎知識,涵蓋計算機領域三大基礎知識:計算機組成原理、操作系統、計算機網絡,這些都是大學計算機課程里面最重要的內容。文章對這些內容做了提煉和總結,摒棄了作為程序員不需要掌握的知識。

目的是:

  • 幫助大家形成計算機知識的結構體系
  • 幫助大家理解計算機底層原理
  • 幫助大家在工作實踐中借鑒其中的優秀設計

本篇是計算機組成原理之計算機的層次與編程語言。

歷史好文:

計算機組成原理:計算機的發展歷史

計算機組成原理:計算機的分類

計算機組成原理:計算機的體系與結構

歡迎關注、轉發、收藏、評論

程序翻譯與程序解釋

計算機是無法直接理解人類語言的,它只認識01010101...這樣的比特位,因此,我們需要進行程序翻譯或程序解析,把人類語言翻譯或解析成計算機所能理解的語言。

那么程序翻譯和程序解析這兩者之間有什么區別和聯系呢?為了理解問題,我們引入兩個語言,一個是較為高級的計算機語言——L1,另一個是較為低級的計算機語言——L0,我們接下來會使用這兩個語言作為例子來理解什么是程序翻譯,什么是程序解析。

程序翻譯

假設我們現在使用較為高級的計算機語言L1來進行程序的邏輯描述,也就是說我們使用L1來編寫程序,那么這個由L1編寫的程序是怎么樣執行的呢?當然了,它不是直接執行的,而是在執行的時候生成一個邏輯等價的由低級語言L0組成的程序,這個L0是計算機實際執行的語言,那么由L1生成L0這個過程,我們稱之為程序翻譯,用于生成L0的工具叫編譯器。

程序翻譯過程

程序解析

同樣的,假如我們使用L1來進行程序的邏輯描述,那么這個由L1編寫的程序是怎樣執行的呢?為了執行L1,我們還需要使用L0實現另外一個程序,這個程序把L1程序作為輸入來進行執行,每一句L1程序會在L0所實現的程序里面進行等價的轉換,然后執行,這就是程序的解析,其中,使用L0實現的程序叫做解釋器。

程序解釋的過程

簡要的總結程序翻譯和程序解析:

  • 對于前面的兩個例子而言,計算機執行的指令都是L0
  • 翻譯過程生成新的L0程序,解釋過程不生成新的L0程序
  • 解釋過程由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等。

    創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

    總結

    以上是生活随笔為你收集整理的微机原理和计算机组成原理一样吗_计算机组成原理:计算机的层次与编程语言...的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。