用汇编语言编写程序:有三个字符串,要求找出其中最大者

[复制链接]
查看11 | 回复2 | 2011-5-11 07:47:20 | 显示全部楼层 |阅读模式
回复

使用道具 举报

千问 | 2011-5-11 07:47:20 | 显示全部楼层
;如果知道串的长度的话,可以这么做,比如都等长的16个字符
;串比较宏定义
strcmpmacrostr1,str2
leasi,str1
leadi,str2
movcx,16
cld
repzcmpsb
endm
;串传送宏定义
strmovmacrostr1,str2
leasi,str1
leadi,str2
movcx,16
cld
repmovsb
endm
;------------------------------------------
datasegment
str1db\'$\';第一个串
str2db\'$\';第二个串
str3db\'$\';第三个串
maxdb16dup(?),\'$\'
dataends
;-----------------------------------------
codesegment
assumecs:code,ds:data,es:data
mainproc
start:
movax,data
movds,ax
moves,ax

strmovstr1,max;str1-max
strcmpstr2,max
jlelop
strmovstr2,max
lop:strcmpstr3,max
jlecon
strmovstr3,max
con:movah,09h
leadx,max
int21h
exit:movah,4ch
int21h
mainendp
codeends
endmain
这样打真的好累哦。。。。。其实还有很多好方法,在这儿打很不方便,这台机子我也没法调试,所以先打了一个比较容易理解的。。。。。
回复

使用道具 举报

千问 | 2011-5-11 07:47:20 | 显示全部楼层
能不能写出具体的汇编程序代码?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行