一. 機器語言--->組合語言--->c語言之間的關係
1. 機器語言是能識別0和1.
比如加號+: 對應的機器語言是: 0100 0000
-: 對應的機器語言是: 0100 1000
*: 對應的機器語言是: 1111 0111 1110 0000
/: 對應的機器語言是: 1111 0111 1111 0000
機器語言難以記憶, 做任何的運算都需要記住大量的01. 因此在機器語言的基礎上發展出來了組合語言
2. 組合語言
相對機器語言來說, 組合語言更簡單了, 他使用符號來代表對應的指令
比如 加法 +: 組合語言是 inc eax, 對應的機器語言是 0100 0000
_: 組合語言是 dec eax, 對應的機器語言是: 0100 1000
*: 組合語言是 mul eax, 對應的機器語言是: 1111 0111 1110 0000
/: 組合語言是 div eax, 對應的機器語言是: 1111 0111 1111 0000
組合語言相對於機器語言來說, 記憶起來方便多了. 那麼組合語言, 機器能識別麼? 機器肯定是不能直接識別 inc eax是加法的. dec eax是減法. 這就需要編譯器, 將組合語言解析成機器可以識別的0和1
所以, 如果想學好組合語言, 就需要記住他裡面各種符號代表的是什麼意思.
3. 高階語言
組合語言相對機器語言已經簡單的多了, 但是, 他依然不符合我們的日常生活習慣. 我們的習慣是, 加法用+, 減法用- . 那麼隨著發展, 就出現了c語言, c語言就稱為高階語言
比如: 同樣是加法 在c語言中表示就是 +
這是符合我們人類思維方式的. 那麼問題來了, 計算機怎麼能認識我們寫的 + - * /呢? 計算機肯定不認識, 所以又有了編譯器, 編譯器將 +-*/轉換成了0和1, 交給機器來執行.
由此可見, 並不是語言高階了,而是編譯器更高階了. 編譯器越強大, **寫的越簡單, 越符合人類的習慣
a
彙編(一)組合語言簡介
本系列將簡單介紹組合語言的基礎知識,目的是為編譯原理課程打下基礎,因此涉及的內容相對淺顯,不作過高要求。本篇將對組合語言進行簡單介紹,分析組合語言的特點並熟悉計算機的軟硬體系統及暫存器組。組合語言vs高階程式語言 1 組合語言的通用性 可移植性較差。高階語言可以在多種計算機上編譯後執行。2 組合語言...
一 藍芽概述 1 0 總體概述
藍芽無線技術是一種短距離無線通訊系統,目的是取消連線在主電子裝置與外設之間的電線。作為乙個重度強迫症病患者,想想家裡的電腦各裝置之間不用電線連著,會感覺多麼的舒暢 藍芽無線技術的主要特點是 健壯性 抗干擾 低功耗 低成本。核心規範中的一些技術是可選的,意思是,各個產商實現的藍芽晶元所支援的功能可能會...
彙編基礎一
第乙個問題 資料存在 1.絕大部分機器指令都是進行資料處理的指令,處理大致可分為3類 讀取 寫入 運算。在機器指令這一層來講,並不關心資料的值的多少,而關心指令執行前的一刻,它將要處理的資料所在的位置。指令在執行前,所要處理的資料可以在3個地方 cpu內部 記憶體 埠。在組合語言中如何表達資料的位置...