彙編中的LABEL詳解

2021-09-29 21:21:33 字數 1145 閱讀 4927

label 偽指令可以插入乙個標號,並定義它的大小屬性,但是不為這個標號分配儲存空間。label 中可以使用所有的標準大小屬性,如 byte、word、dword(雙字)、qword(四字) 或 tbyte。

label 常見的用法是,為資料段中定義的下乙個變數提供不同的名稱和大小屬性。如下例所示,在變數 val32 前定義了乙個變數,名稱為 val16 屬性為 word:

.data

val16 label word

val32 dword 12345678h

.code

mov ax,val16 ; ax = 5678h

mov dx,[val16+2] ; dx = 1234h

val16 與 val32 共享同乙個記憶體位置。label 偽指令自身不分配記憶體。

有時需要用兩個較小的整數組成乙個較大的整數,如下例所示,兩個 16 位變數組成乙個 32 位變數並載入到 eax 中:

.data

lon**alue label dword

val1 word 5678h

val2 word 1234h

.code

mov eax,lon**alue ; eax = 12345678h

label的功能是定義變數或標號的型別,而變數或標號的段屬性和偏移屬性由該語句所處的位置確定。

外文名label

格式變數/標號

變數的型別:byte、word、dword、dq、dt

標號的型別:near、far

組合語言

符號定義偽指令——label偽指令

格式:變數/標號 label 型別

變數的型別有:byte、word、dword、dq、dt;

標號的型別有:near、far;

例如:buffer1 label word

buffer2 db 20 dup (0)

通常,緊接著的下一條語句定義的型別與label指定的型別不同。而實際上,buffer1是buffer2的別名,兩者指向記憶體中的同乙個儲存位址。換言之,同一組資料定義了兩種不同的型別,在接受不同資料型別的訪問時,可以指定相應的標號。如接受乙個字型別資料訪問時,使用buffer1;接受位元組型別資料訪問時,使用buffer2。否則因為資料型別不匹配,編譯器編譯時將出現異常。

js中的label語句

工作中很少用到label語句,但是最近在學習 js高階教程設計 中發現裡面關於label語句的介紹,特在此記錄一下。1.語法形式label statement2.例子start for let i 0 i 10 i 3.這個例子中定義的start標籤可以在將來由breake或是continue語句中...

設定GUI中Label的字型大小

做 unity3d gui的時候一定會發現一般都是用gui.skin來控制gui顯示效果的,但是還會發現fontsize只能用於動態字型,當用在label和textarea中的時候顯示的字型是不會改變的 一直保持匯入字型預設大小,我在網上找了很久都沒找到有效的方法,只是通用的方法是做多個不同字型大小...

labgdx中label標籤的使用

labgdx中label標籤的使用 1將hiero軟體產生的.fnt和.png放在asserts資料夾下 2new物件 1 bitmapfont物件,將.fnt和.png檔案關聯起來的橋梁,fnt檔案中含有不同文字的座標資訊,屬性資訊.根據這些資訊便可以在.png中找到對應的小 2 label物件,...