云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 大连理工大学 计算机原理实验 实验报告

大连理工大学 计算机原理实验 实验报告

  • 62 次阅读
  • 3 次下载
  • 2025/7/5 18:52:26

《计算机原理实验报告》----- 汇编语言编程部分

实验(3)名称:计算学生平均成绩实验

一、实验目的:

1、熟练掌握运算类指令以及其对各状态标志位的影响。 2、掌握运算类程序的设计及调试方法。 3、掌握BCD码的基本知识和BCD码的转换。

二、实验要求:

在DOS环境下利用EDIT软件来编辑源文件,并使用MASM和LINK工具对源文件进行编译链接,最终在实现对30个学生成绩的求和以及求平均数,并将平均数转换为BCD码显示出来。

三、程序流程图:

Buf:十进制数据串(30个字) data1:累加和(dw) data2:平均值(db) data3、4、5:BCD码(db) 显示姓名、学号字符调累加和子程序 调求平均值子程序 调转换子程序 调显示子程序 返回DOS 图一 求平均分流程图

四、程序清单:

data segment

buf dw 60,70,80,90,95,98,20,30,40,50 dw 25,35,65,67,88,99,100,78,12,23 dw 100,90,80,70,60,50,59,68,79,90 count equ ($-buf)/2 data1 dw ? data2 db ? data3 db ? data4 db ? data5 db ?

buf1 db ' my name is chongkun 201383109',0dh,0ah,'$' buf2 db 0dh,0ah,'$'

buf3 db ' The average score is ','$' buf4 db ' 80,100,100,80,75,66,58,100,69,95

',0dh,0ah,'95,72,78,58,62,63,98,91,72,78',0dh,0ah,'90,85,67,74,82,59,66,88,99,77',0DH,0AH,'$' data ends ssg1 segment

dw 100 dup(?) ssg1 ends

code segment

assume cs:code,ds:data,ss:ssg1 main: mov ax,data mov ds,ax

lea dx,buf1 mov ah,09h int 21h lea dx,buf4 mov ah,09h int 21h

call accum call average

call conver

lea dx,buf3

mov ah,09h int 21h call display

conver: mov al,data2 mov ah,0

mov bl,100 div bl

mov data3,al mov al,ah mov ah,0 mov bl,10 div bl

mov data4,al mov data5,ah ret

accum: mov cx,count mov lea lop: add bx,2 loop lop

mov data1,ax ret

average: mov ax,data1 mov div mov data2,al ret

display:

lop3: mov si,offset data3

mov al,ds:[si] and al,0f0h mov cl,04h add al,30h mov dl,al mov al,ds:[si] and al,0fh add al,30h mov mov ah,02h int

lop4: mov si,offset data4

mov al,ds:[si] and al,0f0h

ax,0 bx,buf ax,[bx] bl,count bl

shr al,cl

dl,al

21H

add

mov cl,04h shr al,cl

add al,30h mov dl,al mov al,ds:[si] and al,0fh add al,30h mov dl,al

mov ah,02h int 21H

lop5: mov si,offset data5

mov al,ds:[si] and al,0f0h mov cl,04h shr al,cl

add al,30h mov dl,al mov al,ds:[si] and al,0fh add al,30h mov dl,al

mov ah,02h int 21H

lea dx,buf2 mov ah,09h int 21h

lop22: mov ax,4c00h ; to DOS int 21h ret code ends

end main

五、实验结果:

学生签字: 日期:

图二 运行结果

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

《计算机原理实验报告》----- 汇编语言编程部分 实验(3)名称:计算学生平均成绩实验 一、实验目的: 1、熟练掌握运算类指令以及其对各状态标志位的影响。 2、掌握运算类程序的设计及调试方法。 3、掌握BCD码的基本知识和BCD码的转换。 二、实验要求: 在DOS环境下利用EDIT软件来编辑源文件,并使用MASM和LINK工具对源文件进行编译链接,最终在实现对30个学生成绩的求和以及求平均数,并将平均数转换为BCD码显示出来。 三、程序流程图: Buf:十进制数据串(30个字) data1:累加和(dw) data2:平均值(db) data3、4、5:BCD码(db) 显示姓名、学号字符调累加和子程序 调求平均值子程序 调转换子程序

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com