ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:120.05KB ,
资源ID:399473      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-399473.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(显示学生名次表汇编语言Word格式.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

显示学生名次表汇编语言Word格式.docx

1、infor2 db 0ah,0dh,input score:$n equ 15 ; 姓名长度m equ 4 ; 成绩长度(3位 +回车 p equ 4 ; 输入的人数(4个 q equ 3 ; 成绩位数buff1 db n,? ,n dup (0,; 姓名缓冲区,加 $以便输 出buff2 db m,? ,m dup (0, 成绩缓冲区sname db p dup (n+1 dup (0 ; 保存姓名score1 dw p dup (m+1 dup (0 ; 保存成绩score2 dw p dup (m+1 dup (0mingci db p dup (0 ; 名次x dw ?sign1 dw

2、 0sign2 dw 0cont db 1 ; 计数DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART :main proc farMOV AX,DATAMOV DS,AXmov es,axmov bx,0mov cx,0call inputcall sortcall printmov ah,4chint 21hmain endp 子程序 1,输入姓名、成绩input procinc bx ; 输入次数统计cmp bx,p ; 输入次数ja exitlea dx,infor1 ; 显示提示 1mov ah,9lea dx,buff1 ; 输入姓名m

3、ov ah,10mov al,buff1+1 ; 实际输入个数, aladd al,2 ;+2,包含 buffer1的 0,1号单元 mov ah,0mov si,ax ; 回车 od 所在位置,跟在最后一个字 符后mov buff1si,0 ; 将 od 换为 0,便于输出显示lea dx,infor2 ; 显示提示 2lea dx,buff2 ; 输入成绩mov al,buff2+1 ; 实际输入个数 个数 +2,包含 0,1单元找到 od mov ah,0mov si,axmov buff2si,0 ;mov mingcibx-1,bl ;bx 为输入次数,保存输入次序 cmp bx,1

4、 ; 第一次输入转 let1jz let1add sign1,n+1 ; 姓名间隔为 n+1add sign2,q ; 成绩间隔为 qlet1:call copy ; 子程序嵌套jmp inputexit:retinput endp 子程序 2,数据转存copy procmov cx,n+1 ; 姓名长度 +1(包含 $lea si,buff1+2lea di,sname ; 姓名传送到 snameadd di,sign1 ; 加上间隔值cldrep movsbmov cx,nmov ax, 用 $覆盖姓名区,清除已输入的姓名 lea di,buff1+2rep stosbmov cx,m+1

5、 ; 成绩位数 +1(包含 slea si,buff2+2lea di,score1 ; 成绩传送到 scoreladd di,sign2 ;mov di,sign2call change ; 二进制成绩, scorel2copy endp 子程序 3,十进制数 ASCII 码二进制change procmov x,0mov cx,si-1 ; 成绩的位数, cxand cx,000fh ; 保留低 4位rept2:mov al,si ; 按位取出成绩cmp al,30h ; 是否在 09之间jl exit1cmp al,39hjg exit1and ax,000fh ; 去掉 ASCII 码

6、xchg ax,xmov dx,10 ; 将 ax 中前一次形成的数扩大 10倍mul dxadd x,ax ; 保存到 xinc siloop rept2mov ax,x ; 按十进制形成的成绩以二进制 保存mov score2di,ax ; 二进制成绩送入 score2 mov x,0add sign2,2 ; 下一个成绩单元exit1: retchange endp 子程序 4,按成绩排序sort procmov cx,p ; 数组长度dec cxloop1:push cx ; 保存外循环次数mov si,0loop2:mov ax,score2bxcmp ax,score2bx+m+1

7、 ;m+1=5jge next ; 降序xchg ax,score2bx+m+1 ; 交换成绩mov score2bx,axmov al,mingcisixchg al,mingcisi+1 ;mov mingcisi,alnext:add bx,m+1 ; 下一个成绩loop loop2pop cx ; 恢复外循环次数loop loop1sort endp 子程序 5,打印排序名单print proclea dx,infor0 ; 显示结果提示mov cx,pmov ax,0mov di,0rept3:mov dl,0ah ; 回车换行mov ah,2mov dl,0dhmov dl,con

8、t ; 显示名次序号#学院综合性实验报告 int 21h inc cont mov dl,0ah mov ah,2 int 21h mov dl,0dh int 21h mov ax,0 mov al,mingcidi dec al mov bl,9 mul bl lea dx,sname add dx,ax mov ah,9 int 21h mov dl,0ah mov ah,2 int 21h mov dl,0dh int 21h mov ax,0 mov bx,0 mov al,mingcidi dec al mov bl,5 mul bl lea dx,score1 add dx,ax mov ah,9 int 21h inc di loop rept3 ret print endp ;回车换行 ;取名次 ;位置-1,因为地址从0开始 ;姓名位置=al9(包含$ ;偏移地址+姓名位移量 ;显示名字 ;地址从0开始 ;成绩位移量=al5(包含$ ;显示成绩 code ends END START 第 15 页

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

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