在以NUM为首地址的内存数据段存放10个8位无符号数,用汇编语言实现从NUM数据块中找出最大的数据

在以NUM为首地址的内存数据段存放10个8位无符号数,用汇编语言实现从NUM数据块中找出最大的数据存到MAX中,找出最小的数据存到MIN单元,,试问该如何初始化??

第1个回答  2015-01-14
先预存十个数,初始化计数器9,最大最小赋值第一个数追问

可不可以编出来

你初始化一下我看看,,从DATA SEGMENT开始

追答

MAX EQU 30H
MIN EQU 31H
ORG 0
AJMP START
ORG 100H
START:
MOV R3,#9
MOV DPTR,#NUM
MOV R0,#0
MOV A,#0
MOVC A,@A+DPTR
MOV MAX,A
MOV MIN,A

LOOP: MOV A,R0
MOVC A,@A+DPTR
MOV B,A

CLR C
SUBB A,MIN
JNC NEX1
MOV MIN,B
NEX1: MOV A,B
CLR C
SUBB A,MAX
JC NEX2
MOV MAX,B
NEX2:
INC R0
DJNZ R3,LOOP
SJMP $

NUM: DB 0X88
DB 0XAF
DB 0XC4
DB 0X86
DB 0XA3
DB 0X92
DB 0X90
DB 0X8F
DB 0X80
DB 0X82

END

追问

这样初始化可以吗

追答

要给一个值,不然都会是0

追问

写错了,,NUM后面是十个数

追答

因为第一个数已经给了min,max所以9

本回答被提问者采纳
相似回答