汇编课程设计

汇编课程设计
汇编课程设计

湖南农业大学课程设计报告

学院:信息科学技术学院班级:2007级信工2班姓名:李新花学号:200741843221 课程设计题目:模拟交通灯

课程名称:汇编语言与微机原理

辅导老师:解志坚

评阅成绩:

评阅意见:

成绩评定教师签名:

日期:年月日

目录

模拟交通灯

概述

此模拟交通灯,是在TND -MD 教学系统上实现的。所使用的芯片主要有8253定时计数器、8255A 并行接口电路芯片、8259A 中断控制器等。通过红绿SW-LED 显示不同的二极管亮灭组合来表示模拟交通灯的运行情况,并通过液晶显示屏显示倒计时,其计时精确度为1S 。

一、设计内容与要求

如右图,在十字交叉路口设置交通灯和倒计时牌,东边与西边显

示完全一样,南边与北边的显示完全一样,只需设计东边和南边。

a) 考虑东往西,南往北两个直行方向和左拐情况;直

行、左拐和禁止时间比例为0.8∶0.2∶1;

b) 要求以8253产生秒(或更长间隔)信号,送8259(IRQ7)中

断及计数,南口和北口设置各设置直行和左拐两组红绿灯(利用红绿LED 显示)和倒计时牌显示(利用4个数码管或液晶显示屏分两组显示); c) 注意东口和南口之间禁止通行时间等于左拐与直行通行时间之和。

显示牌开始倒计时

左拐红灯灭

显示牌倒计时为零

显示牌开始倒计时

左拐绿灯亮显示牌开始倒计时

左拐红灯亮绿灯灭

显示牌倒计时为零

禁止通行

直行通行

左拐通行

显示牌倒计时为零

直行红灯亮绿灯灭

红灯全亮

绿灯全灭直行红灯灭绿灯亮

二、设计思想

本程序是在TDN —MD 教学系统上实现的,要使用汇编语言进行编写,整体设计思路是:由于要实现前叙的实验要求,本程序要达到以下基本功能:

秒信号的产生:

北 东

西

现实生活中的交通灯都是有倒计时的,因此本设计需要一个秒信号,而在TDN—MD上8253定时计数器可以实现这个功能,由于8253的OUT输出频率为1.19MHZ,若使其计数初值为1190000,刚好每秒产生一个脉冲。而8253的每个计数器都是16位的,无法存入这个值,两个计数器级联就可以实现:让0通道的OUT0连接8259的IRQ0,再有OUT0连2通道的CLK2,使OUT2的输出秒信号,OUT2连接8259的IRQ7,GATE2接正5V电压。其中计数器0的计数初值设计为1190,而计数器2的计数初值为1000,则OUT2每秒输出一个脉冲方波信号。

倒计时的显示:

利用TDN—MD系统的液晶显示屏,来显示倒计时。由于考虑到东,南两个方向的通行显示,所以我们设计了两个倒计时,一个用来显示东边方向的倒计时的情况,另一个用来显示南边方向倒计时的情况。为了模拟的方便,设计了直行时间为24秒,左拐时间为6秒,禁行时间为30秒。通过8253的IRQ7产生一次中断,调用中断服务程序显示倒计时,每秒减一。东边通行时:时间从24减到0,然后是6秒的左拐时间。南边的情况一样。东,南两个方向的时间都分别显示在液晶显示屏上

红绿灯的显示与改变:

在TDN—MD系统上有LED红绿发光二极管,上面有4个红灯和4个绿灯,且有8个对应的引脚,我们可以利用8255的B端口写数据就可以控制8个灯的亮灭。在本次课程设计中,为了模拟各种情况,我们把8个灯分成两组:东组有:1,2,5,6四盏灯;南组有:3,4,7,8四盏灯。其中东直行时各盏灯的亮灭情况是00011110(‘0’为亮,‘1’为灭);东左拐时是:00101101;

南直行时是01001011;南左拐时是:10000111。

通过8253来定时驱动各种情况的切换

三、设计所用芯片及工作原理

本课程设计所用的芯片主要有8253定时计数器,8255A并行接口电路芯片,8259A中断控制器等,它们的工作原理分别如下:

(一)8253定时计数器

8253可编程定时计数器是INTEL公司生产的的通用外围芯片之一。它有

三个独立的十六位计数器,计数频率范围为0—2MHZ,它所有的计数方式和操作方式都可以通过编程控制。

1.8253的功能是:

(1)延时终端;(2)可编程频率发生器;(3)事件发生器;(4)倍率器;

(5)实时时钟;(6)数字单稳;(7)复杂的电机控制器

2.计数器0,计数器1,计数器2;

这3个计数器相互独立,各自可按不同的方式工作。计数器的内部结构如前所述,每个计数器包含一个16位的初始寄存器,一个计数执行部件哥一个锁存器。计数执行部件从初始值寄存器中获得计数初值,便进行减1计数,此时,锁存器跟随计数执行部件的内容而变化,当有一个锁存器命令来到时,锁存器便锁定当前计数,直到被读走以后,又跟随计数执行部件的动作。

各计数器的外部输入输出信号:

计数器0:CLK0—计数器0的时钟输入。

GATE0—计数器0的门脉冲控制输入。

OUT0—计数器0的输出。

2.计数器1:CLK1—计数器1的时钟输入。

GATE1—计数器1的门脉冲控制输入。

OUT1—计数器1的输出。

计数器2:CLK2—计数器2的时钟输入。

GATE2—计数器2的门脉冲控制输入。

OUT2—计数器2的输出。

读/写逻辑电路

读写电路从控制总线接收输入信号,经过组合,产生8253各部分的控制。具体为:

A1,A0—用来对三个计数器和控制寄存器进行寻址

RD—读信号。当RD为低电平有效,此时,表示CPU正在对8253的一个计数器进行读操作。

WR—写信号。当WR低电平有效时,此时,表示示CPU正在对8253的一个计数器进行写操作。

CS—片选信号。只有在CS为持续低电平的情况下,RD哥WR才会收到确

认,否则会被忽略。

4.工作方式:

方式0:计数结果产生中断

方式1:可重复触发的单稳态触发器

方式2:分频器

方式3:方波发生器

方式4:软件触发的选通信号发生器

方式5:硬件触发的选通信号发生器

(二)8255A并行接口电路芯片

8255可编程外围接口芯片是INTEL公司生产的通用I/O接口芯片,它具有A,B,C三个并行接口,用+5V单电源供电,能在一下三个方式下工作:方式0:基本输入输出方式;方式1:选通输入输出方式;方式2:双向选通工作方式。

数据端口A,B,C

共提供24条数据线,与外设相连接,可以用软件将它们分别编程为输入输出端口:

端口A

1个8位数据输入锁存器:PA作输入时,有锁存功能。

1个8位的数据输出锁存器缓冲器:PA作输出时,有锁存功能

端口B

1个8位数据输入锁存器:PB作输入时,没有锁存功能。

1个8位的数据输出锁存器缓冲器:PB作输出时,有锁存功能

端口C

1个8位数据输入锁存器:PC作输入时,没有锁存功能。

1个8位的数据输出锁存器缓冲器:PC作输出时,有锁存功能

2.A组控制和B组控制

8255A在使用时,PA和PB常作为独立的输入输出端口,端口C则配合PA,PB的工作。因此PA,PB,PC分为两组。

3.读写控制器

该部分控制8255与CPU的数据传输,它接收CS,A1,A0,WR,RD及RESET 信号

(三)8259A 中断控制器

中断控制器8259A 是INTEL 公司专门为控制优先级中断而设计开发的芯片,其内部结构逻辑主要由以下三部分组成:(1)逻辑控制(2)中断优先权判优先及屏蔽(3)辅助电路,编程结构由三组共10个寄存器构成,每个寄存器均为8位

1.寄存器分类情况: 第一组:IRR ,PR ,ISR

第二组:ICW1 ,ICW2,ICW3, ICW4 第三组:OCW!,OCW2,OCW3 2.8259的功能

(1)一个8259可管理8个中断请求,并把当前优先级最高的中断请求送到CPU 的INTR 端

(2)当CPU 响应中断时,为CPU 提供中断向量表

(3)8个外部中断优先级排列方式,可以通过对8259编程进行指定,也可以通过编程屏蔽某些中断请求,或者通过编程改变中断向量表

(4)允许9片8259级联,构成64级中断系统

四、系统连线图

计数器0

1.19MHz +5V

CLK 0GATE 0

OUT 0OUT 0连接8259的IRQ 0引脚计数器2

+5V

CLK 2GATE 2

OUT 2图1、计数器8253的0、2通道级联

8259

IRQ7

8255

PB0 PB7

\\\\\\\\\\\ SW-LED

UNIT D0 D7

、、、、、、、

图2 LED二极管与8255的连接线

五、连线图说明

图1 为8253的0、2通道级联的实验图,但是这个系统已经连好了,我只需连接OUT2到8259的IRQ7,GATE2连接+5V。

图2为8255芯片B端口的8个端口PB0——PB7与SW—LED的D0——D7连接,通过B端口的输出来控制二极管的显示情况。

六、程序流程图

流程图说明:先进行个芯片的初始化,,如8253和8255的初始化,8259的IRQ7设置向量表开屏蔽。随后就是主程序和中断服务程序。主程序:先是东直行,再东左拐,加起来的时间和是南禁止通行的时间。之后转换为南边通行,与东边类似。中断服务程序:进行显示倒计时,分两组显示,低位显示的是东边的倒计时,高位显示的是南边的倒计时。

模拟交通灯流程图

七、程序源代码

8253的初始化

MOV AL,37H ;给计数器0写控制字(00110111)

OUT 43H,AL

MOV AX 1190H ;.赋计数初值

OUT 40H,AL ;低八位的存储

MOV AL,AH

OUT 40H,AL ;高八位的存储

MOV AL,B7H ;给计数器2写控制字(10110111)

OUT 43H,AL

MOV AX 1000H ;.赋计数初值

OUT 42H AL ;低八位的存储

MOV AL,AH

OUT 42H,AL ;高八位的存储

8255的初始化

MOV AL,80H ;8255的初始化

OUT 63H,AL

8259向量表设置

PUSH DS;保存数据段

MOV AX,0000H

MOV DS,AX ;数据段清零

MOV AX,OFFSET IRQ7 ;取中断程序的入口地址(相对地址)

ADD AX,2000H ;加装载时IP=2000H地址(绝对地址)

MOV SI,003CH

MOV W[SI],AX ;填偏移地址

MOV SI,003EH

MOV AX,0000H ;填段地址

MOV W[SI],AX

IRQ7开屏蔽

IN AL,21H

AND AL,7FH ;开8259中断7

OUT 21H,AL

STI

主程序

START:

MOV CL,18H ;东直行24秒

MOV CH,1EH ;南禁行30秒

MOV AL,1EH ;东直行指示灯情况

OUT 61,AL

STI

A:

CMP CL,00H

JNZ A

6

MOV CL,CH ;东左拐6秒

MOV AL,2DH ;东左拐指示灯情况

OUT 61,AL

STI

D:

CMP CX,0000

JNZ D

MOV CL,1EH ;东禁行30秒

MOV CH,18H ;南直行24秒

MOV AL,4BH ;南直行指示灯情况

OUT 61,AL

STI

B:

CMP CH,00H

JNZ B

MOV CH,CL ;南左拐6秒

MOV AL,87H ;南左拐指示灯情况

OUT 61,AL

C:

CMP CH,00H

JNZ C

JMP START

IRQ7:;IRQ7中断服务程序

MOV AX,0001H

INT 10 ;DOS的10号功能调用,在显示器上显示

MOV BL,0AH

MOV AH,00H

MOV AL,CL

DIV BL ;低八位是商,高八位是余数

MOV DX,AX

MOV AL,DL

ADD AL,30H ;转换为10进制出来显示

MOV AH,01H

INT 10

MOV AL,DH

ADD AL,30H ;转换为10进制出来显示

MOV AH,01H

INT 10

DEC CL ;CL减1

MOV AX,0120H

INT 10 ;显示空格

MOV BL,0AH

MOV AH,00H

MOV AL,CH

7

DIV BL ;低八位是商,高八位是余数

MOV DX,AX

MOV AL,DL

ADD AL,30H ;转换为10进制出来显示

MOV AH,01H

INT 10

MOV AL,DH

ADD AL,30H ;转换为10进制出来显示

MOV AH,01H

INT 10

DEC CH ;CH减1

MOV AL,20H ;中断结束命令

OUT 20H, AL

IRET ;中断返回

八、设计过程中遇到的问题及解决方法

在这次实验中,我跟搭档总共花了两天的时间去做模拟交通灯,在实验中遇

到了很多的问题,但是我们都努力的去思考,终于把问题都解决了。下面是我实验中所遇到的问题及解决方法:

1、由于这个不是在电脑上面去敲打程序,是在TDN—MD教学系统,这个给我们添加了很大的难度,所以做实验前不能仅在脑子里想,一定要付诸行动。第一天我们在实验室中由于没有把实验的原理跟程序弄清楚,因此没有做出任何结果。于是我们回到寝室后去搜索了我们所要做实验所需的资料,并把实验的整个程序都整合出来,这样后在第二天我们做实验,我们就很有目的,做起实验来就很有效果。

2、在编写实验中,我们发现了程序中的很多错误,一一改正。例如:在进行

IRQ7的中断服务程序的把16进制转换为10进制显示的程序中:

MOV AH,00H

MOV AL,CL

DIV 0AH

敲打时总是出现错误,后来我们觉得在DIV的除数时必须先赋值给一个寄存器才

能实现,于是我们修改为

MOV BL,0AH

MOV AH,00H

MOV AL,CL

DIV BL

就实现了我们所要的结果;还有在进行模拟交通灯的循环显示时,总是不能实现东左拐,它的那6秒时间无故的消失了,直接从东直行到了南直行。它原先的代

码为:

A:

CMP CL,00H

JNZ A

MOV CL,CH ;东左拐6秒

MOV AL,2DH ;东左拐指示灯情况

OUT 61,AL

8

CLI

MOV CL,1EH ;东禁行30秒

MOV CH,18H ;南直行24秒

MOV AL,4BH ;南直行指示灯情况

OUT 61,AL

于是我们觉得东左拐时没有被IRQ7中断使用,但是我们起先也不知道从何改,

我们连续敲了很多次的代码,总是出现一样的问题,于是没办法,我们就尝试把

代码改成这样:

A:

CMP CL,00H

JNZ A

MOV CL,CH ;东左拐6秒

MOV AL,2DH ;东左拐指示灯情况

OUT 61,AL

STI

D:

CMP CX,0000

JNZ D

MOV CL,1EH ;东禁行30秒

MOV CH,18H ;南直行24秒

MOV AL,4BH ;南直行指示灯情况

OUT 61,AL

改完后,竟然都能够实现模拟交通灯的循环模式,我们都很高兴。于是我们对这

个的解释:未改前,没有去调用中断服务程序,直接到了南直行,改了之后,就

循环的都调用了中断服务程序。

3、在做实验时,要认真去敲打代码,并在敲打过程中要带着头脑去,这样才能

发现程序的错误,好几次我都没发现一些小错误,我的搭档认真去敲打时,发现

了细微的错误,使陈恭又进了一步。所以我的结论是在敲打代码时,不仅要用心

也要用脑。

4、由于我们是用显示器去显示倒计时的,没有使用8255去驱动数码管去实现倒

计时,这是我们现在没有解决的问题。这个问题有点艰难,我们就没去深究了,

希望其他解决后能给我们指导。

九、设计心得

不得不说,完成这次课程设计的过程中确实有很多收获和提高,不仅学到了汇编这门课程在课堂上学不到的东西,也让我知道了做一件事情要坚持到底,不要害怕困难,有付出就会有结果。同时体会最深的一点是:只有认真动手去做,才能真正做出自己想要的东西和达到课程设计的目的。记得在课程设计之前我觉得这个很容易,于是第一天就带着自己所准备的认为有用的资料来到了实验,可是在那里却是毫无头绪,才发现事情没想的那么简单,于是我们就回去了,我的搭档去网上找了一些资料,我们把整个程序都写了下来,在第二天往实验去验证了,虽然也不是很容易的就得到自己想要的结果,但是我们坚持了,终于在共同的努力下完成了整个过程。其次的一点体会是:1+1>2。我与那位同学一起讨论、一起推断(因为很多都不懂,所以有时要推断一些语句的作用),有些我没注意到的地方他注意到了,有些他没注意到的地方我注意到了,这样,我们才能互补的完成了这个课程设计。当两个人朝同一个目标共同努力的时候,效果是超过预期的,它比两个人单独思考要好得多。两个人一起讨论的时光是快乐的。还有一点体会是:不能掉进死胡同里了。在这次课程设计中,我也曾钻进“死胡同”,一时半会找不到出口。以上就是我的一些体会.

这次课程设计真的让我长了见识,激发了我对汇编的兴趣,课程设计很有必要,通过课程设计让我们对所学的东西有了更深的认识。更重要的是,我对自己所学的专业又增加了兴趣,同时激发了我的求知欲望,让我对自己的前途更加的充满了希望。

参考文献

[1] 谢瑞和等编著,微机原理与接口技术[M].北京:高等教育出版社, 2007. 5

[2] 微机原理与接口技术(8086)实验指导书

汇编语言课程设计

沈阳大学

2.3 MASM的介绍 MASM是微软公司开发的汇编开发环境,拥有可视化的开发界面,使开发人员不必再使用DOS环境进行汇编的开发,编译速度快,支持80x86汇编以及Win32Asm是Windows下开发汇编的利器。它与windows平台的磨合程度非常好,但是在其他平台上就有所限制,使用MASM的开发人员必须在windows下进行开发,历经二三十年的发展,目前MASM的版本已升至6.15,支持MMX Pentium、Pentium II、Pentium III及Pentium 4等指令系统。 2.4总体设计功能 本次课程设计的内容是采用汇编语言设计一个运行于计算机的“霓虹灯”的模拟显示 程序,由$及*字符相间,从两侧向中间螺旋汇聚直至形成一个矩形,这就要求该霓虹灯能够动态地进行变化;霓虹灯模拟显示程序主要是进行程序循环调用,可以通过CMP、JMP、JZ、RET等命令进行跳转。由于是霓虹灯的模拟显示,因此在进行程序循环调用前需要进行数据段定义,以使子程序在进行调用时能够根据数据段的定义来执行,最后显示结果。 定时器中断处理程序:计数器中断的次数记录在计数单元count中,由于定时中断的引发速率是每秒18.2次,即计数一次为55ms,当count计数值为18时,sec计数单元加一(为1秒)。 视频显示程序设计:一般由DOS 或BIOS调用来完成。有关显示输出的DOS功能调用不多,而BIOS调用的功能很强,主要包括设置显示方式、光标大小和位置、设置调色板号、显示字符、显示图形等。用INT 10H中断即可建立某种显示方式。用DOS功能调用显示技术,把系统功能调用号送至AH,把程序段规定的入口参数,送至指定的寄存器,然后由中断指令INT 21H来实现调用。 键盘扫描程序设计:利用DOS系统功能调用的01号功能,接受从键盘输入的字符到AL寄存器,以及检测键盘状态,有无输入,并检测输入各值。 2.5详细功能设计 2.5.1主程序功能 主程序通过调用各个子程序来实现清屏,改变图形等功能,具体调用过程如图1所示。 沈阳大学

汇编与微机原理课程设计报告

微机接口课程设计报告 (题目:模拟自动门) 指导老师郭兰英 班级2015240204

目录 一概述 (1) 1.1 课程设计名称 (1) 1.2 课程设计要求 (1) 1.3 课程设计目的 (1) 二设计思想 (1) 三实施方案 (2) 3.1 获得传感器和“门”的状态 (2) 3.2 驱动步进电机和点阵模块 (2) 3.3 实现硬件延时 (3) 四硬件原理 (3) 4.1 中断控制器8259 (4) 4.2并行接口8255 (4) 4.3 定时/计数器8254 (5) 4.4 点阵LED显示屏 (5) 4.5 步进电机 (6) 4.6 红外距离传感器 (7) 五软件流程 (8) 六程序运行结果及分析 (11) 6.1 开门状态 (11) 6.2 关门状态 (12) 6.3 关门操作进行时中断到开门操作 (14)

6.4特殊状态 (15) 七个人感想 (16) 八附录 (18)

一、概述 1.1课程设计名称 模拟自动门 1.2课程设计要求 1)用汇编语言编程完成硬件接口功能设计。 2)硬件电路基于80x86微机接口。 3)程序功能包含:步进电机转动、点阵显示开关门、传感器检测是否有人、8254延时。 4)传感器检测有人时开门,门全开后延时几秒关门,若关门时检测到有人,立刻开门。 1.3课程设计目的 通过本课程设计,让学生对微机系统有一个较面的理解,对典型数字接口电路的应用技术有一个较深入的掌握,并对应用系统进行硬件原理和软件编程进行分析、设计和调试,达到基本掌握简单微型计算机应用系统软硬件的设计方法,提高项目开发能力的目的。要求同学分组完成课题,写出课程设计说明书,画出电路原理图,说明工作原理,编写设计程序及程序流程图。 二、设计思想 本程序主要功能是模拟商场等公共场所的自动门,实现有物体靠近并被传感器检测到时发生一系列变化的效果,模拟实现开门关门的功能。 为了尽量模拟真实场景下的自动门状态变化,本程序主要可以实现以下功能: 1、当传感器可检测范围内检测到物体,并且“门”为“关”的状态,立即“打开门”,即用一系列的硬件动作模拟自动门打开的动作和状态。 2、当“门”完全打开后一段时间后,传感器范围内检测不到物体时,立即“关闭门”, 用一系列的硬件动作模拟自动门关闭的动作和状态。

汇编语言程序设计实验报告

微机原理实验报告 实验名称汇编语言程序设计 一、实验目的 1、掌握Lab6000p实验教学系统基本操作; 2、掌握8088/8086汇编语言的基本语法结构; 3、熟悉8088/8086汇编语言程序设计基本方法 二、实验设备 装有emu8086软件的PC机 三、实验内容 1、有一个10字节的数组,其值分别是80H,03H,5AH,FFH, 97H,64H,BBH,7FH,0FH,D8H。编程并显示结果:如果数组是无符号数,求出最大值,并显示; 如果数组是有符号数,求出最大值,并显示。 2、将二进制数500H转换成二-十进制(BCD)码,并显示“500H 的BCD是:” 3、将二-十进制码(BCD)7693转换成ASCII码,并显示“BCD 码7693的ASCII是:” 4、两个长度均为100的内存块,先将内存块1全部写上88H,再 将内存块1的内容移至内存块2。在移动的过程中,显示移动次数1,2 ,3…0AH…64H(16进制-ASCII码并显示子程序) 5、键盘输入一个小写字母(a~z),转换成大写字母 显示:请输入一个小写字母(a~z): 转换后的大写字母是: 6、实现4字节无符号数加法程序,并显示结果,如99223344H + 第1页

99223344H = xxxxxxxxH 四、实验代码及结果 实验代码见代码附录 1.1程序运行结果 图1 无符号最大值结果截图 1.1 程序运行结果

图2 有符号最大值截图2.0 程序运行结果

图3 BCD码显示3.0 程序运行结果

图4 ASCII码显示4.0 程序运行结果

图5 移动次数显示5.0 程序运行结果

汇编课程设计

方式,这个设置可以用BIOS调用中00号功能的设置显示方式功能,其入口参数为:AL=显示方式,出口参数:无。显示方式设置好之后,就要显示提示用户信息的字符串,可预先将要显示的字符串放在内存中,显示字符串要用DOS调用中的I/O设备功能调用,其入口参数为DS:DX=字符串首址,字符串需要以$结束,其出口参数无。这样一个具有提示信息的界面就产生了,接着就需要其要具有可以输入一个字符的功能,由此确立了主程序要有使用户进行键盘输入的指令,这条指令要用到设备I/O 的功能调用,使用21H的01H号功能的键盘输入字符功能,其入口参数:无,出口参数为AL=输入字符;完成以上的汇编语言程序设计的前期工作之后就要进行对输入的字符进行判断了,而主程序只能判断出大写字母D、T、E这三个字符,判断用户输入的字符是什么字符可以根据其ASCII值来判定,故可将其输入的字符的ASCII值分别于D、T、E相减来判断,若用户按下的是键盘上的大写字母D,则主程序就调用一个显示当前系统日期的子程序来完成显示日期的功能;若用户按下键盘上的大写字母T,则主程序调用显示时间子程序,完成显示当前系统时间的功能;若用户按下键盘上的大写字母E,则主程序调用退出子程序,退出程序:若用户按下出了这三个按键之外的其他按键,则主程序只显示用户提示信息,等待用户的继续输入,直至用户输入大写字母E,程序才能正常结束。这个按输入字符而执行相应程序的功能决定了其判断字符的程序段结构为分支结构或循环结构。 (2)主程序流程图 由主程序完成的功能及实现方式可确定其流程图的结构,主程序的流程图如图1所示。

Y N

N Y N N Y 图1 主程序流程图 3.2.2子程序功能 (1)显示日期子程序完成的功能 显示日期子程序DATE通过调用DOS下的2AH号功能,将日期值传送进寄存器CX和DX中,然后再调用将日期数值转换成ASCII码字符的子程序,最后调用BIOS下的13H号的显示字符串的功能,将日期显示在矩形框中。 此函数的入口条件是:AL=’D’;出口条件是:要显示的日期字符串在以BP指出的附加段中。 (2)显示时间子程序完成的功能 显示时间子程序TIME调用DOS下的2CH号功能,将时间传送进寄存器CX和DX中,

汇编语言-课程设计1

) 汇编语言课程实验报告 实验名称 课程设计1 实验环境 硬件平台:Intel Core i5-3210M 操作系统:DOSBox in Windows 软件工具:Turbo C , Debug, MASM 实验内容 《 将实验7中的Power idea公司的数据按照下图所示的格式在屏幕上显示出来。 实验步骤 1.要完成这个实验,首先我们需要编写三个子程序。第一个子程序是可以显示字符串到屏 幕的程序,其汇编代码如下: ;名称:show_str

;功能:在屏幕的指定位置,用指定颜色,显示一个用0结尾的字符串 ;参数:(dh)=行号,(dl)=列号(取值范围0~80),(cl)=颜色,ds:si:该字符串的首地址 ;返回:显示在屏幕上 ¥ show_str: push ax push cx push dx push es push si push di mov ax,0b800h - mov es,ax mov al,160 mul dh add dl,dl mov dh,0 add ax,dx mov di,ax mov ah,cl . show_str_x: mov cl,ds:[si] mov ch,0 jcxz show_str_f mov al,cl mov es:[di],ax inc si inc di 【 inc di jmp show_str_x show_str_f: pop di pop si pop es pop dx pop cx } pop ax ret 2.第二个程序是将word型数据转换为字符串,这样我们才能调用第一个程序将其打印出

汇编课程设计报告

四川大学计算机学院 学生实验报告 实验名称:汇编课程设计报告 指导教师:唐宁九 姓名:廖偲 学号:0943111209 班级:软件09级一班 日期:20101114

实验报告 班级______________姓名_______________学号_________ 一、实验一:DEBUG基本命令与数据传输指令 二、实验的目的和要求: ? 1.熟练掌握DEBUG的基本调试命令,能够使用DEBUG编写、调试汇编语言程序片段。 ? 2.在理解数据传输指令的基础上按照实验内容中指定的程序片段对程序进行调试和记录; 三、实验的环境: 1.硬件环境:cpu 2.26gHZ、内存2G、显存1G、64位总线笔记本电脑 2.软件环境:win7 32位操作系统、8086/8088指令集系统(在windows系统中)、masm的汇编工具。 四、源程序清单: ?MOV AL, 01H ?MOV SI, 0002H ?LEA SI, [SI] ?MOV BYTE PTR [SI], 80H ?LAHF ?XCHG AL, AH ?SAHF ?XCHG AH, [SI] ?SAHF 五、操作内容: 1.从cmd在debug下进入用A命令进行汇编 格式: A [地址] 功能:从键盘输入汇编程序, 并逐条地把汇编指令翻译成机器代码指令存入对应内存单元。如果不指定汇编地址, 则以CS:IP为地址 2. 反汇编命令U使用 格式: U [地址]/[地址范围] 功能: 将指定地址范围内的机器代码翻译成汇编源程序指令显示出来, 并同时显示地址及代码。 注意: 反汇编时一定确认指令的起始地址, 否则得不到正确的结果。 3.寄存器查看/编辑命令r或r寄存器名称 功能: 显示当前所有寄存器内容, 状态标志及将要执行的下一条指令的地址、代码和汇编指令形式。

微机原理与汇编语言课程设计报告

西北师范大学 计算机科学与工程学院 微机原理与汇编语言 课程设计报告 设计题目:中断控制点阵显示与音乐模块姓名: 学号: 专业班级: 系所中心: 指导老师: 起讫时间: 设计地点: 2016年8月20日

摘要 使用8086汇编语言,在唐都TD-PITE实验箱上进行硬件连线,在计算机上采用与该实验箱配套的软件进行输入,观察实验结果。设计思路是利用在实验箱上i386内集成的两片8259芯片分别进行中断,通过实验箱上的两个脉冲开关发送信号到总线上开放的两个中断口,送入CPU内部的8259中。此时按下脉冲开关kk1+,第一个中断发生,在16*16点阵上循环滚动显示“西北师大汇编设计李泓毅”,若按下kk2+则第二个中断发生,执行音乐模块子程序,利用8254芯片开始响应预先编排好的音乐。 【关键词】级联中断;8259芯片;16*16点阵;8254芯片;SPK音乐模块;脉冲信号

目录 摘要 (2) 第一章课程设计 (2) 1.1 目的和任务 (2) 1.2 设计环境、设备与器材 (2) 第二章设计内容和方案 (3) 2.1 设计内容 (3) 2.2 设计方案 (3) 第三章课程设计相关原理简述 (3) 第四章设计实现 (4) 4.1 系统设计框架结构 (4) 4.2 系统硬件设计 (4) 4.3 系统软件设计 (6) 4.4 程序流程图 (6) 4.5 核心数据结构 (8) 4.6 关键代码片段分析 (10) 第五章设计验证 (10) 5.1 验证步骤及结果 (10) 5.2 数据分析 (10) 5.3 遇到的问题及解决 (11) 5.4 需要讨论的其它问题 (11) 5.5 结论 (11) 第六章设计总结 (12) 第七章本课程教学建议 (13) 第八章参考文献 (13) 第九章附录:源代码 (13) 第一章课程设计 1.1 目的和任务 使用8259芯片进行中断程序设计,在第一个中断中响应字模显示模块,在第二个中断中响应音乐发声模块。

汇编课程设计

燕山大学 汇编语言课程设计说明书 题目:计算机钢琴程序 交通灯控制系统 学院(系):信息科学与工程学院 年级专业: 10级计算机科学2班 学号: 100104010113 学生姓名:马强 学号: 100104010116 学生姓名:夏洋 指导教师:何海涛、邹晓红 完成日期: 2013年7月3日

目录 1.课程设计的目的和意义........................................................................................................... - 2 - 1.1课程设计目的................................................................................................................ - 2 - 1.2课程设计的意义............................................................................................................ - 2 - 2.题目一:计算机钢琴程序....................................................................................................... - 2 - 2.1系统的主要功能............................................................................................................ - 2 - 2.2总体设计方案................................................................................................................ - 2 - 2.2.1扬声器驱动方式................................................................................................. - 2 - 2.2.2延时原理............................................................................................................. - 3 - 2.2.3键盘控制发声程序............................................................................................. - 4 - 2.2.4设计总结............................................................................................................. - 5 - 2.3作品使用说明................................................................................................................ - 6 - 3.题目二:交通灯控制系统....................................................................................................... - 6 - 3.1系统的主要功能............................................................................................................ - 6 - 3.2 系统工作原理............................................................................................................... - 6 - 3.2.1 8259的工作原理................................................................................................ - 6 - 3.2.2 8255A的工作原理:...................................................................................... - 7 - 3.2.3 8253的工作原理:............................................................................................ - 7 - 3.3总体设计方案................................................................................................................ - 7 - 3.3.1程序流程图......................................................................................................... - 8 - 3.3.2接口电路图....................................................................................................... - 11 - 3.4交通灯的设计总结...................................................................................................... - 11 - 4.课程设计心得体会................................................................................................................. - 12 - 5.参考文献................................................................................................................................. - 12 - 6.附录:程序代码..................................................................................................................... - 12 - 6.1计算机钢琴程序代码.................................................................................................. - 12 - 6.2交通灯控制系统代码.................................................................................................. - 14 -

汇编课程设计报告

汇编课程设计报告

学 号: 课程设计 题目打印水仙花数 学院计算机科学与技术 专业计算机科学与技术 班级 姓名 指导教师

武汉理工大学《汇编语言程序设计》课程设计 2012 年 6 月28 日 课程设计任务书 学生姓名:专业班级: 指导教师:工作单位:计算机科学与技术学院 题目: 打印水仙花数 初始条件: 理论:完成了《汇编语言程序设计》课程, 对微机系统结构和80系列指令系 统有了较深入的理解,已掌握了汇 编语言程序设计的基本方法和技 巧。 实践:完成了《汇编语言程序设计》的4 个实验,熟悉了汇编语言程序的设 计环境并掌握了汇编语言程序的 调试方法。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 进一步理解和掌握较复杂程序的设计方 法,掌握子程序结构的设计和友好用户界 3

2.1简要分析 2.1.1原理说明 可以用标签来接收三位数,标签的好处在于可以限制输入的位数,并且通过实际输入位数可以直接进行一部分的异常处理。 将数存到标签后,因为是以ASCII码的形式存的,所以需要进行转换,将其变成十六进制数,转换后将数字存到申请的内存字中。在转换成十六进制数的过程中,可以对输入的数进行异常处理,判断是否输入有误。 在输出水仙花数时,设置一个计数器,从100开始循环判断,直到等于用户输入的数为止,依次判断是否为水仙花数,决定是否输出该数。 在输出时,分别取出水仙花数的个、十、百位数,转换成ASCII码再输出。 系统提示是否继续后,程序对用户输入的信息进行判断,若为y或Y则系统回到初始状态,若为n或N则退出系统,若为其他则提示输入错误并重新输入。 2.1.2程序流程图

汇编语言课程设计报告——实现加减乘除四则运算的计算器

汇编语言课程设计报告 ( 2011 -- 2012 年度第 2 学期) 实现加减乘除四则运算的计算器 专业 计算机科学与技术 学生姓名 班级 学 号 指导教师 完成日期

目录 目录 (2) 1概述 (1) 1.1 设计目的 (1) 1.2 设计内容 (1) 2系统需求分析 (1) 2.1 系统目标 (1) 2.2 主体功能 (1) 2.3 开发环境 (1) 3 系统概要设计 (2) 3.1 系统的功能模块划分 (2) 3.2 系统流程图 (3) 4系统详细设计 (3) 5测试 (4) 5.1 测试方案 (4) 5.2 测试结果 (4) 6小结 (5) 参考文献 (6) 附录 (7) 附录源程序清单 (7)

实现加减乘除四则运算的计算器 1 概述 1.1 设计目的 本课程设计是在学完教学大纲规定的全部内容、完成所有实践环节的基础上,旨在深化学生学习的汇编语言课程基本知识,进一步掌握汇编语言程序设计方法,提高分析问题、解决问题的综合应用能力。 1.2 设计内容 能实现加、减、乘、除的计算;该程序接受的是16进制数;执行时,需要在文件名后直接跟上计算表达式,如在命令提示符下执行结果如下: c:\tasm>js 3+2 5 2 系统需求分析 2.1 系统目标 本次汇编语言课程设计的最终目的是要实现一个简单加减乘除四则运算的计算器,要求编写一个程序,每运行一次可执行程序,可以实现数的加减乘除四则运算。比如,十进制数的加减乘除四则运算。我们曾经学习过两个具体数字进行加减法运算,但是对于简单计算器用汇编语言实现难点在于这两个要做运算的数是未知的,是由自己调用中断输入到屏幕上并要用程序存储起来的数,然后才能对这两个数进行运算,而且做的是加法运算、减法运算乘法运算还是除法运算也未可知,为此我们还要判断用户所输入的运算是四则运算中的哪一个运算。此外,运算过程中的进位或是借位,选择用什么样的方式进行输出,如何实现清屏等也是要解决的问题。 2.2 主体功能 系统分析主要包括设计的功能分析和系统的流程,功能分析放在首位,每一个软件都要能满足一定的功能才有使用价值。根据功能需求来创建应用程序。 本设计的功能如下: 1、输入2个数,先判断是加减运算还是乘除运算,再进行计算 2、判断符号是否为运算符 3、回车为换行符 4、用十进制或十六进制输出运算结果 2.3 开发环境 TASM5.0集成环境

2016微机原理与汇编语言课程设计参考题目(1)

微机原理课程设计题目与要求 微机原理课程设计说明: 1. 要求使用 A4 纸打印,必须有封面和目录。 封面内容有课设题目、班级、学号、姓名、指导教师、日期等内容。 2. 课设内容一般应包含如下部分: ①课设目的、内容; ②问题分析、设计思路及原因; ③电路设计及功能说明,硬件原理图(包括接口芯片简介); ④软件部分的程序流程图,算法和使用的编程技巧; ⑤汇编源程序清单,对关键的语句(段)要给出简洁的注释; ⑥设计过程中的主要难点(自己遇到的)及解决思路和办法; ⑦课设结果及分析; ⑧收获、体会和建议。 选题规则: 1-2 班同学按顺次排号,名单附件2,一共88个人,每组4人,分22组,共22个题目,每组选举一个联系人,代表本组抽选题目,并加入讨论群,用于讨论实验事宜。 论文要求: 1.必须采用统一的稿纸。 2.封面按照附件1标准格式书写; 3.课程设计(论文)必须明确包含:题目、题目分析、硬件电路图(仅硬件题目提交)件流程框图、设计思路说明、程序清单(需加必要解释); 4.硬件电路图用A4纸单独绘制,统一装订在论文中; 5.题目相同的论文必须有不同之处,否则所有完全相同的论文都以0分计。 成绩评定:课程设计成绩分两部分,设计报告占40%,设计作品占60%(演示)。 硬件演示软件平台:Proteus、Labview或其他PC平台。

题目1 编程显示学校图书馆广场雕像。 用字符组成汽车图形,在屏幕显示从左向右开动的汽车。 题目2 人名排序程序。 从键盘接收十个人名,字母上升次序显示所输入的人名,每一个人名占一行。 题目3 多功能密码锁 密码锁在输入密码正确的条件下输出开锁电平,控制电控锁开启,同时显示 00 字样。当输入密码错误时,发出错误警告声音,同时显示FF 字样。当六次误码输入的条件下,产生报警电平报警。还可以实现对密码的修改,修改成功后,蜂鸣器发出确认音。 设计任务: 1、选用 8086 和适当的存储器及接口芯片完成相应的功能。 2、用 LED 显示器显示电子锁的当前状态。 3、画出详细的硬件连接图。 4、给出程序设计思路、画出软件流程图。 5、给出地址分配表。 6、给出所有程序清单并加上必要注释。 7、完成设计说明书(列出参考文献,所用器件型号) 题目4 汽车倒车测距仪 设计内容及要求: 设计一个微机控制的汽车倒车测距仪,能测量并显示车辆后部障碍物离车辆的距离,同时用间歇的“嘟嘟”声发出警报,“嘟嘟”声间隙随障碍物距离缩短而缩短,驾驶员不但可以直接观察到检测的距离,还可以凭听觉判断车后障碍物离车辆距离的远近; ①开机后先显示“———” ,并有开机指示灯。 ② CPU 发射超声波 1ms,然后显示 60ms;即1ms+60ms 为一个工作周期,等待回波,在次周期内完成一次探测。

(最新版)基于51单片机汇编语言的数字钟课程设计报告含有闹钟万毕业论文

单片微型计算机课程设计报告 多功能电子数字钟 姓 名 学

教师 许伟敏 电气二班 林卫

目录 一:概述 (1) 二:设计基本原理简介 (2) 三:设计要求及说明 (3) 四:整体设计方案 (4) 系统硬件电路设计 4 系统软件总流程设计模块划分及分析5 6 五:单模块流程设计 (8) 各模块设计概述、流程图模块源程序集合及注释8 13 六:单模块软件测试 (23) 七:系统检测调试 (24) 硬件电路调试 软件部分烧写调试 八:系统优化及拓展 (26) 九:心得体会 (28)

单片微型计算机课程设计 一、概述 基于汇编语言的电子数字钟概述 课程设计题目:电子数字钟 应用知识简介: ● 51 单片机 单片机又称单片微控制器,它不是完成某一个逻辑功能 的芯片,而是把一个计算机系统集成到一个芯片上。作为嵌 入式系统控制核心的单片机具有其体积小、功能全、性价比高等诸多优点。51 系列单片机是国内目前应用最广泛的单片机之一,随着嵌入式系统、片上系统等概念的提出和普遍接受及应用,51 系列单片机的发展又进入了一个新的阶段。在今后很长一段时间内51 系列单片机仍将占据嵌入式系统产品的中低端市场。 ●汇编语言 汇编语言是一种面向机器的计算机低级编程语言,通常是为特定的计算机或系列计算机专门设计的。汇编语言保持了机器语言的优点,具有直接和简捷的特点,其代码具有效率高实时性强等优点。但是对于复杂的运算或大型程序,用汇编语言编写将非常耗时。汇编语言可以与高级语言配合使用,应用十分广泛。 ● ISP ISP(In-System Programming)在系统可编程, 是当今流行的单片机编程模式,指电路板上的空白元器 件可以编程写入最终用户代码,而不需要从电路板上取 下元器件。已经编程的器件也可以用ISP方式擦除或再 编程。本次课程设计便使用ISP方式,直接将编写好的 程序下载到连接好的单片机中进行调试。 选题 系统功能分析 硬件电路设计 整体流程设计 及模块划分 模块流程设计 模块编 码测试 系统合成调 试编译 下载调试(含硬件电路调试及软件烧写调试) 验收 完成总结报告课程设计流程图↑ 选题目的及设计思想简介: 课程设计是一次难得的对所学的知识进行实践的机会,我希望通过课程设计独立设计一个简单的系统从而达到强化课本知识并灵活运用的目的。电子数字钟是日常生活钟随处可见的简单系统。对电子数字钟的设计比较容易联系实际并进行拓展,在设计中我将力求尽可能跳出课本的样板,从现实生活中寻找设计原型和设计思路,争取有所突破。 如图所示便是我本次课程设计流程图,设计的整个过程运用自顶向下分析、自底向上实现的

(新)汇编语言课程设计四则运算

计算机与信息工程学院《汇编语言》课程设计四则运算器的设计 专业:计算机科学与技术 班级:控制11-2班 姓名: 倪天天 学号:2011025745 指导教师:郝维来 2013年6月28日

摘要 计算器是最简单的计算工具,简单计算器具有加、减、乘、除四项运算功能。想要用汇编语言实现简单的计算器,就必须通过对数据存储,寄存器的使用,加减乘除相关指令以及模块的调用等汇编语言知识进行运用,以实现一个基本功能完善,界面友好,操作简便易行的计算器。用汇编语言实现简单计算器还涉及到输入输出模块的设计,加减乘除运算的判断以及退出程序的判断的设计。通过对各种指令的合理使用,设计各个功能模块。当实现各个程序模块后,通过程序的调用最终实现一个简单的计算器。 关键词:计算器,汇编语言,四则运算,功能模块

Abstract Calculator is the easiest calculation tools, a simple calculator with addition, subtraction, multiplication, division four arithmetic functions. Want to use assembly language to achieve a simple calculator, you must pass on the data storage, register usage, addition, subtraction, and related instructions such as assembly language module calls the use of knowledge in order to achieve a basic functional, user-friendly, easy to operate easy calculator. Using assembly language to achieve a simple calculator also involves the design of input and output modules, the judgment of arithmetic operations and exit the program to judge design. Through the rational use of various commands, design various functional modules. When implementing various program modules, through a call to the ultimate realization of the program a simple calculator. Keyword:Calculator, assembly language, four arithmetic, functional modules

《汇编语言》课程设计任务书

学生姓名:专业班级: 指导教师:工作单位:计算机科学与技术学院 题目: 电话号码本编辑和查找程序的设计与实现 初始条件: 理论:完成了《汇编语言程序设计》课程,对微机系统结构和80系列指令系统有了较深入的理解,已掌握了汇编语言程序设计的基本方法和技巧。 实践:完成了《汇编语言程序设计》的4个实验,熟悉了汇编语言程序的设计环境并掌握了汇编语言程序的调试方法。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 进一步理解和掌握较复杂程序的设计方法,掌握子程序结构的设计和友好用户界面的设计。具体的设计任务及要求: 1)建立一个可存放50项的电话号码表,每项包括人名及电话号码两部分; 2)程序可接受输入人名及相应的电话号码,并将他们加入电话号码表中; 3)凡有新的输入后,程序应按人名对电话号码表重新排序; 4)程序可接受需要查找电话号码的人名,并从电话号码表中查出其电话号码,并显示出来。 5)程序采用子程序结构,结构清晰; 6)友好清晰的用户界面,能识别输入错误并控制错误的修改。 在完成设计任务后,按要求撰写课程设计说明书;对课程设计说明书的具体要求请见课程设计指导书。 阅读资料: 1)《IBM—PC汇编语言程序设计实验教程》实验2.4 2)《IBM—PC汇编语言程序设计(第2版)》例6.11 时间安排: 设计安排一周:周1、周2:完成系统分析及设计。 周3、周4:完成程序调试,和验收。 周5:撰写课程设计报告。 指导教师签名:年月日 系主任(或责任教师)签名:年月日

学生姓名:专业班级: 指导教师:工作单位:计算机科学与技术学院 题目: 乐曲程序的设计与实现 初始条件: 理论:完成了《汇编语言程序设计》课程,对微机系统结构和80系列指令系统有了较深入的理解,已掌握了汇编语言程序设计的基本方法和技巧。 实践:完成了《汇编语言程序设计》的4个实验,熟悉了汇编语言程序的设计环境并掌握了汇编语言程序的调试方法。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 进一步理解和掌握程序直接控制I/O方式,掌握计算机发声程序的设计。具体的设计任务及要求:1.采用位触发方式编写程序,使计算机发出音响并演奏乐曲(例如《两只老虎》等)。 1)进一步理解程序直接控制I/O方式和位触发方式控制声音的工作原理。 2)一首乐曲是由不同频率和节拍的音调组成,因此控制脉冲的频率和持续时间是编写乐曲程序的关键。根据已知的音符频率对照表,设置乐曲的频率表和节拍时间表; 3)编写程序并调试通过。 2.了解定时器的工作原理,掌握利用定时器产生声音的方法,使计算机演奏乐曲(例如《两只老虎》等)。编写程序并调试通过。 在完成设计任务后,按要求撰写课程设计说明书;对课程设计说明书的具体要求请见课程设计指导书。 阅读资料: 1)《IBM—PC汇编语言程序设计实验教程》3.1节 2)《IBM—PC汇编语言程序设计(第2版)》10.4节,10.5节 时间安排: 设计安排一周:周1、周2:完成系统分析及设计。 周3、周4:完成程序调试,和验收。 周5:撰写课程设计报告。 指导教师签名:年月日 系主任(或责任教师)签名:年月日

汇编语言课程设计报告

课程设计报告 课程名称课题名称 汇编语言程序设计 1.显示彩色菱形 2.显示系统当前时间 专业 班级 学号 姓名 指导教师 年月日

课程设计任务书 课程名称汇编语言程序设计 课题 1.显示彩色菱形 2.显示系统当前时间专业班级 学生姓名 学号 指导老师 审批 任务书下达日期年月日 任务完成日期年月日

一、设计内容与设计要求 1.设计内容:通过本周的课程设计,学生能够巩固所学的基础知识,并能 够使学生更加熟练运用汇编程序设计语言来掌握综合汇编程序设计的方法和过程,以及为设计其它应用软件提供帮助,进而提高学生的软件设计能力。 (1)、编制一计算比赛成绩的程序,要求完成以下功能: a、9 名评委,每个评委给分范围为 0~100(整数); b、9名评委给分中,去掉一个最高分和一个最低分,剩余7 名评委的平均分即为参赛者的得分(精确到小数点二位); c、将得分在光标位置处显示出来。 (2) 、编制一程序,要求接收从键盘输入的一个班的学生成绩,并存放于30 字的 grade 数组中,各数据的格式为: 学号,成绩 1,成绩 2,?,成绩 5 然后根据 grade 中的学生成绩,把学生名次填入rank 数据组中,并显示出来,格式为:学号,名次 (3)、利用 INT 1CH(大约每秒中断 18.2 次)编写一个中断驻留程序,要求在屏幕的右 上角显示计算机中当前系统时间,显示格式为 时:分: 秒:1/100 秒 (4)、输入一个菱形的两条对角线长,在屏幕上用‘ * ’号画出一个彩色的菱形。 (5)、设置图形方式并显示彩条,要求: 选择背景色为蓝色,调色板为0,然后每行显示一种颜色,每四行重复一次, 一直到整个屏幕都显示出彩条 2.设计要求: 掌握结构化程序设计的主体思想,以自顶向下逐步求精的方法编制程序解决一 些实际的问题,为将来编写软件积累一些典型的案例处理经验。 (1)、设计正确,方案合理。 (2)、界面友好,使用方便。 (3)、程序精炼,结构清晰。 (4)、设计报告 5000 字以上,含程序设计说明,用户使用说明,源程序清单及程序框图。 (5)、上机演示。 (6)、按学号顺序选课题号,并在规定的时间内独自完成相关课题的汇编源程序编

汇编语言课程设计报告

农林大学金山学院 课程设计报告 课程名称:汇编语言课程设计 课程设计题目:动画设计“我爱大自然”姓名: 系:信息与机电工程系 专业:电子信息工程 年级:2008级 学号:082230066 指导教师:\ 职称:助教 2009~2010学年第二学期

目录 1 课程设计的目的 (2) 2 课程设计的要求 (2) 3课程设计报告容 (2) 3.1设计思路 (2) 3.2程序流程图 (2) 3.3设计源程序 (5) 3.4动画示意图 (19) 4 总结 (20) 5参考文献 (20) 6评分标准 (21)

动画设计“我爱大自然” 一、课程设计的目的 《汇编语言课程设计》是电子信息工程专业集中实践性环节之一,是学习完《汇编语言》课程后进行的一次全面的综合练习。其目的是: 培养学生熟练掌握汇编语言指令系统,深化和巩固指令系统和编程方法,提高学生的编程应用能力。为将来从事专业工作打下基础,培养良好的职业道德和严谨的工作作风。 二、课程设计的要求 1)具备初步的独立分析和解决问题的能力; 2)初步掌握问题分析、系统设计、程序编码、测试等基本方法和技能; 3)提高综合运用所学的理论知识和方法的能力; 4)训练用系统的观点和软件开发一般规进行软件开发,培养科学的工作方法和作风; 5)设计的题目要求达到一定工作量,并具有一定的深度和难度; 6)编写出课程设计说明书。 三、课程设计报告容 (一)设计思路 “我爱大自然”这个程序中包含了比较多的景物,既有静态的也有动态的,其中还有一段音乐。为了节省存储空间,提高程序设计的效率和质量,使程序简洁、清晰,便于阅读,同时也为了便于修改和扩充,采用子程序设计技术和宏定义,根据程序要实现的若干主要功能及个功能块要调用的公共部分,将程序划分为若干个相对独立的模块,为每个模块编制独立的程序段,最后将这些子程序根据调用关系连成一个整体。 这样,整个程序就被分为几个子程序的有机统一。根据BIOS中断调用原理,设置80×25彩色文本显示方式,分别编写一个子程序显示“I LOVE NATURE,LET US GO AIRING”和一个子程序在屏幕上“画”树。这两个子程序所体现出来的事物都是的。为了实现小鸟

2013年汇编语言程序设计课程设计

2013年汇编语言程序设计课程设计 一、作业题目 2013年汇编语言程序设计大型作业给出了3道题目,供大家凭自己的兴趣自由选择其中之一完成。这3道作业题目如下: 1.通用进制转换程序 2.两位数加减乘除程序 3.高精度乘法程序 二、交付的文档材料 1.程序系统说明书 内容包括: (1)程序系统总体的功能模块调用图及模块功能说明。 (2)程序系统的详细框图(每个子程序的流程图)。 (3)程序界面图。 (4)程序清单。 2.设计和实现的技术特点、不足和改进的建议 3.课程设计的体会。 4.程序源程序和可执行程序 三、评分说明 独立完成:60分,雷同或抄袭者不及格; 设计技术及技巧使用:25分; 文档质量:10分; 按时完成:5分。 可以自主扩充功能,有创新加分。 四、参考书 1.课本 2.《IBM-PC汇编语言程序设计》清华大学出版社 五、交付时间:第十八周的周五。

题目一通用进制转换程序 一、题目要求 实现不同进制之间的相互转换。(常用进制二、八、十、十六进制) 程序功能: 1.能通过键盘输入任一种进制,有相应的提示信息。 例如please input a Binary data: 2. 输入的数据要有容错检测。 例如:输入的二进制数据为1200,则应该出现错误信息提示。(因为2在二进制中是不允许的 3.输出的数据要有进制选择。 例如:请选择输出数据的进制(0: 二进制,1: 八进制……) 二、重点考察 1.用汇编实现简单的算法。 2.用汇编实现简单的数据结构。 3.可执行程序的参数使用。 4.INT 21H系统功能调用中有关显示与输出的操作 5.综合解决问题的能力。

相关文档
最新文档