【发布时间】:2013-01-17 14:02:33
【问题描述】:
INCLUDE Irvine32.inc
.data
fullName BYTE "Bob Johnson",0
nameSize = ($ - fullName) - 2
.code
main PROC
mov ECX,nameSize
mov ESI,OFFSET fullName
Sum:
mov EBX,[ESI+ECX]
add EAX,EBX
loop Sum
exit
main ENDP
END main
所以我遇到了一个问题,我只想一次从字符串中读取一个字符并将其存储在 EBX 寄存器中,然后获取该字符的值并在 EAX 中保持运行总和。
使用 8 位无符号算术将字符串字符的所有 ASCII 代码加在一起。溢出被忽略。 最终值是校验和。例如,如果字符串是“Joe”,那么 ASCII 值是 4A、6F、65。总和是 11E。
【问题讨论】:
标签: assembly ascii masm irvine32