當前位置:首頁 » 服務存儲 » 語言存儲器操作數
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

語言存儲器操作數

發布時間: 2022-03-30 04:46:13

① 匯編語言存儲器操作數是指什麼

我之前的理解是加上方括弧的,例如【bx】
--這個確實是存儲器操作數。
在數據段定義了result
db
?
在代碼段有inc
result
和mov
result,0.
可是書上寫mov
inc對象有寫存儲器操作數,沒寫可以是變數啊?
變數和存儲器操作數是什麼關系?
--在數據段裡面的東西,都是存儲器操作數。
不屬於存儲器操作數的有:寄存器、立即數。
採納答案,所答非所問。

② 為什麼匯編程序中大部分指令兩操作數不能同時為存儲器操作數

和存儲器有什麼關系?
Intel 公司的設計人員,在設計這類指令的時候,正趕上喝下午茶,回來就忘了。

③ 匯編語言存儲器操作數是指什麼

我之前的理解是加上方括弧的,例如【bx】
--這個確實是存儲器操作數。

在數據段定義了result db ?
在代碼段有inc result 和mov result,0.
可是書上寫mov inc對象有寫存儲器操作數,沒寫可以是變數啊?
變數和存儲器操作數是什麼關系?
--在數據段裡面的東西,都是存儲器操作數。

不屬於存儲器操作數的有:寄存器、立即數。

採納答案,所答非所問。

④ 立即數 寄存器操作數 存儲器操作數

1.操作數作為指令的一部分而直接寫在指令中,這種操作數稱為立即數,這種定址方式也就稱為立即數定址方式。
2.指令所要的操作數已存儲在某寄存器中,或把目標操作數存入寄存器。把在指令中指出所使用寄存器(即:寄存器的助憶符)的定址方式稱為寄存器定址方式。

指令中可以引用的寄存器及其符號名稱如下:

、8位寄存器有:AH、AL、BH、BL、CH、CL、DH和DL等;
、16位寄存器有:AX、BX、CX、DX、SI、DI、SP、BP和段寄存器等;
、32位寄存器有:EAX、EBX、ECX、EDX、ESI、EDI、ESP和EBP等。

剩下那兩個應該和第二個差不都

⑤ 匯編語言里存儲器操作數到底有沒有默認數據類型啊

計算機中的內容就是一些0和1的組合,其本身沒有任何含義。至於類型啊、字母、數字等,都是人為賦予的,或者說怎樣解釋。
教材、老師講的,不可不信,但也不可篤信。關於存儲器操作數的默認數據類型,沒有默認這一說。各種編譯器對數據類型做了一些規定,你按著規定來定義和使用數據就不會出錯。DEBUG是調試軟體,不是編譯器,當然也就沒有數據類型的規定,需要明確指定數據類型。
DEBUG不知道MOV
[SI],5的5是多少位的,8位正確,16位也對,32位也不錯,所以需要明確指定數據類型。而寄存器則不同,寄存器是有固定位數的,只要源操作數不超過它們能夠容納的數據范圍,就不會出錯,如,
MOV
AL,5
MOV
BX,5
MOV
ECX,5
都是正確的。

⑥ 匯編語言存儲器操作數是什麼

對,家方括弧的就是存儲器。存儲器內放的是十六進制的數,一個16進制的數化為2進制數就是4位,【1200H】是佔16位,【BX】是存儲器,BX就是16位寄存器了,BX由8位寄存器BH和BL組成,多看看書就會明白的

⑦ 根據指令代碼的結構,解釋為什麼指令的兩個操作數不能同時為存儲器操作數

我的解答源於對博主水煮魚丸博客的理解/翻譯(網頁鏈接)
解答如下:
這個問題的解釋涉及到對於RAM硬體的理解。RAM只能由兩種工作模式,讀或者寫。當你想把RAM中存的一個byte復制到另一個位置的時候,你必須有一個除了RAM以外的臨時存儲器來存放數據這樣你才可以使RAM實現由讀到寫的切換。
對於程序猿來說要實現從存儲器到存儲器的指令是完全可以的,但是程序猿必須使用更為高級的語言,而這些高級語言在翻譯成為匯編語言之後就是先從存儲器取數據到寄存器,再將數據移動到存儲器。或者,可以擴展RAM控制器,使其擁有這樣一個臨時寄存器,「做而論道」的答案講的較為先進的存儲器應該就是這種情況。

⑧ 匯編語言中怎樣判斷源操作數與目的操作數的定址方式

(1) 源:立即數定址

(2) 源:基址變址定址

(3) 源:基址定址

(4) 源:寄存器間接定址

(5) 源:寄存器定址

計算機中的操作數有三類:立即數(常數)、寄存器操作數、存儲器操作數,所以定址方式就是針對這三類操作數進行的。

立即數和寄存器操作數的定址比較簡單,對應的是立即定址和寄存器定址,比較多的是存儲器定址方式,有直接定址(指令中可以看到內存的地址)、寄存器間接定址(寄存器的內容作為內存的地址),從寄存器間接定址進一步發展就有:相對寄存器定址、基址變址定址和相對基址變址定址。

順序定址方式:

由於指令地址在內存中按順序安排,當執行一段程序時,通常是一條指令接一條指令地順序進行。也就是說,從存儲器取出第1條指令,然後執行這條指令;接著從存儲器取出第2條指令,再執行第二條指令;接著再取出第3條指令。

這種程序順序執行的過程,稱為指令的順序定址方式。為此,必須使用程序計數器(又稱指令計數器)PC來計數指令的順序號,該順序號就是指令在內存中的地址。

以上內容參考:網路-定址方式

⑨ 請問匯編語言中的存儲器操作數是什麼

指令的操作數有四種:
1、立即數,即常數,直接在匯編指令中給出的二進制、十進制、8進制、16進制
或者ascii碼字元等
2、寄存器,操作數存放在寄存器中。
3、存儲器,操作數放在內存單元中,可以是位元組、字、雙字等等。
4、埠,操作數來自外設埠。通過in、out指令操作。

⑩ 急求答復!匯編語言中,為什麼指令(如轉移指令MOV)中的兩個操作數不能同時為存儲器操作數!

呵呵,匯編語言中所具有的指令,都是CPU的設計人員,設計出來的。

用匯編語言編寫程序,就要學會匯編語言,它這裡面有什麼指令,我們就用什麼指令。沒有的,就不用。

如果,非得要用它所不具備的指令功能,只有自己設計一個 CPU 了。