用迴圈處理。
找一個暫存器(比如SI)指向array,將SI所指向的單元減一,接著SI加一指向下一個位元組單元。執行100次即可。
程式如下(在masm5.0和Microsoft (R) Overlay Linker Version 3.60環境下除錯透過,利用debug看到正確結果):
dseg segment
array db 10 dup(1,2,3,4,5,6,7,8,9,10);這裡定義的資料是隨意寫的,結果應該是0,1,2,3……
cnt equ $-array;這裡直接寫上100也可以
dseg ends
cseg segment
assume cs:cseg,ds:dseg
begin: mov ax,dseg
mov ds,ax
mov si,offset array
mov cx,cnt
next: dec byte ptr [si]
inc si
loop next
mov ax,4c00h
int 21h
cseg ends
end begin
用迴圈處理。
找一個暫存器(比如SI)指向array,將SI所指向的單元減一,接著SI加一指向下一個位元組單元。執行100次即可。
程式如下(在masm5.0和Microsoft (R) Overlay Linker Version 3.60環境下除錯透過,利用debug看到正確結果):
dseg segment
array db 10 dup(1,2,3,4,5,6,7,8,9,10);這裡定義的資料是隨意寫的,結果應該是0,1,2,3……
cnt equ $-array;這裡直接寫上100也可以
dseg ends
cseg segment
assume cs:cseg,ds:dseg
begin: mov ax,dseg
mov ds,ax
mov si,offset array
mov cx,cnt
next: dec byte ptr [si]
inc si
loop next
mov ax,4c00h
int 21h
cseg ends
end begin