《Linux网络操作系统》课程设计

《Linux网络操作系统》课程设计
《Linux网络操作系统》课程设计

《Linux网络操作系统》课程设计

一、课程设计的目的

本课程设计模拟实际企业需求,配合Linux网络操作系统课程内容,旨在通过整周实训将学生所学的Linux系统管理基本概念,网络服务器的搭建与管理技术糅合在一起,增强学生Linux服务器管理的综合能力,同时锻炼学生的思维能力和合作能力,并达到以下目的:

1.掌握一个较完整的企业应用服务器的搭建方法;

2.掌握企业应用服务器系统性能的调整方法;

3.掌握企业应用服务器常见故障的排除方法;

4.提高学生系统建设与管理能力的同时,增强学生的系统分析能力。

在实训过程中,要求学生熟悉一个企业应用服务器建设的基本流程,熟练Linux系统管理知识,能够利用所学知识完成综合系统设计和实现。

二、项目背景

某公司包括一个园区网络和一个分支机构,网络拓扑图如下图所示。在园区网络中,大约有300名员工,分支机构大约有100名员工,此外还有一些SOHO员工及出差人员。

假定你是该公司的网络管理员,现在公司的网络要进行规划和实施。现有条件如下:公司已租借了一个公网的IP地址202.100.100.10,和ISP提供的一个公网DNS服务器的IP地址202.100.100.200。该公司申请的域名为https://www.360docs.net/doc/5d4964932.html,。园区网络和分支机构使用192.168.0.0网络,并进行必要的子网划分。

三、实训环境

网络拓扑示意图

1.根据上面的网络拓扑示意图,采用两台Linux虚拟机充当内网服务器,Linux主机A

充当主要服务器,包括WEB、DHCP、DNS、FTP、SAMBA等,Linux 主机B充当网关,实现防火墙、NAT和VPN服务器功能。Windows主机A充当外网中的VPN客户机,Windows主机B充当内网工作站。这4台主机共同组成一个模拟的完整企业局域网。

2.在实训过程中,每4台计算机(4位同学)为一组,共同上面所示的企业网络。按

照企业需求(实训需求)分别在两台Linux虚拟机上实现DHCP、DNS等各项服务功能。Windows主机上进行相应各项服务测试。

3.网络域名为https://www.360docs.net/doc/5d4964932.html,(xingming指小组某成员的姓名拼音)

4.上述4台主机所担当的角色作用及IP地址如上面的网络拓扑示意图,其中zhuhao

表示你的分组号, dhcp表示该IP地址从DHCP服务器获取。

四、实训内容及要求

(一)实训内容:

假设某企业局域网有自己的域名https://www.360docs.net/doc/5d4964932.html,(此处xingming为姓名拼音),其内网地址为192.168.zuhao.0/24(此处zuhao为分组号)。根据上面的网络拓扑结构示意图,在Linux

虚拟机A和Linux虚拟机B上分别实现如下功能:

1.Linux虚拟机A做网关主机,配置防火墙及NAT、VPN服务。

2.Linux虚拟机B做内网应用服务器,实现DHCP服务、Samba服务、DNSF服务、Web

服务、FTP服务。

(二)实训要求:

任务1. 配置Linux虚拟机A。Linux虚拟机A上配置两块网卡,网卡eth0的IP地址为192.168.1.XXX(XXX为学号+100)。网卡eth1的IP地址为192.168.zuhao.10(zuhao

为组号)。

任务2. 在企业局域网中实现DHCP功能,要求:

(1)为本网络中的主机分配IP地址,并设置子网掩码、网关地址和DNS服务器地址;

(2)为Windows主机B动态分配IP地址;

任务3. 在局域网中实现DNS功能,要求能解析以下域名:

Web服务器(https://www.360docs.net/doc/5d4964932.html,:192.168.zuhao.20,别名https://www.360docs.net/doc/5d4964932.html,)

FTP服务器(https://www.360docs.net/doc/5d4964932.html,:192.168.zuhao.20)

邮件服务器(https://www.360docs.net/doc/5d4964932.html,:192.168.zuhao.20)

财务部(https://www.360docs.net/doc/5d4964932.html,:192.168.zuhao.20)

销售部(https://www.360docs.net/doc/5d4964932.html,:192.168.zuhao.20)

宣传部(https://www.360docs.net/doc/5d4964932.html,:192.168.zuhao.20)。

任务4. 为企业建立FTP服务器(https://www.360docs.net/doc/5d4964932.html,),要求:

(1)创建www(网站)、xs(销售)、xc(宣传)、cw(财务)、jl(经理)、qt(其他)

六个用户,不允许登录linux系统。

(2)创建xxx组,将www、xs、xc、cw、jl五个用户的私有组设置成xxx组。

(3)www、xs、xc、cw四个用户的主目录分别为/home/html/www、/home/html/xs、

/home/html/xc、/home/html/cw。

(4)www、xs、xc、cw、qt五个用户被锁定在自己的主目录中。

(5)www、xs、xc、cw、jl五个用户在自己的主目录中能上传下载及删除文件。

(6)qt用户在自己的主目录中能上传下载但不能删除文件。

(7)匿名用户在自己的主目录上只能下载文件。

任务5. 为企业内部建立WEB站点(一台机器4站点),要求能通过浏览器访问https://www.360docs.net/doc/5d4964932.html,(IP为192.168.zuhao.20),https://www.360docs.net/doc/5d4964932.html,,https://www.360docs.net/doc/5d4964932.html,,https://www.360docs.net/doc/5d4964932.html,的网站。要求:

(1)https://www.360docs.net/doc/5d4964932.html,,https://www.360docs.net/doc/5d4964932.html,,https://www.360docs.net/doc/5d4964932.html,,https://www.360docs.net/doc/5d4964932.html,站点的

网页根目录分别为/home/html/www、/home/html/xs、/home/html/xc、/home/html/cw。

(2)https://www.360docs.net/doc/5d4964932.html,网站只允许企业内部网中的主机访问。

(3)https://www.360docs.net/doc/5d4964932.html,网站只允许企业内部网中的主机访问,且创建cw、jl等http账号,

需要通过用户名和密码认证才能访问该网站中的网页。

任务6. 安装架设SAMBA服务器,实现linux和windows资源共享。要求:

(1)访问linux服务器时审查用户帐号和密码。

(2)在Linux虚拟机B上创建一个/tmp目录,为所有用户提供共享,且可以读写。

(3)在Linux虚拟机B上创建一个私人目录/cwpri,只有cw用户有可读写的共享访问

权限,其他用户不可以共享访问。

(4)在Linux虚拟机B上创建一个/xxx目录,允许xxx组用户向目录中写入,其他用

户只能访问,但不可以写入。

任务7. 在Linux虚拟机A上配置NAT。具体要求:

(1)隐蔽内部网络结构,保证内网主机可以通过合法IP地址192.168.1.xuehao连接

到Internet,使用包括WWW、FTP等Internet上的服务。

任务8. 搭建VPN服务器,为外网用户提供访问内网服务器及共享资源的安全途径。五、实训过程(含步骤)

任务1. 搭建实训环境

步骤1:在Linux虚拟机B配置网络参数。

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

# vi /etc/resolv.conf

重启网络服务:

# service named restart

步骤2:在Linux虚拟机A未启动状态下为Linux虚拟机A增加一块网卡。

步骤3:按网络拓扑示意图来配置Linux虚拟机A

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

# vi /etc/sysconfig/network-scripts/ifcfg-eth1

Linux虚拟机A的IP地址:

网卡eth0的IP地址为192.168.1.XXX(XXX为学号+100),网关为

192.168.1.254。

网卡eth1的IP地址为192.168.zuhao.10(zuhao为组号)。

任务2. 在企业局域网中实现DHCP功能,要求:

(1)为本网络中的主机分配IP地址,并设置子网掩码、网关地址和DNS服务器地址;

(2)为Windows主机B动态分配IP地址;

步骤1:在Linux虚拟机B上检查并安装dhcp包。

(2)查看是否安装了DHCP

# rpm –qa |grep dhcp

(3)安装DHCP

# eject

# mount /media/cdrom

# cd /media/cdrom/RedHat/RPMS

# rpm –ivh dhcp-3.0.1-12_EL.i386.rpm

# cd

步骤2:由模板文件复制生成所需的DHCP服务配置文件

# cp /usr/share/doc/dhcp-3.0.1/dpchd.conf.sample /etc/dhcpd.conf 步骤3:用vi编辑/etc/dhcpd.conf。

# vi /etc/dhcpd.conf

内容如下:

步骤4:在DHCP服务器上,用ifconfig观察结果,是否子网卡的广播地址设置正确:如:192.168.zuhao.255。

若不正确,请修改网络配置。

步骤5:在DHCP服务器上,启动dhcpd服务。

# service dhcpd restart

注意:若不能启动,观察/var/log/message.

步骤6:在DHCP客户机即主机B和Windows主机B上,修改网络参数为自动获取。在Windows 中使用下面命令查看和重新获取IP地址。

C:\>ipconfig 查看IP地址

C:\>ipconfig /release 释放IP 地址

C:\>ipconfig /renew 重新获取IP地址

步骤7:观测Windows主机B能否获取到正确的网络参数,并记录下整个过程。

任务3. 在局域网中实现DNS功能,要求能解析以下域名:

Web服务器(https://www.360docs.net/doc/5d4964932.html,:192.168.zuhao.20,别名https://www.360docs.net/doc/5d4964932.html,)

FTP服务器(https://www.360docs.net/doc/5d4964932.html,:192.168.zuhao.20)

邮件服务器(https://www.360docs.net/doc/5d4964932.html,:192.168.zuhao.20)

销售部(https://www.360docs.net/doc/5d4964932.html,:192.168.zuhao.20)

宣传部(https://www.360docs.net/doc/5d4964932.html,:192.168.zuhao.20)。

财务部(https://www.360docs.net/doc/5d4964932.html,:192.168.zuhao.20)

步骤1:在Linux虚拟机B上检查并安装DNS所需的必要软件包

# rpm –qa|grep bind

# rpm –qa|grep caching

根据结果,安装还没有安装的软件,从安装盘里找出第4张安装盘,执行下列步骤: # eject

# mount /media/cdrom

# cd /media/cdrom/RedHat/RPMS

# rpm –ivh bind-9.2.2.P3-9.i386.rpm

# rpm –ivh bind-utils-9.2.2.P3-9.i386.rpm

# cd

下面软件包在第1张安装光盘上。首先换光盘,接着执行下面的命令# eject

# mount /media/cdrom

# cd /media/cdrom/RedHat/RPMS

# rpm -ivh caching-nameserver-7.2-10.noarch.rpm

# cd;eject

步骤2:在DNS服务器(Linux虚拟机A)上编辑/etc/named.conf文件,添加区声明# vi /etc/named.conf

步骤3:分别从localhost.zone复制生成文件/var/named/https://www.360docs.net/doc/5d4964932.html,.zone。

# cd /var/named

# cp localhost.zone https://www.360docs.net/doc/5d4964932.html,.zone

# vi https://www.360docs.net/doc/5d4964932.html,.zone

在该区文件中添加内容如下:

步骤4:重启DNS服务:

# service named restart

步骤5:在Linux虚拟机B上测试:

# host –l https://www.360docs.net/doc/5d4964932.html,

# ping https://www.360docs.net/doc/5d4964932.html,

步骤6:查错:

如果不能正确解析,可以到日志/var/log/messages里查看错误提示信息。也可以执行下面的命令查看有无错误提示。

# named-checkconf

# named-checkzone https://www.360docs.net/doc/5d4964932.html, /var/name/https://www.360docs.net/doc/5d4964932.html,

任务4. 为企业建立FTP服务器(https://www.360docs.net/doc/5d4964932.html,),要求:

(1)创建www(网站)、xs(销售)、xc(宣传)、cw(财务)、jl(经理)、qt(其他)六

个用户,不允许登录linux系统。

(2)创建xxx组,将www、xs、xc、cw、jl五个用户的私有组设置成xxx组。

(3)www、xs、xc、cw四个用户的主目录分别为/home/html/www、/home/html/xs、

/home/html/xc、/home/html/cw。

(4)www、xs、xc、cw、qt五个用户被锁定在自己的主目录中。

(5)www、xs、xc、cw、jl五个用户在自己的主目录中能上传下载及删除文件。

(6)qt用户在自己的主目录中能上传下载但不能删除文件。

(7)匿名用户在自己的主目录上只能下载文件。

步骤1:在Linux虚拟机B上检查并安装FTP服务所需的软件包

# rpm –qa|grep vsftpd

如果没有安装vsftpd软件包,从安装盘里找出第1张安装盘,执行下列步骤:

# eject

# mount /media/cdrom

# cd /media/cdrom/RedHat/RPMS

# rpm –ivh vsftpd-1.2.0-5.i386.rpm

# cd

步骤2:创建FTP账号

# mkdir /home/html

# groupadd xxx

# useradd www -g xxx -d ? -s ?

# passwd www

# useradd xs -g xxx -d ? -s ?

# passwd xs

# useradd xc -g xxx -d ? -s ?

# passwd xc

# useradd cw -g xxx -d ? -s ?

# passwd cw

# useradd jl -g xxx

# passwd jl

# useradd qt

# passwd qt

步骤3:修改用户FTP主目录权限

# chmod 755 /home/html/*

# chmod 755 /home/qt

步骤4:编辑FTP服务器配置文件

# vi /etc/vsftpd/vsftpd.conf

其内容包括如下4部分:

(1)全局设置

(2)

注意:在vsftpd.conf配置文件中进行参数设置时,“=”两边不允许有空格。

上述两者结合在一起,所有未在/etc/vsftpd.chroot_list文件中列出的用户将被锁定自己的主目录中。

步骤5:在/etc/vsftpd.chroot_list文件中设置允许离开用户主目录的用户,一个名字一行。

# vi /etc/vsftpd.chroot_list

将用户jl添加到该文件中

步骤6:FTP用户进行自定义设置

(1)用户自定义配置文件存放目录

# mkdir /etc/vsftpd/userconf

# cd /etc/vsftpd/userconf

(2)创建用户www的自定义配置文件,并编辑它

# vi www

编辑内容如下:

(3)将www的自定义配置文件作为模版复制成其他用户的自定义配置文件

# cp www xs

# cp www xc

# cp www cw

# cp www jl

(4)然后修改xs、xc、cw、jl四个用户的配置文件,将中间的guest_username设

置为对应的用户名

(5)复制生成qt用户的自定义配置文件,并编辑它

# cp www qt

# vi qt

其中修改

步骤7:检验:从Windows主机中访问VSFTP服务器

在Windows主机B中打开一个资源管理器,在地址栏中输入ftp://192.168.zuhao.20。一一验证各个设置部分是否正确。

任务5. 为企业内部网建立WEB站点(一台机器4站点),要求能通过浏览器访问https://www.360docs.net/doc/5d4964932.html,(IP为192.168.zuhao.20),https://www.360docs.net/doc/5d4964932.html,,https://www.360docs.net/doc/5d4964932.html,,

https://www.360docs.net/doc/5d4964932.html,的网站。要求:

(1)https://www.360docs.net/doc/5d4964932.html,,https://www.360docs.net/doc/5d4964932.html,,https://www.360docs.net/doc/5d4964932.html,,https://www.360docs.net/doc/5d4964932.html,站点的网

页根目录分别为/home/html/www、/home/html/xs、/home/html/xc、/home/html/cw。

(2)https://www.360docs.net/doc/5d4964932.html,网站只允许企业内部网中的主机访问。

(3)https://www.360docs.net/doc/5d4964932.html,网站只允许企业内部网中的主机访问,且创建cw、jl等http账号,

需要通过用户名和密码认证才能访问该网站中的网页。

步骤1:安装Apache软件包。

(1)查看系统是否已经安装Apache软件包。

#rpm -qa | grep httpd

(2)如果没有安装则执行下面的步骤进行安装(软件包文件在第2张Linux安装光盘中):#eject

#mount /media/cdrom/

#cd /media/cdrom/RedHat/RPMS/

#rpm –ivh httpd-2.0.47-10.i386.rpm

#rpm –ivh httpd-manual-2.0.47-10.i386.rpm

#cd;eject

步骤2:编辑Apache服务器的配置文件httpd.conf,在其中定义4个虚拟主机#vi /etc/httpd/conf/httpd.conf

在文件末尾增加如下内容:

步骤3:创建用户文件及用户名和密码

#htpasswd -c /home/html/users jl

#htpasswd /home/html/users cw

步骤4:向各个站点中上传网页文件。

步骤5:重启httpd服务

#service httpd restart

步骤6:在Windows主机B中进行验证

在Windows主机B中的浏览器地址栏上输入https://www.360docs.net/doc/5d4964932.html,,https://www.360docs.net/doc/5d4964932.html,,https://www.360docs.net/doc/5d4964932.html,,https://www.360docs.net/doc/5d4964932.html,检查结果是否正确。

任务6. 安装架设SAMBA服务器,实现linux和windows资源共享。要求:

(1)访问共享目录时审查用户帐号和密码。

(2)在Linux虚拟机B上创建一个/tmp目录,为所有用户提供共享,且可以读写。

(3)在Linux虚拟机B上创建一个私人目录/cwpri,只有cw用户有可读写的共享访问权

限,其他用户不可以共享访问。

(4)在Linux虚拟机B上创建一个/xxx目录,允许xxx组用户向目录中写入,其他用户

只能访问,但不可以写入。

步骤1:安装Samba软件包

(1)查看Linux虚拟机B是否已经安装Samba软件包

#rpm -qa | grep samba

(2)如果没有安装则执行下面的步骤进行安装(软件包文件在第2张Linux安装光盘

中):

#eject

#mount /media/cdrom/

#cd /media/cdrom/RedHat/RPMS/

#rpm -ivh samba-common-3.0.0-15.i386.rpm

#rpm -ivh samba-client-3.0.0-15.i386.rpm

#rpm -ivh samba-3.0.0-15.i386.rpm

#cd;eject

步骤2:在Linux虚拟机B上创建共享目录,并设置其权限。

#mkdir /cwpri

#chown cw /cwpri

#chmod 700 /cwpri

#mkdir /xxx

#chown :xxx /xxx

#chmod 775

步骤3:编辑smb.conf 文件

#vi /etc/samba/smb.conf

内容如下

在[global]段完成:

在smb.conf文件末尾添加三个共享目录的定义段

步骤4:添加Samba账号,Samba服务器要求合法的Samba用户必须先是一个Linux用户#smbpasswd -a www

#smbpasswd -a xs

#smbpasswd -a xc

#smbpasswd -a cw

#smbpasswd -a jl

#smbpasswd -a qt

步骤5:测试samba配置文件的设置

#testparm

步骤6:重新启动samba服务器

#service smb restart

步骤7:在Windows的网上邻居中以不同的Samba账号访问上述共享资源,看是否和要求相符合

任务7. 在Linux虚拟机A上配置NAT。具体要求:

(1)隐蔽内部网络结构,保证内网主机可以通过合法IP地址192.168.1.xuehao连接到

Internet,使用包括WWW、FTP等Internet上的服务。

步骤1:修改内核参数

#echo 1 > /proc/sys/net/ipv4/ip_forward

或者

编辑/etc/sysctl.conf文件

#vi /etc/sysctl.conf

修改如下参数值

修改完成后重启网络服务,使内核参数变化

#service network restart

步骤2:设置SNAT策略,使得内网中的主机可以访问外网主机的WWW和FTP服务。

#iptables -t nat -A POSTROUTING -s 192.168.zuhao.0/24 -j SNAT --to 192.168.1.xuehao

步骤3:保存iptables设置

#service iptables save

任务8. 搭建VPN服务器,为外网用户提供访问内网服务器及共享资源的安全途径。

步骤1:编辑/etc/pptpd.conf文件,设置虚拟专用连接的地址池。

步骤2:编辑/etc/pptpd/chap-secrets文件,设置远程登陆VPN客户端拨入时所使用的用户名、密码和分配给该用户的IP地址。

步骤3:设置/etc/ppp/options-pptpd文件。

[root@RHEL4 ~]# grep -v "#" /etc/ppp/options.pptpd

name pptpd //相当于身份验证时的域,一定要和/etc/ppp/chap-secrets中的内容对应

refuse-pap //拒绝pap身份验证

refuse-chap //拒绝chap身份验证

refuse-mschap //拒绝mschap身份验证

require-mschap-v2 //采用mschap-v2身份验证方式

require-mppe-128 //在采用mschap-v2身份验证方式时要使用MPPE进行加密

ms-dns 192.168.0.9 //给客户端分配DNS服务器地址

ms-wins 192.168.1.1 //给客户端分配WINS服务器地址

proxyarp //启动ARP代理

步骤4:启动Linux的路由转发功能。

步骤5:启动VPN服务器。

步骤6:设置VPN服务器穿透防火墙。

步骤7:VPN客户端的设置。

(1)在桌面上右击【网上邻居】并从弹出的快捷菜单中点击【属性】,接着在弹出的窗口中点击【新建连接】,打开【网络连接向导】对话框,如图所示。

(2)单击“下一步”,在该对话框中选择网络的连接类型为“通过Internet连接到专用网络”,如图所示。

(3)单击“下一步”,选择VPN客户端接入Internet网络的连接方式。在此选择“不拨初始连接”,如图所示。

(4)单击“下一步”,设置VPN服务器的地址,在此输入VPN服务器的IP地址或主机名,然后单击“下一步”,如图所示。

(5)单击“下一步”,设置是否允许所有用户使用此连接,在此我们选择“所有用户使用此连接”,如图所示。

(6)单击“下一步”,打开“完成网络连接向导”在此设置此虚拟连接的名称,在此输入“jnrp-vpn”,如图所示。单击完成按钮,即可完成该向导。

(7)在下图所示的对话框中输入登录VPN服务器的用户名和密码,单击“连接按钮”,这时客户端就开始与VPN服务器建立连接,完成用户名和密码的核对,网络注册等工作。分别如图16-9和16-10所示。

(8)在连接成功之后在VPN客户端利用ipconfig命令可以看到多了一个ppp连接,如图所示。

六、实训报告的编写

实训结束时,学生需要提供以下资料:

1、各子任务完成情况。

2、实训报告。按学院实训报告标准格式,完成实训报告,要求给出各步骤的具体结果,并对结果作出分析解释。

七、课程设计考核

1.作为一门课程单独考核。

2.实训成绩由三部分组成:

(1)实训表现及考勤(占20%)

(2)各任务完成情况(占40%)

(3)总项目集成完成情况及实习报告撰写情况(占40%)。

3.任务及总项目完成情况当场验收考核。实训报告在整周实训结束后立即上交。

操作系统课程设计

课程设计报告 2015~2016学年第一学期 操作系统综合实践课程设计 实习类别课程设计 学生姓名李旋 专业软件工程 学号130521105 指导教师崔广才、祝勇 学院计算机科学技术学院 二〇一六年一月

- 1 -

- 2 -

一、概述 一个目录文件是由目录项组成的。每个目录项包含16B,一个辅存磁盘块(512B)包含32个目录项。在目录项中,第1、2字节为相应文件的外存i节点号,是该文件的内部标识;后14B为文件名,是该文件的外部标识。所以,文件目录项记录了文件内、外部标识的对照关系。根据文件名可以找到辅存i节点号,由此便得到该文件的所有者、存取权、文件数据的地址健在等信息。UNIX 的存储介质以512B为单位划分为块,从0开始直到最大容量并顺序加以编号就成了一个文件卷,也叫文件系统。UNIX中的文件系统磁盘存储区分配图如下: 本次课程设计是要实现一个简单的模拟Linux文件系统。我们在内存中开辟一个虚拟磁盘空间(20MB)作为文件存储器,并将该虚拟文件系统保存到磁盘上(以一个文件的形式),以便下次可以再将它恢复到内存的虚拟磁盘空间中。文件存储空间的管理可采用位示图方法。 二、设计的基本概念和原理 2.1 设计任务 多用户、多级目录结构文件系统的设计与实现。可以实现下列几条命令login 用户登录 logout 退出当前用户 dir 列文件目录 creat 创建文件 delete 删除文件 open 打开文件 close 关闭文件 - 3 -

read 读文件 write 写文件 mkdir 创建目录 ch 改变文件目录 rd 删除目录树 format 格式化文件系统 Exit 退出文件系统 2.2设计要求 1) 多用户:usr1,usr2,usr3,……,usr8 (1-8个用户) 2) 多级目录:可有多级子目录; 3) 具有login (用户登录)4) 系统初始化(建文件卷、提供登录模块) 5) 文件的创建:create (用命令行来实现)6) 文件的打开:open 7) 文件的读:read8) 文件的写:write 9) 文件关闭:close10) 删除文件:delete 11) 创建目录(建立子目录):mkdir12) 改变当前目录:cd 13) 列出文件目录:dir14) 退出:logout 新增加的功能: 15) 删除目录树:rd 16) 格式化文件系统:format 2.3算法的总体思想 - 4 -

汇编语言课程设计

沈阳大学

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所示。 沈阳大学

09电信电子线路课程设计题目

电子线路课程设计题目 (模电、数电部分) 一、锯齿波发生器 二、语音放大电路 三、可编程放大器 四、数字频率计 五、可调电源 六、汽车尾灯控制电路 2011.09

一、设计一高线性度的锯齿波发生器 要求: (1)利用555定时器和结型场效应管构成的恒流源设计一高线性度的锯齿波发生器;参考电路如图所示; (2)在EWB中对该电路进行仿真; (3)焊接电路并进行调试;调试过程中思考: a、电路中两个三极管的作用是什么?其工作状态是怎么样的? b、R3阻值的大小会对锯齿波的线性度产生什么影响? c、输出锯齿波的幅值范围多大? d、调节电路中的可调电阻对波形有什么影响? e、LM324的作用是什么? (4)参考电路图中采用的是结型场效应管设计的,若采用N沟道增强型VMOS管和555定时器来设计一高线性度的锯齿波发生器,该如何设计? LM324 图2 高线性度锯齿波发生器的设计

二、语音放大电路的设计 通常语音信号非常微弱,需要经过放大、滤波、功率放大后驱动扬声器。 要求: (1)采用集成运算放大器LM324和集成功放LM386N-4设计一个语音放大电路;假设语音信号的为一正弦波信号,峰峰值为5mV,频率范围为100Hz~1KHz,电路总体原理图如下所示; 图4 语音放大电路 (2)仔细分析以上电路,弄清电路构成,指出前置放大器的增益为多少dB?通带滤波器的增益为多少dB? (3)参照以上电路,焊接电路并进行调试。 a、将输入信号的峰峰值固定在5mV,分别在频率为100Hz和1KHz的条件下测试前 置放大的输出和通带滤波器的输出电压值,计算其增益,将计算结果同上面分析 的理论值进行比较。 b、能过改变10K殴的可调电阻,得到不同的输出,在波形不失真的条件下,测试集 成功放LM386在如图接法时的增益; c、将与LM386的工作电源引脚即6引脚相连的10uF电容断开,观察对波形的影响, 其作用是什么? d、扬声器前面1000uF电容的作用是什么?

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

微机原理实验报告 实验名称汇编语言程序设计 一、实验目的 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 程序运行结果

模拟电路课程设计心得体会

模拟电路课程设计心得 体会 内部编号:(YUUT-TBBY-MMUT-URRUY-UOOY-DBUYI-0128)

精选范文:《模拟电路》课程设计心得体会(共2篇)本学期我们开设了《模拟电路》与《数字电路》课,这两门学科都属于电子电路范畴,与我们的专业也都有联系,且都是理论方面的指示。正所谓“纸上谈兵终觉浅,觉知此事要躬行。”学习任何知识,仅从理论上去求知,而不去实践、探索是不够的,所以在本学期暨模电、数电刚学完之际,紧接着来一次电子电路课程设计是很及时、很必要的。这样不仅能加深我们对电子电路的任职,而且还及时、真正的做到了学以致用。这两周的课程设计,先不说其他,就天气而言,确实很艰苦。受副热带高气压影响,江南大部这两周都被高温笼罩着。人在高温下的反应是很迟钝的,简言之,就是很难静坐下来动脑子做事。天气本身炎热,加之机房里又没有电扇、空调,故在上机仿真时,真是艰熬,坐下来才一会会,就全身湿透,但是炎炎烈日挡不住我们求知、探索的欲望。通过我们不懈的努力与切实追求,终于做完了课程设计。在这次课程设计过程中,我也遇到了很多问题。比如在三角波、方波转换成正弦波时,我就弄了很长时间,先是远离不清晰,这直接导致了我无法很顺利地连接电路,然后翻阅了大量书籍,查资料,终于在书中查到了有关章节,并参考,并设计出了三角波、方波转换成正弦波的电路图。但在设计数字频率计时就不是那么一帆风顺了。我同样是查阅资料,虽找到了原理框图,但电路图却始终设计不出来,最后实在没办法,只能用数字是中来代替。在此,我深表遗憾!这次课程设计让我学到了很多,不仅是巩固了先前学的模电、数电的理论知识,而且也培养了我的动手能力,更令我的创造性思维得到拓展。希望今后类似这样课程设计、类似这样的锻炼机会能更多些!

汇编语言-课程设计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型数据转换为字符串,这样我们才能调用第一个程序将其打印出

南京理工大学电子线路课程设计(优秀)

南京理工大学 电子线路课程设计 实验报告

摘要 本次实验利用QuartusII7.0软件并采用DDS技术、FPGA芯片和D/A转换器,设计了一个直接数字频率信号合成器,具有频率控制、相位控制、测频、显示多种波形等功能。 并利用QuartusII7.0软件对电路进行了详细的仿真,同时通过SMART SOPC实验箱和示波器对电路的实验结果进行验证。 报告分析了整个电路的工作原理,还分别说明了设计各子模块的方案和编辑、以及仿真的过程。并且介绍了如何将各子模块联系起来,合并为总电路。最后对实验过程中产生的问题提出自己的解决方法。并叙述了本次实验的实验感受与收获。 关键词数字频率信号合成器频率控制相位控制测频示波器 Abstract This experient introduces using QuartusII7.0software, DDS technology,FPGA chip and D/A converter to design a multi—output waveform signal generator in which the frequency and phase are controllable and test frequency,display waveform. It also make the use of software QuartusII7.0 a detailed circuit simulation, and verify the circuit experimental results through SMART SOPC experiment box and the oscilloscope. The report analyzes the electric circuit principle of work,and also illustrates the design of each module and editing, simulation, and the process of using the waveform to testing each Sub module. Meanwhile,it describes how the modules together, combined for a total circuit. Finally the experimental problems arising in the process of present their solutions. And describes the experience and result of this experiment. Keywords multi—output waveform signal- generator frequency controllable phase controllable test frequency oscilloscope 目录

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

西北师范大学 计算机科学与工程学院 微机原理与汇编语言 课程设计报告 设计题目:中断控制点阵显示与音乐模块姓名: 学号: 专业班级: 系所中心: 指导老师: 起讫时间: 设计地点: 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芯片进行中断程序设计,在第一个中断中响应字模显示模块,在第二个中断中响应音乐发声模块。

操作系统课程设计报告

上海电力学院 计算机操作系统原理 课程设计报告 题目名称:编写程序模拟虚拟存储器管理 姓名:杜志豪.学号: 班级: 2012053班 . 同组姓名:孙嘉轶 课程设计时间:—— 评语: 成绩: 目录 一、设计内容及要求 (4) 1. 1 设计题目 (4) 1.2 使用算法分析: (4)

1. FIFO算法(先进先出淘汰算法) (4) 1. LRU算法(最久未使用淘汰算法) (5) 1. OPT算法(最佳淘汰算法) (5) 分工情况 (5) 二、详细设计 (6) 原理概述 (6) 主要数据结构(主要代码) (6) 算法流程图 (9) 主流程图 (9) Optimal算法流程图 (10) FIFO算法流程图 (10) LRU算法流程图 (11) .1源程序文件名 (11) . 2执行文件名 (11) 三、实验结果与分析 (11) Optimal页面置换算法结果与分析 (11) FIFO页面置换算法结果与分析 (16) LRU页面置换算法结果与分析 (20) 四、设计创新点 (24) 五、设计与总结 (27)

六、代码附录 (27) 课程设计题目 一、设计内容及要求 编写程序模拟虚拟存储器管理。假设以M页的进程分配了N

块内存(N

汇编课程设计

燕山大学 汇编语言课程设计说明书 题目:计算机钢琴程序 交通灯控制系统 学院(系):信息科学与工程学院 年级专业: 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 -

电子线路课程设计am调幅发射机设计报告

电子线路课程设计 总结报告 学生姓名: 可行性,选择适合设计方案,并对设计方案进行必要的论证。本课题以小功率调幅发射机为设计对象,并对其主振级、低频电压放大级、调制级、高频功率放大级进行了详细的设计、论证、调试及仿真,并进行了整机的调试与仿真。设计具体包括以下几个步骤:一般性理论设计、具体电路的选择、根据指标选定合适器件并计算详细的器件参数、用multisim进行设计的仿真、根据仿真结果检验设计指标并进行调整。最后对整个设计出现的问题,和心得体会进行总结。 关键词调幅发射机;振荡器;multisim仿真设计

一、设计内容及要求 (一)设计内容:小功率调幅AM发射机设计 1.确定小功率调幅发射机的设计方案,根据设计指标对既定方案进行理论设计分析, 并给出各单元电路的理论设计方法和实用电路设计细节,其中包括元器件的具体选择、参数调整。 根据设计要求,要求工作频率为10MHz,输出功率为1W,单音调幅系数 m。由于载波频率为10Mhz,大多数振荡器皆可满足,提供了较多的选择且不需要 8.0 = a 倍频。由于输出功率小,因此总体电路具有结构简单,体积较小的特点。其总体电路结构 可分为主振荡电路(载波振荡电路)、缓冲隔离电路、音频放大电路、振幅调制电路、功

(二)单元电路方案论证 1.主振荡电路 主振荡电路是调幅发射机的核心部件,载波的频率稳定度和波形的稳定度直接影响到发射信号的质量,因此,主振荡电路产生的载波信号必须有较高的频率稳定度和较小的波形失真度,主振荡电路可以有四种设计方案:RC正弦波振荡电路、石英晶体振荡电路、三点振荡电路、改进三点式(克拉泼)振荡电路。 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集成环境

电子线路课程设计报告

石英晶体好坏检测电路设计 设计要求 1. 利用高频电子线路及其先修课程模拟电路的知识设计一个电子线路2.利用该电子线路的要求是要求能够检测石英晶体的好坏 3. 要求设计的该电子线路能够进行仿真 4. 从仿真的结果能够直接判断出该石英晶体的好坏 5. 能够理解该电子线路检测的原理 6. 能够了解该电子线路的应用 成果简介设计的该电子线路能够检测不同频率石英晶体的好坏。当有该石英晶体(又称晶振)的时候,在输出端接上一个示波器能够有正弦波形输出,而当没有 该晶振的时候,输出的是直流,波形是一条直线。所以利用该电路可以在使 用晶振之前对其进行检测。 报告正文 (1)引言: 在高频电子线路中,石英晶体谐振器(也称石英振子)是一个重要的高频部件,它广泛应用于频率稳定性高的振荡器中,也用作高性能的窄带滤波 器和鉴频器。其中石英晶体振荡器就是利用石英晶体谐振器作滤波元件构成 的振荡器,其振荡频率由石英晶体谐振器决定。与LC谐振回路相比,石英晶 体谐振器有很高的标准性,采用品质因数,因此石英晶体振荡器具有较高的 频率稳定度,采用高精度和稳频措施后,石英晶体振荡器可以达到很高的频 率稳定度。正是因为石英晶体谐振器的这一广泛的应用和重要性,所以在选 择石英晶体谐振器的时候,应该选择质量好的。在选择的时候要对该晶振检 测才能够知道它的好坏,所以要设计一个检测石英晶体好坏的电路。 (2)设计内容: 设计该电路的原理如下:

如下图所示,BX为待测石英晶体(又名晶振),插入插座X1、X2,按下按钮SB,如果BX是好的,则由三极管VT1、电容器C1、C2等构成的振荡器工作,振荡信号从VT1发射极输出,经C3耦合到VD2进行检波、C4滤波,变成直流信号电压,送至VT2基极,使VT2导通,发光二极管H发光,指示被测石英晶体是好的。若H不亮,则表明石英晶体是坏的。适当改变C1、C2的容值,即可用于测试不同频率的石英晶体。 图一石英晶体好坏检测电路检测原理图 在上面的电路中,晶振等效于电感的功能,与C1和C2构成电容三点式振荡电路,振荡频率主要由C1、C2和C3以及晶振构成的回路决定。即由晶振电 抗X e 与外部电容相等的条件决定,设外部电容为C L ,则=0,其中C l 是C1、 C2和C3的串联值。 (3)电路调试过程: 首先是电路的仿真过程,该电路的仿真是在EWB软件下进行的,下面是将原图画到该软件后的截图:

汇编课程设计报告

汇编课程设计报告

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

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

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

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

计算机与信息工程学院《汇编语言》课程设计四则运算器的设计 专业:计算机科学与技术 班级:控制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

电子线路课程设计

电子线路课程设计总结报告 学生姓名: 学号: 专业:电子信息工程 班级:电子112班 报告成绩: 评阅时间: 教师签字: 河北工业大学信息学院 2014年2月

课题名称:小功率调幅AM发射机设计 内容摘要:小功率调幅发射机调幅简便,调制所占的频带窄,并且与之对应的调幅接收设备简单常用于通信系统和其它无线电系统中,特别是在中短波广播通信的领域里更是得到了广泛应用。本课程设计的目的即设计一个小功率调幅发射机并使之满足相应的技术指标。让学生综合运用高频电子线路知识,进行实际高频系统的设计、安装和调测,利用相关软件进行电路设计,提高综合应用知识的能力、分析解决问题的能力和电子技术实践技能,让学生了解高频电子通信技术在工业生产领域的应用现状和发展趋势。为今后从事电子技术领域的工程设计打好基础。通过设计主振器,缓冲器,音频放大器,调幅电路最终组成小功率调幅发射机。主振器是用来产生频率稳定的高频载波信号。高频放大器是将高频振荡载波信号放大到足够大得强度。高频功率放大器及调制器是将低频放大器输出的信号调制到载波上,同时完成末级功放。 一、设计内容及要求 1、内容:设计一个小功率调幅AM发射机 2、要求: 发射机工作频率f0=10MHz;发射功率Po大于等于200mW;负载电阻Ra=50Ω;输出信号带宽9kHz平均调幅系数ma大于等于30%,单音调幅系数ma=0.8;发射效率η大于等于50%;残波辐射小于等于40dB; 二、方案选择及系统框图 1、方案选择 低频小功率调幅发射机是将待传送的音频信号通过一定的方式调制到高频载波信号上,放大到额定的功率,然后利用天线以电磁波的方式发射出去,覆盖一定的范围。可选用最基本的发射机结构,系统框图如下图所示,由主振级、高频放大器、音频放大器、高电平调幅电路、缓冲电路结构组成。 (1)主振器 主振器就是高频振荡器,根据载波频率的高低、频率稳定度来确定电路型式。电容三点式振荡器的输出波形比电感三点式振荡器的输出波形好。这是因为电容三点式振荡器中,反馈是由电容产生的,高次谐波在电容上产生的反馈压降较小,输出中高频谐波小;而在电感三点式振荡器中,反馈是由电感产生的,高次谐波在电感上产生的反馈压降较大。另外,电容三点式振荡器最高工作频率一般比电感三点式振荡器的高。 主要原因是在电感三点式振荡器中,晶体管的极间电容与回路电感相并联,在频率高时可能改变电抗的性质;在电容三点式振荡器中,极间电容与电容并联,频率变化不改变电抗的性质。因此振荡器的电路型式一般采用电容三点式。在频率稳定度要求不高的情况下,可以采用普通三点式电路、克拉泼电路、西勒电路。频率稳定度要求高的情况下,可以采用晶体振荡器,也可以采用单片集成振荡电路。本电路采用克拉拨振荡器;

汇编语言课程设计报告

课程设计报告 课程名称课题名称 汇编语言程序设计 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)、按学号顺序选课题号,并在规定的时间内独自完成相关课题的汇编源程序编

相关文档
最新文档