汇编语言编写金牌榜程序.docx

上传人:b****1 文档编号:2393625 上传时间:2022-10-29 格式:DOCX 页数:15 大小:16.20KB
下载 相关 举报
汇编语言编写金牌榜程序.docx_第1页
第1页 / 共15页
汇编语言编写金牌榜程序.docx_第2页
第2页 / 共15页
汇编语言编写金牌榜程序.docx_第3页
第3页 / 共15页
汇编语言编写金牌榜程序.docx_第4页
第4页 / 共15页
汇编语言编写金牌榜程序.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

汇编语言编写金牌榜程序.docx

《汇编语言编写金牌榜程序.docx》由会员分享,可在线阅读,更多相关《汇编语言编写金牌榜程序.docx(15页珍藏版)》请在冰豆网上搜索。

汇编语言编写金牌榜程序.docx

汇编语言编写金牌榜程序

使用汇编语言编写金牌榜程序(具体要求见书上)

datasegment

stringdb'1chushihua',0ah,0dh,

'2inputandproceduedata',0ah,0dh,

'3sort',0ah,0dh,

'4output',0ah,0dh,

'5exittodos',0ah,0dh,'$'

SCst1db'countrynamegoldsilvercopperHJ',0ah,0dh,'$'

SRst2db'countrynamegoldsilvercopper',0ah,0dh,'$'

xzzifudb'qingxuanze(1-5):

$'

errdb'sumofcounterror',0ah,0dh,'$'

country_namedb160dup(20h)

arraydw64dup(0)

ls_namedb40dup(20h)

ls_shudw12dup(0)

jindw0ffffh

yindw0

tongdw0

sumdw0

FLAGDW0

dataends

codesegment

mainprocfar

assumecs:

code,ds:

data

start:

pushds

xorax,ax

pushax

movax,data

movds,ax

ma:

CALLCRLF

CALLCRLF

leadx,string

movah,9

int21h

CALLCRLF

leadx,xzzifu

movah,9

int21h

movah,1

int21h

cmpal,31h

jzcsh

cmpal,32h

jzshuru

cmpal,33h

jzpaixu

cmpal,34h

jzshuchu

cmpal,35h

jzexit

CALLCRLF

jmpma

csh:

movcx,15

movdl,30h

moval,30h

leabx,country_name

csh1:

movbyteptr[bx],41h

mov[bx+1],al

mov[bx+2],dl

addbx,10

incdl

cmpdl,3Ah

jnzcsh2

incal

movdl,30h

csh2:

loopcsh1

movbyteptr[bx],'Z'

movbyteptr[bx+1],'H'

movbyteptr[bx+2],'J'

movcx,64

movbx,0

csh3:

movarray[bx],0

addbx,2

loopcsh3

jmpma

shuru:

CALLCRLF

leadx,SRst2

movah,9

int21h

movcx,4

leasi,ls_name

leadi,ls_shu

CALLCREE1

next:

movah,1

int21h

mov[si],al

int21h

mov[si+1],al

int21h

mov[si+2],al

CALLCREE18

calljieshoushuju

mov[di],bx

CALLCREE30

calljieshoushuju

mov[di+2],bx

CALLCREE42

calljieshoushuju

mov[di+4],bx

addsi,10

adddi,6

callcrlf

loopnext

MOVSUM,0

LEASI,LS_NAME;CHAXUN

movcx,4

zjxcha:

pushcx

pushsi

leadi,country_name

movcx,15

jxcha:

moval,[si]

cmpal,'K'

JZBUDENG

cmpal,[di]

jzcha1

jxc:

ADDDI,10

LOOPjxcha

jmpma

cha1:

MOVAL,[SI+1]

CMPAL,[DI+1]

JNZjxc

MOVAL,[SI+2]

CMPAL,[di+2]

JNZjxc

ADDDI,2

MOVAX,DI;XIANGDENGLEIJIAJINYINGTONG

LEAdi,country_name

subax,di

movdx,0

movcx,10

divcx

movcl,3

salax,cl

LEABX,ARRAY

addbx,ax

leasi,ls_shu

ADDSI,SUM

ADDSUM,6

movax,[si]

add[bx],ax

movax,[si+2]

add[bx+2],ax

movax,[si+4]

add[bx+4],ax

budeng:

popsi

popcx

addsi,10

loopzjxcha

leasi,array

movcx,15

xorax,ax

xorbx,bx

xordx,dx

TJ:

xordi,di

adddi,[si]

adddi,[si+2]

adddi,[si+4]

mov[si+6],di

addax,[si]

addbx,[si+2]

adddx,[si+4]

addsi,8

LOOPTJ

mov[si],ax

mov[si+2],bx

mov[si+4],dx

addax,bx

addax,dx

mov[si+6],ax

movsum,ax

leasi,array

movcx,15

xorax,ax

ZTJ:

ADDAX,[SI+6]

addsi,8

LOOPZTJ

CMPax,sum

jzjma

LEADX,ERR

movah,9

int21h

movah,1

int21h

jma:

CALLCRLF

CALLCRLF

JMPMA

paixu:

movdi,14

lp1:

movcx,di

movbx,0

movsi,0

lp2:

movax,array[bx]

cmpax,array[bx+8]

jgcont

jzlp3

calljh4

jmpcont

lp3:

movax,array[bx+2]

cmpax,array[bx+10]

jgcont

jzlp4

calljh4

jmpcont

lp4:

movax,array[bx+4]

cmpax,array[bx+12]

jgecont

calljh4

cont:

addbx,8

addsi,10

looplp2

decdi

jnzlp1

jmpma

jh4procnear

pushcx

pushsi

movcx,10

nextzf:

movdl,country_name[si]

xchgcountry_name[si+10],dl

movcountry_name[si],dl

incsi

loopnextzf

movsi,bx

movcx,4

nextsj:

movdx,array[si]

xchgdx,array[si+8]

movarray[si],dx

addsi,2

loopnextsj

popsi

popcx

ret

jh4endp

shuchu:

CALLCRLF

leadx,SCst1

movah,9

int21h

movcx,11

movsi,-10

pushsi

movdi,0

next3:

popsi

addsi,10

pushsi

pushcx

CMPCX,1

jnzjxnext

movsi,150

movdi,120

jxnext:

cmparray[di+6],0

JZSJJS

movcx,10;10geguojiaming

next2:

movdl,country_name[si]

cmpdl,20h

jzjj

movah,2

int21h

jj1:

incsi

loopnext2

jj:

callcree18

movbx,array[di]

CMPBX,0

JGSCSJ1

CALLKG0

JMPSJ2

SCSJ1:

callbtod

calllx

SJ2:

movbx,array[di+2]

CMPBX,0

JGSCSJ2

CALLKG0

JMPSJ3

LSGD:

JMPNEXT3

SCSJ2:

callbtod

calllx

SJ3:

movbx,array[di+4]

CMPBX,0

JGSCSJ3

CALLKG0

JMPSJ4

SCSJ3:

callbtod

calllx

SJ4:

movbx,array[di+6]

CMPBX,0

JGSCSJ4

CALLKG0

JMPSJJS

SCSJ4:

callbtod

SJJS:

callcrlf

adddi,8

popcx

loopLSGD

popsi

callcrlf

callcrlf

MOVAH,1

INT21H

jmpma

exit:

ret

CREE1PROCNEAR

PUSHDX

MOVDH,24

MOVDL,0

MOVBH,0

MOVAH,2

INT10H

POPDX

RET

CREE1ENDP

CREE18PROCNEAR

PUSHDX

MOVDH,24

MOVDL,18

MOVBH,0

MOVAH,2

INT10H

POPDX

RET

CREE18ENDP

CREE30PROCNEAR

PUSHDX

MOVDH,24

MOVDL,30

MOVBH,0

MOVAH,2

INT10H

POPDX

RET

CREE30ENDP

CREE42PROCNEAR

PUSHDX

MOVDH,24

MOVDL,42

MOVBH,0

MOVAH,2

INT10H

POPDX

RET

CREE42ENDP

jieshoushujuprocnear

mov

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 面试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1