汇编语言程序(输入十个负数,输出其中最小的)

2026年09月24日 23:14
有2个网友回答
网友(1):

ORG
0000H
LJMP
MAIN0
ORG
0030H
MAIN0:MOV
A,#10H
ACALL
MAIN
;长调用排序程序
MOV
P1,A
SJMP
$
MAIN:
;子程序入口
MOV
R6,#00
;起停标志位
LOOP:CLR
00H
;置换标志位
MOV
R0,#40H
;数据存储单元
MOV
R7,#10
;循环次数控制
JIXU:MOV
A,@R0
;取第一个数
MOV
2AH,A
;存储
INC
R0
;调整数据指针
MOV
2BH,@R0
;取第二个数,存储
CLR
C
;清零
SUBB
A,@R0
;减法
JNC
NEXT
;判断大小
MOV
A,@R0
;交换数据
XCH
A,2AH
MOV
@R0,A
DEC
R0
MOV
A,@R0
XCH
A,2BH
MOV
@R0,A
INC
R0
;调整数据指针
NEXT:SETB
00H
;置位标志位
DJNZ
R7,JIXU
;没有完成继续
INC
R6
;是否比较完成
CJNE
R6,#10,LOOP
;完成,返回
RET
END

网友(2):

我先给个思路:取出第一个数,取第二个与第一个比较,保留大,然后和第三个数比较,保留大的,依次比较,直到最后一个,把最大的输出,去补码就是最小的负数了