主题:菜鸟求两个汇编程序!考试用,谢谢!
batmanwl
[专家分:0] 发布于 2005-12-19 18:13:00
80X86汇编程序
1、在数据段的ARRAY缓冲区里,存放有一50个字节型的数据数组,其值都是两位的正整数,变成把他们之中最大的数找出来,并在显示器上显示
2、在存储器ARRAY缓冲区中存放着60个字节型数据数组,编程实现将他们分别加3,之后再放回原处,不考虑数据溢出
因为考试要用,故请大家帮忙。谢谢!
回复列表 (共1个回复)
沙发
Raylee [专家分:1090] 发布于 2005-12-20 22:28:00
;参考,这个程序是求最小偶数的,结果存到AX中
dataseg segment
DATA dw 5 DUP(32,3,53,4,3,43,65,-6,64,2,3,54,3,434,5,54,6,7,876,1)
flag db 0
dataseg ends
prognam segment
main proc far
assume cs:prognam,ds:dataseg
start:
push ds
mov ax,0
push ax
mov ax,dataseg
mov ds,ax
lea si,DATA
mov cx,100
mov ax,0
Next:
mov dx,[si]
test dx,01h
jz IsEven
jmp LoopNext
IsEven:
test flag,01h
jz SetFlag
cmp ax,dx
jg MoveToAX
jmp LoopNext
SetFlag:
mov flag,1
jmp MoveToAX
MoveToAX:
mov ax,dx
jmp LoopNext
loopNext:
add si,2
loop Next
exit:
ret
main endp
prognam ends
end start
我来回复