在 Assembly 中循环遍历字符串的字符
Loop through character of a string in Assembly
如果我有一个字符串列表,我如何遍历每个字符串的每个字符?说一个列表 data
data db "00000123", NULL, "00000213"
如何访问每个成员?我知道每个字符串的长度都是 9 的恒定长度,并且我知道对于普通类型它会是 byte[data+rsi]
其中 rsi 是我的计数器,但是当字符串在播放时它有什么作用?
; loop
; get character from string
; check if character is end
; if yes then jump end
; do stuff with char
; end
在汇编语言文件中连续写入的数据在内存中也是连续的,因此 data
将指向 '0' (0x30),data+7
将指向 '3' (0x33 ), 中间的位置依次指向对应的字符
如果我有一个字符串列表,我如何遍历每个字符串的每个字符?说一个列表 data
data db "00000123", NULL, "00000213"
如何访问每个成员?我知道每个字符串的长度都是 9 的恒定长度,并且我知道对于普通类型它会是 byte[data+rsi]
其中 rsi 是我的计数器,但是当字符串在播放时它有什么作用?
; loop
; get character from string
; check if character is end
; if yes then jump end
; do stuff with char
; end
在汇编语言文件中连续写入的数据在内存中也是连续的,因此 data
将指向 '0' (0x30),data+7
将指向 '3' (0x33 ), 中间的位置依次指向对应的字符