當前位置:編程學習大全網 - 編程軟體 - 匯編語言 db為什麽後面可以加兩個量,詳見問題補充

匯編語言 db為什麽後面可以加兩個量,詳見問題補充

DB定義的,是壹個字節類型的指針,完全沒有容量的概念, 不存在容量的限制,沒有存不下的問題。

數據存儲從指針所指向的地址開始往下分配,需要填多少數據都可以。(當然還有壹個段的大小不能超過64KB的限制)

妳的困惑,是妳強行將高級語言中壹個變量只能存壹個數據、是壹個數據容器的概念直接拿來套用造成的。這樣的概念對於匯編語言來說是錯誤的。

如果妳這樣定義:

XY DB 05H, 43H, 21H, 32H

那麽,內存中數據就這麽分布

地址 數據

XY+0 05

XY+1 43

XY+2 21

XY+3 32

如果妳改成這樣定義:

XZ DW 4305H, 3221H

那麽,內存中數據這麽分布:

XZ+0 05

XZ+1 43

XZ+2 21

XZ+3 32

可以看出,這兩種定義方式,數據在內存的分布是壹模壹樣的。

區別僅僅是變量名的數據類型的屬性不同。

如果妳程序中這樣用數據:

MOV AL, XY

MOV AH, XY+1

結果AX的內容變成4305H

與用指令 MOV AX, XZ 的結果也是壹模壹樣。

在匯編語言中,並不需要為每個數據存儲單元定義壹個名字。

數據是可以直接按地址訪問的。

實際上,經匯編程序翻譯以後,和變量名就變成了直接按地址訪問。

機器指令也只能按地址訪問。

按地址訪問數據時,需要明確數據類型。

定義壹個名字,用名字代表具體的地址值(同時也隱含著數據類型), 是為了讓匯編程序在匯編時,將指令中的變量名替換為地址,減少編程者的人工工作量,便於編寫程序。

  • 上一篇:如何查看機械零件編程答案
  • 下一篇:華攝氏溫度換算攝氏溫度編程
  • copyright 2024編程學習大全網