首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 汇编语言 >

负数求和(编译语言)

2013-01-05 
负数求和(汇编语言)对123 234 456 678 -1234 -12345 中的负数求和(汇编语言)[解决办法]assumecs:code,ds:d

负数求和(汇编语言)
对123 234 456 678 -1234 -12345 中的负数求和(汇编语言)
[解决办法]


assumecs:code,ds:data

data segment
var1dw-1234,-12345
data ends

code segment
start:
movax,data
movds,ax
movsi,offset var1
movax,word ptr [si]
movbx,word ptr [si+2]
addax,bx
movax,4c00h
int21h
codeends
endstart

这两个数加起来,没有超出16位二进制所表示的有符号数范围,直接加就行了。如果不理解可能是因为有符号数的表示不理解,或者符号标志位也去了解一下。
[解决办法]

assume  cs:code,ds:data
 
data segment
var1    dw  123, 234, 456,678,-1234,-12345
data ends
 
code segment
start:
    mov ax,data
    mov ds,ax
    mov dx,0
    mov si,offset var1
    mov cx,6
next:
    dec cx
    cmp cx,0
    jb done
    mov ax,word ptr [si]
    inc si
    cmp ax,0
    jae next
    add dx,ax
    jmp next
done:
    mov ax,4c00h
    int     21h
code    ends
end start

热点排行