Assembly彙編
Assembly彙編教學
Assembly - 什麼是彙編語言
Assembly 環境設置
Assembly 基本語法
Assembly 內存段
Assembly 寄存器
Assembly 系統調用
Assembly 尋址模式和MOV指令
Assembly 變量聲明
Assembly 常量
Assembly 算術指令
Assembly 邏輯指令
Assembly 條件
Assembly 循環
Assembly 數字
Assembly彙編 字符串處理
Assembly彙編 MOVS指令
Assembly彙編 LODS指令
Assembly彙編 STOS指令
Assembly彙編 CMPS指令
Assembly彙編 SCAS指令
Assembly彙編 數組
Assembly彙編 過程
Assembly彙編 遞歸
Assembly彙編 宏
Assembly彙編 文件管理
Assembly彙編 內存管理
Assembly彙編 MOVS指令
MOVS指令是用來複制一個數據項(字節,字或雙字)從源字符串到目標字符串。源字符串指出由DS:SI和ES:DI指向目標字符串。
下面的例子解釋了這個概念:
section .text global _start ;must be declared for using gcc
_start: ;tell linker entry yiibai
mov ecx, len
mov esi, s1
mov edi, s2
cld
rep movsb
mov edx,20 ;message length
mov ecx,s2 ;message to write
mov ebx,1 ;file descriptor (stdout) mov eax,4 ;system call number (sys_write) int 0x80 ;call kernel
mov eax,1 ;system call number (sys_exit) int 0x80 ;call kernel
section .data
s1 db 'Hello, world!',0 ;string 1 len equ $-s1
section .bss
s2 resb 20 ;destination
上面的代碼編譯和執行時,它會產生以下結果:
Hello, world!