亚洲天堂av网_久久精品欧美一区二区三区不卡_亚洲欧美一级_欧美成人合集magnet

知名百科  > 所屬分類  >  百科詞條   

機器語言

機器語言(機器語言)是用數字形式表示的機器基本指令集,還是用符號操作碼表示的基本指令集。一般來說,它由機器可以執行的所有指令和它操作的數據組成。其功能可以通過相應計算機的基本指令集來實現(也稱作指令系統)描述一下,其中每條指令都會指導計算機執行一個基本操作。包括數據處理操作(如算術運算、邏輯運算、字符處理等),控制操作(如判斷、轉移、中斷、改變機器狀態等)和傳輸操作(如輸入、輸出、數據移動等)在計算機中,實現操作的指令和被操作的對象要用二進制代碼的形式表示,指令由操作碼和地址碼兩部分組成。操作碼表示要實現的基本操作,地址表示要實現的對象在計算機中的存儲位置,要實現的對象可以是整數、實數、布爾值、字符串等。因為它們都是以二進制數字序列的形式存儲在計算機中,為了區分它們的類型,通常在操作碼中進行設置“標志”字段來加以標識。這不同于在高級語言中使用類型描述來標識對象的類型機器語言的主要特點是與具體機器相關,運行效率高于高級語言,但用戶使用起來比較困難,繁瑣,耗時,容易出錯。

機器語言機器語言

目錄

語言指令 編輯本段

機器語言指令是一種二進制代碼,由操作碼和操作數組成。操作碼指定指令的操作,操作碼是指令中的關鍵字,不能默認。操作數表示指令的操作數。計算機指令格式與機器字長、記憶的容量與教學的功能有很大關系。從便于程序設計、增加基本操作的并行性、從提高說明書功能的角度來看,說明書應該包含多種信息。但在某些指令中,有些信息可能是無用的,會浪費指令占用的存儲空間,增加訪問次數,影響速度。因此,如何合理、科學地設計指令格式,使指令既能給出足夠的信息,又能使其長度盡可能與機器的字長相匹配,從而節省存儲空間,縮短取值時間,提高機器性能,是一個重要的問題。

計算機通過執行指令來處理各種數據。指出數據的來源、在操作結果和操作執行的地方,指令必須包含以下信息:

1)操作碼。它規定了操作的性質和功能。一臺計算機可能有幾十到幾百條指令,每條指令都有相應的操作碼計算機可以通過識別操作碼來完成不同的操作。

2)操作數的地址。CPU可以通過這個地址獲得所需的操作數。

3)操作結果的存儲地址。將操作數處理的結果保存在此地址中,以便重復使用。

4)下條指令的地址。執行程序時,大部分指令都是按順序從主存中取出來執行的,只有遇到分支指令時,程序的執行順序才會改變。為了減少指令的長度,可以使用程序計數器(程序計數器,個人電腦)存放指令地址。每次執行一條指令,PC機的指令地址自動為1(讓這條指令只占用一個主存單元),指示要執行的下一條指令的地址。當遇到執行分支指令時,用分支地址修改PC的內容。因為使用PC,所以不需要在指令中明確給出下一條要執行的指令的地址。

一條指令實際上包括兩種信息,即操作碼和地址碼。操作碼(行動代號,行動代號,行動代號,行動代號,行動代號,行動代號,行動代號,行動代號,行動代號,行動代號,行動代號,行動代號,行動代號,行動代號,行動代號,行動代號,行動代號,行動代號,行動代號)用于表示指令要完成的操作(如加、減、乘、除、數據傳送等)它的長度取決于指令系統中指令的數量。地址碼用來描述指令的操作對象,要么直接給出操作數,要么表示操作數的內存地址或寄存器地址(即寄存器名)

指令包括兩部分操作碼字段和地址字段。根據地址域涉及的地址數量,常見的指令格式如下。

①三地址指令:通用地址域中的A1、A2分別確定第一和第二、第二個操作數地址A3決定結果地址。下一條指令的地址通常由程序計數器按順序給出。

②二地址指令:在地址域中,A1確定第一個操作數地址,A2同時確定第二個操作數地址和結果地址。

③單地址指令:地址域中A 確定第一個操作數的地址。固定使用寄存器存儲第二個操作數和運算結果。因此它們的地址隱含在指令中。

④零地址指令:在棧式計算機中,操作數一般存儲在下推到棧頂的兩個單元中,結果放在棧頂,地址都是隱藏的,所以大多數指令只有操作碼,沒有地址字段。

⑤可變地址號指令:地址字段中包含的地址數量因操作定義而異。例如,一些計算機的指令中的地址數量少則 0,多則6。

技術應用 編輯本段

指令是機器語言中的語句,是一組有意義的二進制代碼。各種計算機公司設計和生產的計算機指令的數量和功能、指令格式、尋址方式、數據格式不同。從計算機的發展過程中可以看出,由于計算機的基礎硬件發展很快,計算機更新換代很快,所以存在一個軟件如何跟上硬件的問題。一臺新機推出交付,只有少量的系統軟件(如操作系統等)可以提交給用戶,大量的軟件是不斷豐富的,尤其是應用,有相當一部分是用戶在使用機器時不斷產生的。為了緩解原應用程序不能 盡管各計算機公司生產的同一系列計算機的硬件實現方法可能有所不同,但指令系統、數據格式、I/o系統等保持不變,所以軟件完全兼容。在開發該系列計算機的新型號時,雖然指令系統可以大幅度擴展,但仍然保留了原有的所有指令,使軟件向上兼容,即舊型號上的軟件無需修改就可以在新機上運行。

說到這里,大家都明白為什么電腦是電腦,電腦是電腦了再聰明,本質也不過是這些二進制代碼運算的結果。然而,二進制代碼太難用了,所以后來基于它開發了匯編語言,但匯編仍然不能用看起來并不直觀,所以最終出現了一種用于現代編程的高級語言。這是計算機編程語言的發展。有了編程語言,就假設這些機器可以被我使用。It 實際上沒那么簡單。首先,每做一件事都要重復很多操作程序,工作量很大。其次,我們都看到了,使用計算機的人大多不是計算機專業的,更不要說編程了,要抵制復雜的操作步驟。所以我們也需要一個操作系統,把復雜的操作留給自己,把簡單的操作呈現給用戶。

機器語言程序兼容性。機器語言是由硬件實現的機器指令。要實現用機器語言編寫的程序的兼容性,對計算機體系結構有非常嚴格的要求需要兼容的兩臺電腦的架構和操作系統的用戶程序界面要完全一樣;即使略有不同,也可以通過軟件仿真或硬件仿真實現兼容。但是,這些方法會明顯降低用戶程序的運行速度。

產品缺點 編輯本段

1.大量瑣碎的細節束縛了程序員,使他們無法有更多的時間和精力從事創造性的工作,執行對他們更重要的任務。比如保證程序的正確性、高效性。

2.程序員不僅要掌握程序設計的全局,還要深入到每一個部分,直到實現細節即使是智力超群的程序員,也經常會忽略一件事,反復出錯,所以編譯出來的程序可靠性差,開發周期長。

3.因為用機器語言編程的思維和表達與人有很大不同 的習慣,只有經過長期訓練的程序員才能勝任,這就使得編程有高有低。

4.因為它的書面形式充滿了'密'代碼,所以可讀性差,不便于交流和合作。

5.因為它嚴重依賴于特定的計算機,所以不具有可移植性和可重用性。

弱通用性 編輯本段

各種計算機公司設計和生產的計算機指令的數量和功能、指令格式、尋址方式、數據格式不一樣,即使是一些常用的基本指令,比如算術和邏輯運算指令、轉賬指令等等也不一樣。所以,雖然各種類型的計算機的高級語言基本相同,但是把高級語言程序編譯成機器語言后,差別也很大。所以用機器語言表達的程序移植到其他機器上幾乎是不可能的。從計算機的發展過程中看到,由于計算機的基礎硬件發展很快,計算機的更新換代很快,所以就存在一個軟件如何跟上的問題。

附件列表


0

詞條內容僅供參考,如果您需要解決具體問題
(尤其在法律、醫學等領域),建議您咨詢相關領域專業人士。

如果您認為本詞條還有待完善,請 編輯

上一篇 HTML組件    下一篇 程序計數器

同義詞

暫無同義詞
主站蜘蛛池模板: 旬阳县| 平原县| 玉溪市| 弥勒县| 永和县| 休宁县| 合江县| 庆云县| 榆林市| 剑河县| 汉中市| 闽侯县| 绵竹市| 望江县| 阳泉市| 永济市| 二手房| 芦溪县| 牟定县| 博爱县| 自治县| 边坝县| 星座| 平武县| 铁力市| 迁西县| 息烽县| 磴口县| 平塘县| 四川省| 仪陇县| 龙南县| 白城市| 新兴县| 左贡县| 静安区| 敖汉旗| 滨州市| 赤水市| 青浦区| 河池市|