Arrays 汇编语言(订单接受者)
我正在努力学习汇编语言 我真的需要帮助在一个数组中存储不同的10个项目 我想建立一个程序,将接受来自10个选项的项目,并将其存储 这10项具有不同的价值 范例 项目1=10$ 项目2=4$ 因此,当用户尝试选择Item1和Item2时,它将显示 两项的总和 如果有人能分享他/她自己的代码,可以存储10个项目和所有项目的总和,我会很高兴。谢谢 这是我的密码:Arrays 汇编语言(订单接受者),arrays,assembly,storage,inventory,Arrays,Assembly,Storage,Inventory,我正在努力学习汇编语言 我真的需要帮助在一个数组中存储不同的10个项目 我想建立一个程序,将接受来自10个选项的项目,并将其存储 这10项具有不同的价值 范例 项目1=10$ 项目2=4$ 因此,当用户尝试选择Item1和Item2时,它将显示 两项的总和 如果有人能分享他/她自己的代码,可以存储10个项目和所有项目的总和,我会很高兴。谢谢 这是我的密码: _start: mov eax,3 ;number bytes to be summed mov ebx,0
_start:
mov eax,3 ;number bytes to be summed
mov ebx,0 ;EBX will store the sum
mov ecx, x ;ECX will point to the current element to be summed
top: add ebx, [ecx]
add ecx,1 ;move pointer to next element
dec eax ;decrement counter
jnz top ;if counter not 0, then loop again
done:
add ebx, '0'
mov [sum], ebx ;done, store result in "sum"
display:
mov edx,1 ;message length
mov ecx, sum ;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
global x
x:
db 2
db 4
db 3
sum:
db 0
我这里的代码确实有问题
由于您已将所有变量定义为字节类型,因此必须将它们作为字节处理!您正在程序中读写dwords
这本来是可以的:
top: add bl, [ecx]
add ecx, 1 ;move pointer to next element
dec eax ;decrement counter
jnz top ;if counter not 0, then loop again
done:
add bl, '0'
mov [sum], bl ;done, store result in "sum"
“我的代码确实有问题。”问题是。。。?
top: add bl, [ecx]
add ecx, 1 ;move pointer to next element
dec eax ;decrement counter
jnz top ;if counter not 0, then loop again
done:
add bl, '0'
mov [sum], bl ;done, store result in "sum"