面向機器語言檢視原始碼討論檢視歷史
面向機器語言 |
面向機器語言是為特定的計算機或一類計算機而設計的程序設計語言。這種語言保留了機器語言的外形,即由操作碼和地址碼組成指令這個外形,但面向機器語言的語言是用符號形式而不用機器代碼形式。這種語言能讓使用者擺脫計算機的一些純事物性的細節問題(如無需硬記機器指令代碼、擺脫了二-十進制轉換問題和分配內存問題等),而專心考慮程序間的內在聯繫。這類語言的代表是匯編語言。
簡介
機器語言是一種cpu指令系統,也稱為cpu的機器語言,它是cpu可以識別的一組由0和1序列構成的指令碼。用機器語言編寫程序,就是從所使用的cpu的指令系統中挑選合適的指令,組成一個指令序列。這種程序可以被機器直接理解並執行,速度很快,但由於它們不直觀、難記、難以理解、不易査錯、開發周期長,所以,現在只有專業人員在編制對於執行速度有很高要求的程序時才採用。為了減輕編程者的勞動強度,人們使用一些用於幫助記憶的符號來代替機器語言中的0、 1指令,使得編程效率和質量都有了很大的提高。由這些助記符組成的指令系統,稱為匯編語言。匯編語言指令與機器語言指令基本上是一一對應的。因為這些助記符號不能被機器直接識別,所以匯編語言程序必須被編譯成機器語言程序才能被機器理解和執行。編譯之前的程序被稱為「源程序」,編譯之後的程序被稱為「目標程序」。
評價
每種計算機都有自己獨特的機器指令,比如,某種型號的計算機用8位二進制信息10001010表示加法指令,用00010011表示減法指令,等等。這些指令的執行由計算機的線路來保證,計算機在設計之初,先就要確定好每一條指令對應的線路邏輯操作。計算機處理信息的早期語言是所謂的機器語言,使用機器語言進行程序設計需要面向機器來編寫代碼,即需要針對不同的機器編寫諸如01011100這樣的指令序列。用機器語言進行程序設計是一項累人的工作,代碼難以閱讀和理解,一個簡單的任務往往蘊含着編寫大量的代碼,而且同樣的任務需要針對不同型號的計算機分別進行編寫指令,因為一種型號的計算機用10001010表示加法指令,而另一種型號的計算機可能用11110000表示加法指令。因此,使用機器語言編程也稱為面向機器編程。20世紀50年代出現了匯編語言,在編寫指令時,用一些簡單的容易記憶的符號代替二進制指令,但匯編語言仍是面向機器語言,需針對小同的機器編寫不同的代碼。習慣上稱機器語言、匯編語言是低級語言。[1]