南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx

上传人:b****2 文档编号:3559148 上传时间:2023-05-01 格式:DOCX 页数:21 大小:18.56KB
下载 相关 举报
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第1页
第1页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第2页
第2页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第3页
第3页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第4页
第4页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第5页
第5页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第6页
第6页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第7页
第7页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第8页
第8页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第9页
第9页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第10页
第10页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第11页
第11页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第12页
第12页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第13页
第13页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第14页
第14页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第15页
第15页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第16页
第16页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第17页
第17页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第18页
第18页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第19页
第19页 / 共21页
南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx_第20页
第20页 / 共21页
亲,该文档总共21页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx

《南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx(21页珍藏版)》请在冰点文库上搜索。

南昌大学汇编语言成绩管理教学提纲Word文档下载推荐.docx

选择1-7

errdb'

thedataerror$'

put0db'

plaseintputonenameandscore'

putdb'

plaseintputfivenamesandscores'

byedb'

***************thankyoutouse*********************'

scoredw64,71,66,61,78,80,83,89,79,96

n1=($-score)/2;

score的长度

scoreaddDB3;

增加的分数存入指定单元

DB?

DB3DUP(0)

db'

scoreadd2DB3;

增加的分数存入指定单元

scoreadd3DB3;

scoreadd4DB3;

scoreadd5DB3;

score1db15dup(0)

mes1DB'

THENUMBEROFE(0---59):

;

显示E等级的人数的界面,对应V1

mes2DB'

THENUMBEROFD(60--69):

显示D等级的人数的界面,对应V2

mes3DB'

THENUMBEROFC(70--79):

显示C等级的人数的界面,对应V3

mes4DB'

THENUMBEROFB(80--89):

显示B等级的人数的界面,对应V4

mes5DB'

THENUMBEROFA(90-100):

显示A等级的人数的界面,对应V5

mes6DB'

$'

12字节空格使显示分数及对应名字相隔

mes7db'

name:

score:

'

0ah,0dh,'

mes8db'

提示输入姓名

mes9db'

score:

提示输入分数

bo1DB'

youinputthescoreofstudentisA$'

判断输入的数据的等级后显示对应级别A

bo2DB'

youinputthescoreofstudentisB$'

判断输入的数据的等级后显示对应级别B

bo3DB'

youinputthescoreofstudentisC$'

判断输入的数据的等级后显示对应级别C

bo4DB'

youinputthescoreofstudentisD$'

判断输入的数据的等级后显示对应级别D

bo5DB'

youinputthescoreofstudentisE$'

判断输入的数据的等级后显示对应级别E

bo6DB'

1.outputallstudentscore2.statisticsscore(ABCED)'

3.sortscore4.intputfivenamesandscores'

DB'

5.intputonenameandscore6.clearscreen7.exit'

清屏后提示

v1db?

0---59段人数计数器

v2db?

60--69段人数计数器

v3db?

70--79段人数计数器

v4db?

80--89段人数计数器

v5db?

90-100段人数计数器

nam1DB'

chenbo$'

学生姓名已存入指定数据存储单元NAM(1-10)

nam2DB'

chenhin$'

nam3DB'

chenhun$'

nam4DB'

huanwei$'

nam5DB'

tanghui$'

nam6DB'

chenfan$'

nam7DB'

maoyun$'

nam8DB'

zhanjun$'

nam9DB'

zhanhua$'

nam10DB'

chenlin$'

nam11DB8;

增加的名字存入指定单元

DB8DUP(0)

nam12DB8

nam13DB8

nam14DB8

nam15DB8

NUMDB21,22,23,24,25,26,27,28,29,30

***********显示***************

showmacrom

leadx,m

movah,9

int21h

endm

***********输入******************

inputmacrof

leadx,f

movah,10

int21H

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA,SS:

STACK,ES:

DATA

STARTPROC

MOVAX,DATA

movds,AX

showmenu

chen:

showplase

movah,1;

选择菜单项

callad

cmpal,'

7'

jaerror;

当输入非法数据时,报错

cmpAL,'

1'

jberror;

当输入非法数据时,报错

CMPAL,'

JEone;

当输入1时,转入分支程序,实现输出分数及名字功能

2'

JEtwo;

当输入2时,转入TWO分支程序,实现统计功能

3'

JEthree;

当输入3时,转入THREE分支程序,实现排序功能

4'

JEfo;

当输入4时,转入FO分支程序,实现键盘输入功能及输出

5'

jefiv;

当输入5时,转入FO分支程序,实现键盘输入功能能及等级判断

6'

jesix;

当输入6时,转入SIX分支程序,实现清屏

jmpbyebye;

当输入7时,转入BYEBYE分支程序,退出

error:

;

分支程序,当输入非法数据时,报错

showerr

jmpchen

quit:

分支程序,退出

movah,4ch

byebye:

showbye

jmpquit

********************1显示所有成绩**************

one:

ONE分支程序,实现输出分数及名字功能

movcx,n1

leadi,score

showmes7

movbp,offsetnam1

chen1:

*********以下显示姓名**************

movdx,bp

int21h

addbp,8

showmes6

*********以下显示分数**************

movax,[di]

movbx,10

leasi,score1

callradix

mov[si],byteptr0dh

mov[si+1],byteptr0ah

mov[si+2],byteptr'

leadx,score1

int21h;

以上是2-10进制转换及显示

adddi,2

*********以上显示分数**************

deccx

jnzchen1

***********2-10***************

radixproc;

2-10进制转换

pushcx;

(cx)=10

pushdx;

movcx,0;

P进制入站时的计数器

L1:

MOVDX,0

DIVBX;

商置ax,

inccx

orax,ax

jneL1

l2:

popax;

出栈

cmpal,10;

比较

jbnext;

跳入下一个

addal,7;

进行加法运算

next:

addal,30h

mov[si],al

incsi

jnzl2

popdx;

popcx;

ret

radixendp

*****************2号统计各分段人数******************

two:

leasi,score

callcount;

统计各分段人数

********************3号顺序分数排序***************

three:

leabx,score

callsort;

排序并存放在score为首址的单元中

************显示所有成绩************

chen2:

***********冒泡排序子程序***************

sortproc;

P128排序

pushax;

入栈

pushsi;

pushdi;

movdx,cx

subdx,2

movsi,2

lopi:

jnzchen2

movdi,si

movax,[bx+si-2]

lopj:

cmpax,[bx+di-2]

jbelopk

xchg[bx+di-2],ax

mov[bx+si-2],ax

lopk:

showmes8;

显示信息

inputnam12

showmes9;

inputscoreadd2

callad;

调动程序

inputnam13

inputscoreadd3

cmpdi,20

jbelopj

addsi,2

cmpsi,18;

jbelopi

popdi

popsi;

popdx;

ret;

返回

sortendp

******************4输出输入成绩*******************

fo:

showput;

显示

inputnam11;

输入姓名

inputscoreadd;

输入

showmes8

inputnam14

showmes9

inputscoreadd4

callad

**************显示对应名字分数************

showmes7;

显示对应名字分数

shownam11+2;

显示name

showscoreadd+2;

显示score

shownam12+2;

showscoreadd2+2;

shownam13+2;

showscoreadd3+2;

shownam14+2;

showscoreadd4+2;

shownam15+2;

showscoreadd5+2;

fiv:

*******************6清屏程序*************

six:

callclr

showbo6

showput0

输入分数

showput

调用

inputscoreadd

leabx,scoreadd+2

callabcde

*************判断ABCDE子程序*************

abcdeproc

movax,0

movah,[bx]

incbx

moval,[bx];

把bx中所存地址包含的内容移动到al

b1:

cmpax,'

59'

与59进行比较

jgb2;

>

showbo5;

0-59

jmpchen;

跳到chen:

执行程序

b2:

69'

与69进行比较

jgb3;

60-69>

showbo4

执行程序

b3:

79'

与79进行比较

jgb4;

70-79>

showbo3

b4:

89'

与89进行比较

jgb5;

80-89>

showbo2

b5:

showbo1

popax

abcdeendp

***********统计成绩子程序******************

countproc

m1:

loopm1

movdx,offsetmes1

movah,09h

movdl,v1

adddl,30h

movah,02h

movbx,[si]

addsi,2

cmpbx,59

jgm2;

incv1;

0---59段人数计数器

jmpm6;

m2:

cmpbx,69

jgm3;

incv2;

60--69段人数计数器

jmpm6

m3:

cmpbx,79

jgm4;

incv3;

70--79段人数计数器

m4:

cmpbx,89

jgm5;

incv4;

80-89段人数计数器

m5:

incv5;

90-99段人数计数器

m6:

movdx,offsetmes2

movdl,v3

adddl,30h;

将30h中的内容移到d1中

movah,02h;

将02h中的内容移到ah中

movdx,offsetmes4;

偏移地址

movdl,v4

movdl,v2

adddl,30h;

相加

movdx,offsetmes3;

移动

movah,09h;

将09h中的内容移到ah中

movdx,offsetmes5

movdl,v5

ret

countendp

****************清屏子程序***********

CLRPROC

MOVAH,2

MOVBH,0

INT10H

MOVAH,0AH

MOVAL,'

MOVBH,0

MOVCX,2000

INT10H

ret

CLRendp

************回车换行子程序*******

adproc

pushax;

压入栈

pushdx;

movdl,0ah

movah,2

int21h

movdl,0dh

popdx;

popax;

ret

adendp

*********************************

STARTENDP

codeends

endSTART;

结束程序

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

当前位置:首页 > 初中教育 > 理化生

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2