利用循環復制內存中的數據(低效版本)


簡介 :

將內存地址為 FFFF:0000 - FFFF:000F 的數據復制到內存地址為 0000:0200 - 0000:020F 的空間中

代碼 :

assume cs:code

; 將內存地址為 FFFF:0000 - FFFF:000F 的數據復制到內存地址為 0000:0200 - 0000:020F 的空間中
; 注意 : 
;   為了能讓偏移地址復用 , 需要將目標地址基址和偏移地址進行調整
;   調整為 : 0020:0000 - 0020:000F

code segment

    start:
        ; 設置數據段寄存器
        ;mov ax, 0FFFFH
        ;mov ds, ax
        ; 設置 bx , (數據偏移地址)
        ;mov bx, 0
        ; 設置循環初始條件 (設置循環次數)
        mov cx, 0008H
        
        myloop:
            mov ax, 0FFFFH
            mov ds, ax
            mov dx, [bx] ; 將內存中的數據讀取到 dx 寄存器中
            mov ax, 0020H
            mov ds, ax
            mov [bx], dx
            add bx, 00002H
            loop myloop

    finish:
        mov ax, 4C00H
        int 21H

code ends

end start

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容