这是我的代码,我收到两个错误。我是初学者,所以请帮帮我。这是我的代码。
org 100h
jmp start
num1: dw 15
num2: dw 7
result: dw 0000
temp: dw 0000
start: xor ax,ax
mov cx,64
xor bx,bx
here: mov [result+bx],ax
add bx,2
loop here
mov cx,32
xor bx,bx
here1: mov ax,[bx+num1]
mov [temp+bx],ax
add bx,2
loop here1
xor ax,ax
mov cx,32
here2: mov [temp+bx],ax
add bx,2
loop here2
mov cx,32
there: push cx
mov cx,32
mov bx,32
clc
here3: rcr [num2+bx]
dec bx
dec bx
loop here3
jnc skipadd
xor bx,bx
mov cx,64
clc
here4: mov ax,[temp+bx]
adc [result+bx],ax
inc bx
inc bx
loop here4
skipadd:xor bx,bx
mov cx,64
clc
here5: rcl [temp+bx]
inc bx
inc bx
loop here5
pop ax,
loop there
mov ax,4c00h
int 21h
答案 0 :(得分:1)
此代码正在覆盖程序!!!
num1: dw 15
num2: dw 7
result: dw 0000
temp: dw 0000
start: xor ax,ax
mov cx,64
xor bx,bx
here: mov [result+bx],ax
add bx,2
loop here
您需要更改结果和 temp 的定义以允许64个字。
result: dw 64 dup (0)
temp: dw 64 dup (0)
您正在使用以下
复制垃圾 mov cx,32
xor bx,bx
here1: mov ax,[bx+num1]
mov [temp+bx],ax
add bx,2
loop here1
更好地使用
mov cx,32
xor bx,bx
mov ax,[bx+num1]
here1: mov [temp+bx],ax
add bx,2
loop here1