汇编语言(七)之求无符号字节序列中的最大值和最小值(子程序实现)
程序员文章站
2024-02-02 18:23:22
...
汇编语言:求无符号序列中的最大值和最小值(子程序实现)
题目要求
求无符号字节序列中的最大值和最小值。设有一字节序列,其存储首地址为3000H,字节数为08H。利用子程序的方法求出该序列中的最大值和最小值。
程序代码及运行
废话少说,直接上代码,流程图附于文章末尾
运行环境
Windows10
DOSBox0.74-3,Cpu speed:3000cycles
代码
data segment
org 3000h
db 0d9h,07h,8bh,0c5h,0ebh,04h,9dh,0f9h
data ends
stack1 segment stack
dw 64 dup(?)
stack1 ends
code segment
assume cs:code ds:data
start:
mov ax,data
mov ds,ax
mov si,3000h
mov cx,0008h
call maxmin;子程序
mov ax,4c00h
int 21h
maxmin proc near
push bx
mov bh,[si]
mov bl,bh
cond1:
lodsb;[si]->al,si+1
cmp al,bh
jbe cond2
mov bh,al
jmp cond3
cond2:
cmp al,bl
jae cond3
mov bl,al
cond3:
loop cond1
mov ax,bx
pop bx
cond4:
ret
maxmin endp
code ends
end start
流程图
只提供子程序流程图