汇编语言求s=1+2*3+3*4+4*5+5*6+6*7+7*8+8*9+9*10
答案:1 悬赏:30 手机版
解决时间 2021-01-15 03:55
- 提问者网友:自食苦果
- 2021-01-14 17:55
汇编语言求s=1+2*3+3*4+4*5+5*6+6*7+7*8+8*9+9*10
最佳答案
- 五星知识达人网友:洒脱疯子
- 2021-01-14 19:07
data segment
d1 db 2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10
d2 db 0
data ends
code segment
assume cs:code,ds:data,es:data
start
lea si, d1
mov ax,1
mov cx, ($d2 - $d1)/2 ;(或 (offset d2 - offset d1)/2) (或 (len d1)/2)
L1:
push ax
lodsb
mul byte ptr [si]
inc si
pop bx
add ax,bx
loop L1
code ends
end start
这里面cx的长度获得,我手头没有环境,多年不玩这个了,16位和32位的宏汇编里面许多用法记不得了,大概就这几种方法吧,第二个肯定可以用的,你自己试试吧。
d1 db 2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10
d2 db 0
data ends
code segment
assume cs:code,ds:data,es:data
start
lea si, d1
mov ax,1
mov cx, ($d2 - $d1)/2 ;(或 (offset d2 - offset d1)/2) (或 (len d1)/2)
L1:
push ax
lodsb
mul byte ptr [si]
inc si
pop bx
add ax,bx
loop L1
code ends
end start
这里面cx的长度获得,我手头没有环境,多年不玩这个了,16位和32位的宏汇编里面许多用法记不得了,大概就这几种方法吧,第二个肯定可以用的,你自己试试吧。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯