組合語言 偏移位址綜合應用 雙重迴圈實現

2021-08-11 02:24:35 字數 1166 閱讀 8583

db '1.helloworld    '

db '3.stevejobs '

db '4.macbook '

將上述內容從第三個資料開始向後三個都變成大寫,結果如下:

db '1.helloworld '

db '3.stevejobs '

db '4.macbook '

assume cs:code,ds:data

data segment

db '1.helloworld '

db '3.stevejobs '

db '4.macbook '

data ends

stack segment

dw 0,0,0,0,0,0,0,0

dw 0,0,0,0,0,0,0,0

stack ends

code segment

start:

mov ax,stack

mov ss,ax

mov sp,32

mov ax,data

mov ds,ax

mov es,ax

mov cx,4

mov bx,0

mov si,2

upletter:

push cx ;壓棧儲存上一次迴圈資料

push si

mov cx,3

uprow:

mov dl,ds:[bx+si]

and dl,11011111b

mov es:[bx+si],dl

inc si

loop uprow

pop si ;出棧,逆向彈出

《組合語言》實體地址

段位址應該是乙個邏輯概念,從 組合語言 3.5資料段原文中 比如用123b0h 123b9h 這段記憶體空間來存放資料,我們就可以認為123b0h 123b9h這段記憶體是乙個資料段,它的段位址為123bh,長度為10個byte。從這裡看出段位址指的應該是乙個資料段的起始位置,在 彙編無言 2.7實...

組合語言 實體地址

你只要嘗試過飛,日後走路也會仰望天空,因為那是你曾經到過,並渴望回去的地方 今日語句 實體地址 我們知道,cpu訪問記憶體單元時,要給出記憶體單元的位址。所有的記憶體單元構成的儲存空間是乙個一維的線性空間,每乙個記憶體單元在這個空間中都有唯一的位址,我們將這個唯一的位址稱為實體地址。cpu通過位址匯...

組合語言之實體地址

16位結構的cpu的特點 運算器一次最多可以處理16位資料 暫存器的最大寬度是16 暫存器和運算器之間的通路是16位 8086cpu給出實體地址的方法 8086cpu有20位位址匯流排,可以傳送20位位址,也就是1m定址能力,而8086又是16位結構,在內部一次性處理 傳輸 暫時儲存的位址為16位,...