📄 copy.ys
字号:
.pos 0init: irmovl Stack, %esp irmovl Stack, %ebp jmp Main# Source blocksrc: .long 0x00a .long 0x0b0 .long 0xc00# Destination blockdest: .long 0x111 .long 0x222 .long 0x333Main: irmovl $3, %eax pushl %eax irmovl dest, %edx pushl %edx irmovl src, %esi pushl %esi call copy_block haltcopy_block: pushl %ebp rrmovl %esp, %ebp mrmovl 16(%ebp), %ecx #len mrmovl 12(%ebp), %edx #dst mrmovl 8(%ebp), %ebx #src xorl %eax, %eax #result xorl %esi, %esi #valLoop: andl %ecx, %ecx jle DONE mrmovl (%ebx), %esi irmovl $4, %edi addl %edi, %ebx #*src++ rmmovl %esi, (%edx) addl %edi, %edx xorl %esi, %eax irmovl $1, %edi subl %edi, %ecx jmp LoopDONE: rrmovl %ebp, %esp popl %ebp ret .pos 0x100Stack:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -