機器碼 指令 彙編語言 的關係

機器碼

一組特定硬件(不光是計算機,手機、嵌入式系統等)可以執行的代碼,它是由0和1組成的二進制序列。架構

不一樣的硬件平臺,執行同一個操做,對應的機器碼可能不一樣class

指令

因爲機器碼是有0和1組成的二進制序列,可讀性實在太差,因而人們發明了指令。硬件

指令就是把機器碼中特定的0和1序列,簡化成對應的指令(通常爲英文簡寫,如mov,inc等),可讀性稍好二進制

因爲 不一樣的硬件平臺,執行同一個操做,對應的機器碼可能不一樣,因此 不一樣的硬件平臺的同一種指令(好比mov),對應的機器碼也可能不一樣。英文

指令集

不一樣的硬件平臺,各自支持的指令,是有差異的。所以每一個平臺所支持的指令,稱之爲對應平臺的指令集。 如常見的計算機

  • x86指令集,對應的是x86架構的平臺
  • ARM指令集,對應的是ARM架構的平臺

彙編語言

因爲 指令 的可讀性仍是太差,因而人們又發明了彙編語言。語言

在彙編語言中,用助記符(Mnemonics)代替機器指令的操做碼,用地址符號(Symbol)或標號(Label) 代替指令或操做數的地址di

在不一樣的硬件平臺,彙編語言對應着不一樣的機器語言指令集,經過彙編過程轉換成機器指令。廣泛地說,特定的彙編語言和特定的機器語言指令集是一一對應的,不一樣平臺之間不可直接移植。嵌入式

三者關係

簡單理解就是data

  • 每一種硬件平臺對應一種機器碼
  • 每一種機器碼對應一套指令集
  • 每一套指令集對應一種彙編語言
相關文章
相關標籤/搜索