汇编语言中的字符串操作与二维数组
1. 字符串操作基础
在汇编语言里,字符串操作是一项关键内容。像 LODSB 、 LODSW 和 LODSD 这类指令,它们的作用是把内存里的数据加载到累加器中。具体而言, LODSB 将一个字节从 ESI 指向的内存位置加载到 AL , LODSW 把一个字加载到 AX , LODSD 则把一个双字加载到 EAX 。 ESI 会依据方向标志(Direction flag)的值进行递增或者递减。
下面是一个数组乘法的示例代码:
TITLE Multiply an Array
INCLUDE Irvine32.inc
data
array DWORD 1,2,3,4,5,6,7,8,9,10
multiplier DWORD 10
code
main PROC
mov esi,OFFSET array
mov edi,esi
mov ecx,LENGTHOF array
Li:
lodsd
mul multiplier
stosd
loop Li
exit
main ENDP
END main
此程序的功能是把一个双字数组的每个元素都乘以一个常量值。 LO
超级会员免费看
订阅专栏 解锁全文
883

被折叠的 条评论
为什么被折叠?



