中南大学计算机原理与汇编实验报告(截图完整)

合集下载

中南大学计算机实践报告

中南大学计算机实践报告

中南大学计算机实践报告中南大学计算机实践报告中南大学计算机实践报告一.任务内容要想制作好一个网页,首先要在整体上规划好自己网站的主题和内容,确定自己需要传达给访问用户的主要信息,然后仔细斟酌,把自己所有要表达的意念合情合理地组织起来;其次,是设计一个富有个性的页面式样,务求尽善尽美。

这样制作出来的主页才会清晰、明了、内容充实。

我从6岁就开始学习古筝,从小对古筝有一种特殊的情感,并且对古筝的各方面的情况有较深的理解,因此我把这次计算机实践课程的主题定为了“唯美古筝”。

主题实践报告以古筝为线索展开介绍,内容包括古筝的结构、古筝的历史、中国著名古筝曲、当代中国著名的古筝家及中外联系之桥等五大项内容:1)在“古筝的结构”一大内容中,介绍了古筝从拔弦古古筝、击弦古古筝到手拨式键盘乐器到现在乐器大家族之中的“公主”的演变过程,并简述了古筝诞生、发展的重大意义。

2)在“古筝的历史”这部分内容中,着重写了筝的来由,命名以及各种关于古筝的典故,并让大家对古筝发展有所认识。

3)在“中国古筝名曲”中,展示出了中国古筝界风斐之作和中国的一些经典民族乐曲。

例如《高山流水》、《广陵散》和贺渌訂名曲《梅花三弄》等。

4)“中国当代著名古筝家”内容中则介绍了包括中国著名青年古筝家袁莎和任洁的几个古筝名家风采。

让古筝家的魅力感染古筝爱好者学习古筝,关注古筝界的热情。

5)在“中外联系之桥”这一内容中,我介绍了敦煌莫高窟里美丽的壁画,这些事古筝存于古今的证明。

这五大内容的介绍,旨在对唯美古筝做一个全面的解释和分析。

二.设计步骤首先确定了“唯美古筝”的主题后,我策划将网页的风格定为轻快明丽、简洁清新.主题分为确定的五大内容(即古筝的结构,古筝的历史,中国当代古筝家简介及中国古筝名曲,中外联系之桥展示等方面)来分别介绍,这份设计实践项目在首页之下分五大分块。

按照计算机实践的任务要求,也为了使网页制作及设计精美,我在项目中运用了5个网页,制作了15张幻灯片(十五张幻灯片为一个统一整体介绍五大内容之一),从网上搜集丰富的资料添入网页和幻灯片中,并且在首页中加入了两个简易动画以增添艺术效果,首页与其它网页之间,首页与幻灯片之间用超链接联系起来,使得整个项目结构紧凑,衔接紧密。

计算机组成原理与汇编实验报告

计算机组成原理与汇编实验报告

计算机组成原理与汇编实验报告姓名:学号:学院:信息科学与工程学院班级:实验1 存储器实验实验目的⏹掌握静态存储随机存储器RAM的工作特性⏹掌握静态存储随机存储器RAM的读写方法实验设备74LS273(一片),静态存储器MEMORY 6116(一片),与门(一片),与非门(一片),单脉冲(一片),开关若干,灯泡若干实验原理在微机系统中,常用的静态RAM 有6116、6264、62256 等。

在本实验中使用的是6116。

6116 为2K╳8 位的静态RAM,其逻辑图3.1如下:图3.1 6116逻辑图其中A0~10 为11 根地址线,I/O0~7 为8 根数据线,CS 为片选端,OE 为数据输出选通端,WR 为写信号端。

其工作方式见下表3-1:表3-1工作方式表实验所用的半导体静态存储器电路原理如图3.2 所示,实验中的静态存储器一片6116(2K×8)构成,其数据线接至数据总线,地址线由地址锁存器(74LS273)给出。

地址灯AD0—AD7 与地址线相连,显示地址线内容。

数据开关经一三态门(74LS245)连至数据总线,分时给出地址和数据。

图3.2 存储器实验原理图因地址寄存器为8 位,接入6116 的地址A7—A0,而高三位A8—A10 接地,所以其实际容量为256 字节。

6116 有三个控制线:CE(片选线)、OE(读线)、WE(写线)。

当片选有效(CE=0)时,OE=0时进行读操作,WE=0时进行写操作。

本实验中将OE 常接地,在此情况下,当CE=0、WE=0 时进行读操作,CE=0、WE=1 时进行写操作,其写时间与T3 脉冲宽度一致。

控制信号SW-B 为低电平有效,控制信号LDAR 为高电平有效。

实验步骤1. 选择实验设备:根据实验原理图,将所需要的组件从组件列表中拖到实验设计流程栏中。

搭建实验流程:将已选择的组件进行连线(鼠标从一个引脚的端点拖动到另一组件的引脚端,即完成连线)。

中南大学编译原理实验报告

中南大学编译原理实验报告

中南大学编译原理实验报告班级:计科1205姓名:***学号:**********实验一词法分析程序设计与实现一、实验目的加深对词法分析器的工作过程的理解;加强对词法分析方法的掌握;能够采用一种编程语言实现简单的词法分析程序;能够使用自己编写的分析程序对简单的程序段进行词法分析。

二、实验内容自定义一种程序设计语言,或者选择已有的一种高级语言,编制它的词法分析程序。

词法分析程序的实现可以采用任何一种编程语言和编程工具。

从输入的源程序中,识别出各个具有独立意义的单词,即关键字、标识符、常数、运算符、界符。

并依次输出各个单词的内部编码及单词符号自身值。

(遇到错误时可显示“Error”,然后跳过错误部分继续显示)三、实验要求:1.对单词的构词规则有明确的定义;2.编写的分析程序能够正确识别源程序中的单词符号;3.识别出的单词以<种别码,值>的形式保存在符号表中,正确设计和维护符号表;4.对于源程序中的词法错误,能够做出简单的错误处理,给出简单的错误提示,保证顺利完成整个源程序的词法分析;四、实验步骤1.定义目标语言的可用符号表和构词规则;2.依次读入源程序符号,对源程序进行单词切分和识别,直到源程序结束;3.对正确的单词,按照它的种别以<种别码,值>的形式保存在符号表中;4.对不正确的单词,做出错误处理。

五、设计思路和实现过程本实验是词法分析器,我是用的是MFC实现的,我的设计思路就是按照书上提示的算法,先将几个词法分析器所需的基本函数用C++的形式实现,然后使用循环语句读入输入串的每一个字符,然后用if…else…语句实现,具体判断方式如下:1、如果读入的是字母,那么继续读入,知道读入的字符不是字母或者数字为止,对照标识符表,如果是标识符,则显示该串及对应标识符;如果不是,则显示该串和“$ID”;2、如果读入的是数字,则继续读入,知道不是数字为止,并显示该串和“$INT”;3、如果读入的是“=”,“+”,";",“(”,")","{","}",则分别输出该串和“$ASSIGN”,"$PLUS","$SEMICOLON","$LPAR","$RPAR","$LBRACE","$RBRACE";4、如果读入的是“*”,那么继续读入,如果下一个是“*”,则输出该串和"$POWER";否则输出该串和"$STAR",并将指针回退;5、如果独到输入串末尾,则退出。

计算机原理与汇编实验报告

计算机原理与汇编实验报告

计算机原理与汇编实验报告冒泡排序实验一、实验目的(1)学习汇编语言循环结构语句的特点,重点掌握冒泡排序的方法。

(2)理解并掌握各种指令的功能,编写完整的汇编源程序。

二、实验内容及要求(1)实验内容:从键盘输入五个有符号数,用冒泡排序法将其按从小到大的顺序排序。

(2)实验要求:①编制程序,对这组数进行排序并输出原数据及排序后的数据;②利用DEBUG调试工具,用D0命令,查看排序前后内存数据的变化;三、代码NAME BUBBLE_SORTDA TA SEGMENTARRAY DW 5 DUP(?) ;输入数据的存储单元COUNT DW 5TWO DW 2FLAG1 DW 0 ;判断符号标志FLAG2 DB 0 ;判断首位是否为零的标志FAULT DW -1 ;判断出错标志CR DB 0DH,0AH,'$'STR1 DB 'Please input five numbers seperated with space and finished with Enter:','$'STR2 DB 'The original numbers:','$'STR3 DB 'The sorted numbers:','$'STR4 DB 'The Min:','$'STR5 DB 'The Max:','$'STR6 DB 'The Average:','$'STR7 DB 'The binary system of the average :','$'STR8 DB 'Input error!Please input again!''$'DA TA ENDSCODE SEGMENTMAIN PROC FARASSUME CS:CODE,DS:DATA,ES:DATASTART: PUSH DSAND AX,0PUSH AXMOV AX,DATAMOV DS,AXLEA DX,STR1MOV AH,09H ;9号DOS功能调用,提示输入数据INT 21HCALL CRLF ;回车换行REIN: CALL INPUT ;调用INPUT子程序,输入原始数据CMP AX,FAULT ;判断是否出错,JE REIN ;出错则重新输入LEA DX,STR2MOV AH,09H ;9号DOS功能调用,提示输出原始数据INT 21HCALL OUTPUT ;调用OUTPUT子程序,输出原始数据CALL SORT ;调用SORT子程序,进行冒泡排序LEA DX,STR3MOV AH,09H ;9号DOS功能调用,提示输出排序后的数据INT 21HCALL OUTPUT ;调用OUTPUT子程序,输出排序后的数据ENDP四、运行结果对300,250,280,240,260五个数进行冒泡排序,运行结果如下:五、心得体会在本次汇编语言程序设计实验中,我们学习了汇编语言的循环结构,并对冒泡排序法进行了汇编程序设计,我首先编写了对给定数据进行冒泡排序的算法设计,这有助于我熟悉冒泡排序的逻辑结构,理清设计思路。

中南大学汇编实验报告

中南大学汇编实验报告

计算机汇编语言实验报告学院:信息科学与工程学院专业班级:指导老师:学号:姓名:目录汇编语言实验一 (4)一、实验目的 (4)二、实验要求 (4)三、实验编程 (4)四、DEBUG 命令: (5)五、运行界面 (6)六、心得体会 (8)汇编语言实验二 (9)一、实验目的 (9)二、二进制到十六进制转换程序 (9)1、思路方法 (9)2、程序代码 (10)3、程序截图 (11)三、起泡排序算法的程序实现 (11)1、方法思路 (11)2、程序代码 (11)3、程序截图 (14)汇编语言实验三 (15)一、实验目的 (15)二、实验要求 (15)三、实验内容求(Fibonacci递归数) (15)四、程序代码 (15)五、实验心得 (18)汇编语言实验四 (19)一、实验目的 (19)二、实验要求 (19)三、实验内容(分类统计字符个数) (19)四、程序代码 (19)五、实验心得 (23)汇编语言实验一一、实验目的学习程序设计的基本方法和技能,熟练掌握用汇编语言设计、编写、调试和运行程序的方法,熟悉DEBUG调试程序和DOS功能表的查看,为后续实验打下坚实基础。

二、实验要求通过实验掌握下列知识:1、8086指令: MOV,ADD,ADC,SUB,SBB,DAA,XCHG2、DEBUG命令: A,D,E,F,H,R,T,U。

3、ASCII码及用16进制数表示二进制码的方法。

4、8086寄存器: AX,BX,CX,DX,F,IP。

三、实验编程'Hello World'程序:DATAS SEGMENTSTRING DB 13,10,'Hello World!',13,10,'$'DATAS ENDSCODES SEGMENTASSUME CS:CODES,DS:DATASSTART:MOV AX,DATASMOV DS,AXLEA DX,STRINGMOV AH,9INT 21HMOV AH,4CHINT 21HCODES ENDSEND START四、DEBUG 命令:1、打DEBUG 进入DEBUG,显示提示苻'_ '。

中南大学 计算机原理与汇编课程设计报告

中南大学 计算机原理与汇编课程设计报告

计算机原理与汇编——课程设计报告姓名:学号:班级:指导老师:贺建飚汇编语言课程设计一、设计目的:课程设计是计算机原理与汇编语言教学过程中的重要环节。

本课程设计主要目的是使计算机专业学生深入学习计算机原理与汇编语言知识,进一步提高学生计算机原理与汇编语言综合能力和程序设计技能,锻炼运用计算机原理与汇编语言解决实际问题的能力。

二、设计要求:1.认真查阅资料,独立完成设计任务,每道题都必须上机通过。

2.独立思考,培养综合分析问题解决问题和调试程序的能力。

3.按时完成课程设计,写出课程设计报告。

三、设计内容及原理㈠设计内容:1.使用到子程序100 以内的素数,以十进制形式输出。

2.用递归计算50以内Fibonacci 数,以十进制形式输出。

3.编写一拷贝程序,要求在命令行指定源文件名和目标文件名。

㈡设计原理:1.结合几种含有特定功能的子程序以完成设计要求。

2.建立循环程序递归计算Fibonacci 数。

3.根据输入判断文件是否存在并执行拷贝过程。

四、设计思路1.使用到子程序100 以内的素数,以十进制形式输出。

按照设计要求,可以建立3个子程序,一个判断素数子程序,一个显示素数子程序,一个将素数以十进制形式输出子程序,然后在主程序中调用子程序,程序框架得以构建。

2.用递归计算50以内Fibonacci 数,以十进制形式输出。

按照设计要求,可以建立循环子程序,递归计算Fibonacci 数,以十进制形式输出,再将新Fibonacci 数与50比较,大于50则退出循环,程序结束。

3.编写一拷贝程序,要求在命令行指定源文件名和目标文件名。

在数据段中编写各种提示语句,在代码段中加入各种判断语句及中断跳转语句,程序运行时,即可根据命令行输入的指定源文件名和目标文件名执行相应的功能。

五、实现步骤1.使用到子程序100 以内的素数,以十进制形式输出。

程序代码如下:DA TAS SEGMENTcount dw 0;存放素数的个数sushu db 100 dup(?);存放素数msgsushu db'all prime numbers below 100 are:','$';显示素数的提示信息msgcount db 0dh,0ah,'count of prime numbers is:',0dh,0ah,'$';显示素数个数的提示信息DA TAS ENDSCODE SEGMENTassume cs:CODE, ds:DATASMAIN PROC FAR ;主程序入口call jisuanlea dx,msgsushu;显示素数的提示信息mov ah,9int 21hcall dispsushu;显示素数lea dx,msgcount;显示素数个数的提示信息mov ah,9int 21hcall dispcount;显示素数个数mov ah,1;按任意键退出int 21hmov ax, 4c00h ;程序结束,返回到操作系统系统int 21hMAIN ENDPjisuan proc nearmov ax, datasmov ds, axlea di,sushumov bh,0mov bl,2;求从2到100的素数、素数个数,BL从2到100变化next11:cmp bl,100ja tjmov dl,2;如果BL不能被DL从2到BL-1整除的话,则BL为素数next12:cmp dl,bljae next13mov ax,bxdiv dlcmp ah,0jz next14;整除则不是素数inc dljmp next12next13:inc count;是素数,则将个数加1mov [di],bl;是素数,则存入相应单元中inc dinext14:inc bljmp next11tj:retjisuan endpdispsushu proc nearlea si,sushumov cx,countnext21:mov ax,count;每行10个素数sub ax,cxmov bl,10div blcmp ah,0jnz next22mov dl,0dh;每行10个素数,行末加回车换行mov ah,2int 21hmov dl,0ahmov ah,2int 21hnext22:mov bl,[si];取出一个素数mov bh,0call disp10;以十进制形式输出mov dl,20h;每个素数之间加一个空格,便于区分mov ah,2int 21hinc siloop next21retdispsushu endpdispcount proc nearmov bx,count;取出素数个数call disp10;以十进制形式输出retdispcount endpdisp10 proc near;该子程序的作用是将BX中的数以十进制形式输出push cxmov cx,10dcall dec_divmov cx,1dcall dec_divpop cxretdec_div proc nearmov ax,bxmov dx,0div cxmov bx,dxmov dl,aladd dl,30hmov ah,2int 21hretdec_div endpdisp10 endpCODE ENDSEND MAIN程序运行结果:2.用递归计算50以内Fibonacci 数,以十进制形式输出。

中南大学汇编课程设计报告

中南大学汇编课程设计报告

中南大学微机原理课程设计报告——信号发生器功能程序设计目录第一章设计题目、要求及目的 (3)1.设计题目要求 (3)2.设计目的 (3)第二章总体设计方案 (3)1.设计思想 (3)2.设计方案 (4)3.总体设计流程图 (5)第三章硬件设计 (5)1.硬件环境要求 (5)2.所用芯片及其功能说明 (6)3.硬件接线图 (9)第四章程序设计 (10)1.流程图 (10)2.典型程序模块及典型编程技巧分析··133.课程设计中遇到的问题及解决方法··144.程序清单和程序注释 (15)第五章收获与体会 (33)第六章参考文献 (33)第一章设计题目、要求及目的1.设计题目及要求设计题目:信号功能发生器设计设计要求:(1)、编程语言为C语言和汇编语言;(2)、硬件电路基于80x86微机的接口电路;(3)、程序功能要求:小键盘给定、数码管(屏幕)显示,并产生对应信号波形(D/A)输出(信号波形包括正弦波、三角波、方波、锯齿波)、输出信号波形幅度、频率可调。

(注意:按键数量应尽量少)。

2.设计目的(1)、熟练掌握汇编语言和C语言,并用它们实现对硬件的操作,实现设计要求。

(2)、学会调试程序,可以通过编译(masm)、链接(link)、运行(run)可以看到汇编程序的运行结果,更多的是要通过Debug来调试以发现程序的逻辑问题,熟练运用Debug可以解决很多问题,如Debug的T命令可以查看单步运行的结果。

(3)、对硬件加深了解,特别是此实验要用到的8255及小键盘等(4)、本课程设计,要求对微机系统有一个较全面的理解,对典型数字接口电路的应用技术有一个较深入的掌握,并对应用系统进行硬件原理和软件编程进行分析、设计和调试,达到基本掌握简单微型计算机应用系统软硬件的设计方法,提高项目开发能力的目的。

第二章总体设计方案1.设计思想该课题要求实现信号功能发生器,首先通过小键盘给定一个按键,并将此信息送入计算机中,由计算机内部根据此信息去实现特定的功能,比如产生正弦波。

中南大学操作系统实验

中南大学操作系统实验

《计算机操作系统》实验设计设计目的1、增强学生对计算机操作系统基本原理、基本理论、基本算法的理解2、提高和培养学生的动手能力设计要求1、每人至少选作1题,多做不限。

2、每人单独完成,可以讨论,但每人的设计内容不得完全相同,抄袭或有2人/多人设计完全一样者,不能通过。

3、设计完成后,应上交课程设计文档,文档格式应是学校课程设计的标准格式,所有学生的封面大小、格式也必须一样4、同时上交设计的软盘(或以班刻录光盘)设计题目设计类✧在i386下写一个程序,从实地址模式进入保护虚地址模式,进而启动分页机制平台:语言:汇编、C✧DOS下中断程序设计设计热键、中断接管程序等平台:DOS语言:ASM、Turbo C、Pascal等✧DOS下的菜单、图形界面程序设计同1✧DOS、下的I/O设备处理程序,如打印机驱动程序、字符设备、块设备、网络设备、USB设备驱动程序平台:DOS语言:ASM TC✧多进程处理程序,进程创建、通信(管道、信号量、共享内存、消息队列等、mmap)、互斥平台:Windows、Linux语言:同上✧多线程程序线程创建、同步、互斥平台:Windows、Linux语言:VC LINUX-GCC JA V A✧Windows下设备驱动程序设计(块设备、字符设备、网络设备、USB设备)✧Linux下设备驱动程序设计(块设备、字符设备、网络设备、USB设备)✧Linux调度实验与参数调整如改变时间片、优先级等✧Linux操作系统内存管理机制实验✧Linux文件管理实验,并增加一个系统调用✧Linux系统调用过程实验,并增加一个系统调用如跟综一个系统调用算法模拟类✧调度算法的模拟模拟各种调度算法,并进行调度性能分析✧银行家算法模拟✧内存管理算法模拟✧页面置换算法模拟✧模拟分段、分页情况下的地址变换逻辑地址-线性地址-物理地址实验一、进程调度试验[目的要求]用高级语言编写和调试一个进程调度程序,以加深对进程的概念及进程调度算法的理解.[准备知识]一、基本概念1、进程的概念;2、进程的状态和进程控制块;3、进程调度算法;二、进程调度1、进程的状态2、进程的结构——PCB进程都是由一系列操作(动作)所组成,通过这些操作来完成其任务。

中南大学计算机实践报告.doc

中南大学计算机实践报告.doc

中南大学计算机实践报告中南大学计算机实践报告中南大学本科生课程设计(实践)任务书、设计报告(计算机程序设计基础FORTRAN)题目线性方程组求解问题学生姓名指导教师学院专业班级学生学号刘卫国土木工程学院土建类班计算机基础教学实验中心202*年6月29日一、实践目的通过本课程设计,培养程序设计能力以及综合解决实际问题的能力。

通过自己分析问题、寻求算法、编写、调试程序的过程,掌握FORTRAN程序设计与调试方法,提高灵活运用所学知识解决问题的能力。

二、设计任务线性病态方程组问题:1/21/31/4x10.951/31/41/5x0.6721/41/51/6x30.52(1)求方程的解。

(2)将方程右边向量元素b3改为0.53,再求解,并比较b3的变化和解的相对变化。

(3)计算系数矩阵A的条件数并分析结论。

提示:矩阵A的条件数等于A的范数与A的逆矩阵的范数的乘积,即cond(A)AA1。

这样定义的条件数总是大于1的。

条件数越接近于1,矩cond(A)AA1阵的性能越好,反之,矩阵的性能越差。

矩阵A的条件数Amax{aij}1jni1m,其中,aij系矩阵A的元素。

要求:(1)方程的系数矩阵、常数向量均从文件中读入。

(2)定义求解线性方程组Ax=b的子程序,要求该子程序能求解任意线性方程组。

(3)在主程序中调用子程序,并对求解结果进行对比分析。

(4)绘制常数向量修改前后所求得的方程解的数据分布图。

三系统坏境系统开发环境为CONSOLEAPPLICAT三.系统功能及系统详细设计四系统功能及系统详细设计。

系统功能分析针对题目要求,我设计的系统主要为了解决题目中所提出并要求的问题。

子程序则各尽其用,不仅可以作为整体系统的重要部分,还可以使用于通用问题。

如三角分解法,可以解决线性方程组的求解问题。

求范数和矩阵求逆的子程序,可以解决相应的问题。

再如绘图程序,将问题(2)的结果直观化,更直观明显的表现了病态方程的特点与定义。

中南大学计算机网络实验报告

中南大学计算机网络实验报告

计算机网络实验报告学院:信息科学与工程学院专业班级:信息安全1302班指导老师:学号:姓名:目录实验一分槽ALOHA协议仿真实验 (3)一、实验目的与要求 (3)二、实验内容与实现原理 (3)三、编程语言和实验环境 (3)四、实验具体设计实现及结果 (4)五、实验总结 (6)实验二Socket通信实验 (7)一、实验目的和要求 (7)二、实验内容与实现原理 (7)三、编程语言和实验环境 (8)四、实验具体设计实现及结果 (8)五、实验总结 (15)实验一分槽ALOHA协议仿真实验一、实验目的与要求1.掌握VB、VC++、VS或JAVA等集成开发环境编写仿真程序的方法;2.理解并掌握分槽ALOHA协议原理。

二、实验内容与实现原理1.实验内容:编写仿真程序,对一定网络环境下MAC层的多路访问协议的分槽ALOHA协议进行实现。

通过仿真,学习协议采取的介质访问管理,包括介质分配和冲突解决机制,并对协议的性能与理论结果进行比较分析。

2.实现原理设置各站点初始产生包的时间点及产生包的时间间隔(均为随机值),得到所有站点成功发送1000个数据包的总时间以及这段时间内所有数据包的个数(包括各站点每次新产生的包以及由于冲突而重发的包),从而计算出每包时内尝试次数及其对应的吞吐量。

针对不同的包产生间隔,得到不同的每包时内尝试次数及其对应的吞吐量,将其画成一条曲线。

三、编程语言和实验环境1.编程语言Matlab2.编程环境Windows(MS Visual系列,VC/VB/;)四、实验具体设计实现及结果(含流程图及关键代码说明)1.实验代码for m=2:1:500 %m表示标签数,m=2,3 (500)n=1000; %aloha算法,m表示m个标签,n表示重发次数A=rand(m,n); %生成一个0-1分布的矩阵,A表示m行n列的矩阵,元素为0-1之间的随机数A1=0.5*A; %生成一个0-0.5分布的矩阵,假设随机退避时间服从0-0.5分布B=cumsum(A1,2); %矩阵B是对A1每列相加得到的,每列的累加和,表示随机发送的时间T=B(1,n); %T为标签均发送时间,即为观察时间,把矩阵B的第一行的最后一个元素赋给TC=1:1:(m*n); %生成一个向量for i=1:m %将矩阵B转化为向量,赋值到向量Cfor j=1:nC(1,(i-1)*n+j)=B(i,j);endendD=sort(C); %将向量按从小到大的顺序排序,用于计算两数据包之间的时间差E=diff(D); %向量的微分,求两数据包之间的时间差,用于判断是否产生碰撞T0=0.001; %每个数据包的宽度N=0; %初始化N(发送成功的数据包)M=0; %初始化M,总共的数据包for i=1:(m*n-1) %此循环用于计算M与Nif D(1,i)<=T %只要小于观察时间T就加1M=M+1;if i==1&E(1,1)>=T0 %对于时间轴上的第1个和第m*n个数据包只需判断一个时间差,其他需要判断两个N=N+1;elseif i==(m*n-1)&E(1,(m*n-1))>=T0N=N+1;elseif i~=1&i~=(m*n-1)&E(1,i)>=T0&E(1,i-1)>=T0N=N+1;endelse continueendendG=T0/T*M; %仿真得到的平均交换的数据包量,由于这里假设所有数据包的宽度相同且都为T0, T为观察时间S=T0/T*N; %仿真得到的吞吐量Q=S/G; %发送成功率F=m/500; %归一化标签数,便于观察随标签数的变化其他量的变化情况plot(G,S,'r.',G,Q,'ko',G,F,'g*'); %绘出G与S,Q,F的图像hold on; %保留在同一张图上endxlabel('平均交换的数据包量G'); %添加X轴的标题title('aloha算法仿真'); %添加标题legend('吞吐量S','发送成功率Q','归一化标签数F'); %添加注释grid on; %添加网格2.实验结果五、实验总结这次网络实验选择了分槽ALOHA协议仿真实验,做的过程中开始还是有很多很多不明白的地方,不过在向同学请教以及查阅相关资料后还是成功解决了这些不明白的问题。

中南大学《编译原理》上机实习课程实验报告

中南大学《编译原理》上机实习课程实验报告

编译原理课程实验上机实习中南大学计算机0706班方文一、目的加强学生对编译过程的整体认识,而不是个别阶段的实习。

二、实习要求扩充语句部分:for语句、repeat语句、case语句;三、PL语言及其编译程序1.词法分析2.语法分析3.语义分析及中间代码生成4.汇编代码生成四、扩充1.扩充repeat语句扩充文法<循环语句>::=”repeat”<语句>”until”<表达式>扩充函数:详见文件夹Assignment运行示例:示例代码:program pp;var n,p:integer;procedure p2(n:integer);beginrepeatbegincall write(n);n:=n-1enduntil n=0end;begincall p2(5)end.生成中间代码:0 JMP 0 , 15 ------> 无条件跳转1 JMP 0 ,2 ------> 无条件跳转2 ENTP 2 , 4 ------> 进入过程3 LOD 2 , 3 ------> 装入变量值4 WRITE 0 , 0 ------> 写指令5 LODA 2 , 3 ------> 装入变量地址6 LOD 2 , 3 ------> 装入变量值7 LIT 0 , 1 ------> 装入常量8 SUB 0 , 0 ------> 减9 STO 0 , 0 ------> 将栈顶值存入栈顶次值所指单元10 LOD 2 , 3 ------> 装入变量值11 LIT 0 , 0 ------> 装入常量12 EQ 0 , 0 ------> ==13 JPC 0 , 3 ------> 栈顶值为0时跳转14 RETP 0 , 0 ------> 过程返回15 ENTP 1 , 4 ------> 进入过程16 OPAC 0 , 0 ------> 打开活动记录17 LIT 0 , 5 ------> 装入常量18 CALL 1 , 2 ------> 转子19 ENDP 0 , 0 ------> 程序结束解释运行结果:Your Output:5Your Output:4Your Output:3Your Output:2Your Output:12.扩充for语句扩充文法<循环语句>::=“for”“(”<赋值语句> “;”<表达式> “;”<语句> “)”扩充函数详见文件夹Assignment运行示例示例代码:program pp;var n,p:integer;procedure p1(n:integer;var p:integer);beginfor(p:=1;p<=5;p:=p+1)begincall write(p);endend;begincall read(n);call p1(n,p);call read(n);end.生成中间代码:0 JMP 0 , 19 ------> 无条件跳转1 JMP 0 ,2 ------> 无条件跳转2 ENTP 2 , 5 ------> 进入过程3 LOD 2 ,4 ------> 装入变量值4 LIT 0 , 1 ------> 装入常量5 STO 0 , 0 ------> 将栈顶值存入栈顶次值所指单元6 ILOD 2 , 4 ------> 间接装入7 LIT 0 , 5 ------> 装入常量8 LEQ 0 , 0 ------> <=9 JPC 0 , 18 ------> 栈顶值为0时跳转10 LOD 2 , 4 ------> 装入变量值11 ILOD 2 , 4 ------> 间接装入12 LIT 0 , 1 ------> 装入常量13 ADD 0 , 0 ------> 加14 STO 0 , 0 ------> 将栈顶值存入栈顶次值所指单元15 ILOD 2 , 4 ------> 间接装入16 WRITE 0 , 0 ------> 写指令17 JMP 0 , 6 ------> 无条件跳转18 RETP 0 , 0 ------> 过程返回19 ENTP 1 , 5 ------> 进入过程20 LODA 1 , 3 ------> 装入变量地址21 READ 0 , 0 ------> 读指令22 OPAC 0 , 0 ------> 打开活动记录23 LOD 1 , 3 ------> 装入变量值24 LODA 1 , 4 ------> 装入变量地址25 CALL 1 , 2 ------> 转子26 LODA 1 , 3 ------> 装入变量地址27 READ 0 , 0 ------> 读指令28 ENDP 0 , 0 ------> 程序结束解释运行结果:29翻译开始Your Output:2Your Output:3Your Output:4Your Output:5Your Output:6翻译结束。

中南大学单片机实验报告

中南大学单片机实验报告

单片机原理及应用系统设计实验报告学院:信息科学与工程学院班级:学号:姓名:指导老师:目录第一章综述 0第二章实验要求 (1)第三章软件设计 (2)1 清零程序 (2)2 拆字程序 (3)3 拼字程序 (4)4 数据传送程序设计 (5)5 排序程序 (7)6 散转程序 (8)第四章硬件设计 (10)1 数字量输入输出实验 (10)1)硬件构造: (10)2)程序代码: (10)2 定时器/计数器实验 (12)1)硬件构造: (13)2)程序代码: (14)3 A/D、D/A转换实验 (15)1)硬件构造: (15)2)程序代码: (15)4 串行通信软件设计 (19)1)硬件构造: (20)2)程序代码: (20)第五章调试过程及体会 (24)1 调试过程 (24)2 收获体会 (24)第一章综述单片机也被称为微控制器(Microcontroller),是因为它最早被用在工业控制领域。

单片机由芯片内仅有CPU的专用处理器发展而来。

最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。

INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。

单片机是靠程序运行的,并且可以修改。

通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。

一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB板!但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性!单片机诞生于20世纪70年代末,经历了SCM、MCU、SoC三大阶段。

1.SCM即单片微型计算机(Single Chip Microcomputer)阶段,主要是寻求最佳的单片形态嵌入式系统的最佳体系结构。

中南大学 汇编语言实验报告

中南大学 汇编语言实验报告

中南大学汇编语言实验报告计算机原理与汇编实验报告学生姓名学号专业班级指导教师贺建飚学院信息科学与工程学院完成时间 2019年6月实验一二进制转十六进制一、实验目的(1) 掌握循环程序的设计方法。

(2)掌握汇编语言源程序的编辑、汇编、连接及调试过程。

(3)进一步熟悉利用DEBUG程序修改参数的方法,并检查和验证结果的正确性。

(4) 学会针对不同的问题,选用不同的组织循环的方法。

二、实验要求掌握循环程序的过程和汇编实现原理,进一步熟练掌握DEBUG操作指令以及汇编语言源程序的编辑、汇编、连接及调试过程。

三、实验内容掌握循环排序算法的思想:二进制到十六进制转换程序实验代码如下:assume cs:codecode segmentmain proc farstart: mov bx,[**************]0b ;待转换成十六进制的二进制数 mov ch,4 ;设置循环次数rotate: mov cl,4 ;设置循环左移的位数rol bx,cl ;将bx中的每位依次循环左移4位,;每左移一次,把最高位同时移入CF和操作数最低位mov al,bland al,0fh ;将al高4位清0,保留从rol循环移位到al低四位的值add al,30h ;将4位二进制数转换成对应的ASCII码cmp al,3ah ;判定4位二进制数是否大于9jl printadd al,7hprint: mov dl,al ;调用中断程序输出单个字符mov ah,2int 21hdec ch ;继续循环,直到循环4次为止jnz rotatemain endpmov ax,4c00hint 21hcode endsend四、实验结果DEBUG调试如下:五、实验心得编了这个程序之后发现,想要真正理解一个程序都是需要掌握众多助记符的用法以及它的意思,只有了解并明白了这些之后才可以分析程序或者是编写简单的小程序。

实验二起泡排序算法的程序实现一、实验目的(1)掌握循环程序的设计方法。

中南大学 计算机体系结构实验报告

中南大学 计算机体系结构实验报告

计算机体系结构课程设计学院:信息科学与工程学院专业班级:指导老师:学号:姓名:.目录实验1 对指令操作码进行霍夫曼编码 (3)一、实验目的 (3)二、实验内容 (3)三、设计思路 (4)四、关键代码 (4)五、实验截图 (5)六、源代码 (5)实验2 使用LRU 方法更新Cache (8)一、实验目的 (8)二、实验内容 (8)三、设计思路 (9)四、程序截图 (9)五、实验代码 (9)实验总结 (16)参考文献 (16).实验1 对指令操作码进行霍夫曼编码一、实验目的了解和掌握指令编码的基本要求和基本原理二、实验内容1. 使用编程工具编写一个程序,对一组指令进行霍夫曼编码,并输出最后的编码结果以及对指令码的长度进行评价。

与扩展操作码和等长编码进行比较。

2. 问题描述以及问题分析举例说明此问题,例如:P1 P2 P3 P4 P5 P6 P70.45 0.30 0.15 0.05 0.03 0.01 0.01下表所示:对此组指令进行 HUFFMAN 编码正如下图所示:最后得到的HUFFMAN 编码如下表所示:最短编码长度为:H=0.45*1+0.30*2+0.15*3+0.05*4+0.03*5+0.01*6+0.01*6=-1.95.要对指令的操作码进行 HUFFMAN 编码,只要根据指令的各类操作码的出现概率构造HUFFMAN 树再进行 HUFFAM 编码。

此过程的难点构造 HUFFMAN 树,进行 HUFFAM 编码只要对你所生成的 HUFFMAN 树进行中序遍历即可完成编码工作。

三、设计思路观察上图,不难看出构造 HUFFMAN 树所要做的工作:1、先对各指令操作码的出现概率进行排序,构造一个有序链表。

2、再取出两个最小的概率节点相加,生成一个生的节点加入到链表中,同时从两表中删除此两个节点。

3、在对链表进行排序,链表是否只有一个节点,是则 HUFFAN 树构造完毕,否则继续做 2 的操作。

中南大学 计算机实践报告

中南大学 计算机实践报告

中南大学本科生课程设计(实践)任务书、设计报告(大学计算机基础)题目学生姓名指导教师学院专业班级学生学号计算机基础教学实验中心2018年 1 月9 日计算机实践报告任务内容:我的实验主题是绿色家园,即我们的地球。

地球是我们生活的家园,我们应当对它有必要的了解。

不仅是地球上的各种各样的资源,各种各样的生命,各种各样的风景以及很多很多的美好,还要看到它目前所面临的困境,从而明白我们的美丽家园需要我们共同爱护。

以绿色家园为题不仅是对我们美丽家园的赞美,也是对未来我们的家园仍能是一个绿色的家园的美好希冀。

借此来倡导人们热爱地球,自觉的去保护我们的地球。

设计的步骤:以绿色家园为主题,来描述我们的地球,首先要对地球有一个描述,所以我讲首页设为:地球,我们的家!在这一页面中,放置了地球的一张在太空中的图片,让人们对地球有一个基本的印象,并且对后面图片有一个的一个总领的作用。

在右边,我放置了地球的基本知识,与图片相呼应,作为整个网页的一个开头。

在这两项下面,我罗列了几张地球上风景照片,无论是沙漠戈壁还是森林草原,亦或是极地冰原,都有它独特的魅力,使人心旷神怡。

所以我在本页面插入了吕雯的歌曲--《地球》,并且在右边附有歌词。

歌词不仅是用来听歌曲,歌词本身就是对地球的歌颂。

在总体上介绍完之后,我准备分别介绍地球上丰富的资源与多彩的生命。

首先是丰富的资源,在这一页面中,我选择了以图配文的方式,精心选择数个有太表型的自然资源与能源,在左边插入图片,在右边配以相应的文字解释。

这种搭配比较简单但却十分有效,不禁使人一目了然,并且简洁页面设置给人一种清新的感觉。

关于多彩的生命,我也是采用的图文结合的方式,但这次确实将图片不规则的罗列在上方,有一种特殊的美感,在下面,普通的文章已经不能表达生命之可爱。

所以只能令人想起诗句和歌曲,我则选择了汪峰的《怒放的生命》。

生命如烟花般美丽,只有烟花的璀璨才可比喻生命的精彩,所以我在歌曲右边插入的一张烟花图片,并且上面加入一个flash,其内容为:怒放的生命,并且像烟花一样绽放。

中南大学 编译原理实验报告

中南大学 编译原理实验报告

CENTRAL SOUTH UNIVERSITY编译原理实验报告学生姓名专业班级学号学院信息科学与工程学院指导教师张修如实验时间 2015年5月实验一计算FIRSTVT集一、实验目的进一步培养学生编译器设计的思想,加深对编译原理和应用程序的理解,针对编译过程的重点和难点内容进行编程,独立完成有一定工作量的程序设计任务,同时强调好的程序设计风格,并综合使用程序设计语言、数据结构和编译原理的知识,熟悉使用开发工具VC /JA V A/C#/.NET 。

二、实验内容设计一个由正规文法生成FIRSTVT集的算法动态模拟,实现以下功能:1.输入一个文法G;2.输出由文法G构造FIRSTVT集的算法;3.输出FIRSTVT集。

三、实验要求1.思想的正确性,采用合适的数据存储结构等;2.程序实现的正确性,程序整体结构合理、编程风格规范等;3.程序功能的完善程度,包括功能的基本实现、基本完善、完全实现;4.工作认真、独立完成实验。

四、实验步骤1.问题理解和分析:充分地分析和理解问题本身,弄清要求做什么;2.确定解决问题的方法:主要是找到解决问题的主要思路,该怎么做;3.详细设计和编码:确定算法的主要流程,再进行编程;4.程序调试和运行:掌握程序调试和排错的基本方法,增加编程的感觉和解决问题的成就感;5.完成实验报告。

五、程序设计5.1基本算法构造集合FIRSTVT(P)的算法按FIRSTVT(P)的定义,可以用如下两条归则来构造:(1)若有产生式P→a…或→Qa…,则a∈FIRSTVT(P)(2)若a∈FIRSTVT(Q),且有产生式P→Q…,则a∈FIRSTVT(P)构造算法:建立一个二维布尔数组F[P,a],使得F[P,a]为真的条件适当且仅当a∈FIRSTVT(P);再用一个栈STACK,把所有初值为真的数组元素F[P,a]的符号对(P,a)全都放到栈中;算法如下:(1)将布尔矩阵各元素置假;栈置空;(2)按照归则(1)查看产生式,对于P→a…或P→Qa..,置相应F[P,a]为真,符号对(P,a)入栈;(3)按规则(2),对栈施加如下操作:弹出栈定符号对记作(Q,a),查看所有产生式是否有形如P→Q…产生式,若有,且a∈FIRSTVT(P),则将F[P,a]置为真,并把(P,a)入栈;(4)重复(3),直到栈空为止。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中南大学《计算机原理与汇编》实验报告学生姓名学号专业班级指导教师雷向东学院信息科学与工程学院完成时间 2010年12月实验2 算术逻辑运算实验一、实验目的1.掌握简单运算器的组成以及数据传送通路。

2.验证运算功能发生器(74LS181)的组合功能。

二、实验设备74LS181(两片),74LS273(两片), 74LS245(一片),开关若干,灯泡若干,单脉冲一片。

三、实验原理实验中的运算器由两片74LS181以并/串形式构成8位字长的ALU。

运算器的输出经过一个三态门(74LS245)和数据总线相连,运算器的两个数据输入端分别由两个锁存器(74LS373)锁存,锁存器的输入连至数据总线,数据开关用来给出参与运算的数据(A和B),并经过一个三态门(74LS245)和数据显示灯相连,显示结果。

74LS181:完成加法运算。

74LS273:输入端接数据开关,输出端181。

在收到上升沿的时钟信号前181和其输出数据线之间是隔断的。

在收到上升沿信号后,其将输出端的数据将传到181,同时,作为触发器,其也将输入的数据进行保存。

因此,通过增加该芯片,可以通过顺序输入时钟信号,将不同寄存器中的数据通过同一组输出数据线传输到181芯片的不同引脚之中。

74LS245:相当于181的输出和数据显示灯泡组件之间的一个开关,在开始实验后将其打开,可以使181的运算结果输出并显示到灯泡上。

四、实验步骤及结果分析1.选择实验设备:根据实验原理图,将所需要的组件从组件列表中拖到实验设计流程栏中。

图1 运算器实验流程图2.搭建实验流程:将已选择的组件进行连线(鼠标从一个引脚的端点拖动到另一组件的引脚端,即完成连线)。

搭建好的实验流程图如图1所示。

具体操作如下:①将74LS273芯片的0-7号引脚(数据端从低到高)及9号引脚(复位端)接到开关上,8号引脚接至单脉冲组件,左右两个74LS273芯片分别保存参与运算的数据A和B。

接着把两个74LS273组件的11-14号引脚(数据的低四位)分别接到74LS181组件(左)的0-7号引脚上,其中0-3号引脚为A的低四位,4-7号引脚为B的低四位。

同样的,把两个74LS273组件的15-18号引脚(数据的高四位)分别接到74LS181组件(右)的0-7号引脚上,其中0-3号引脚为A 的高四位,4-7号引脚为B的高四位。

②74LS181的8-12号引脚(S0-S3、M)接到开关上控制逻辑/算术运算。

把低位的74LS181芯片(左)的13号引脚(CN端)由开关控制,高位的74LS181芯片(右)的13号引脚CN与低位的74LS181的15号进位输出相连。

③最后,把两个74LS181芯片的16-19号引脚顺序接到74LS245的0-7接口上。

74LS245芯片的8、9号引脚接开关,11―18号输出引脚(低位到高位)接灯泡,作为运算器结果的显示。

初始化各芯片的控制信号, 数据开关置上相应的数据。

3.初始化各芯片的控制信号,数据开关置上相应的数据(A置为65H,B置为A7H)。

结果如图2所示。

图2 实验连线图4.点击“运行”按钮,分别点击左右两个单脉冲组件,把参与运算的数据B和A置入两个锁存器中。

通过改变S3,S2,S1,S0,M,CN的组合来实现不同的功能,根据连接到245的灯泡显示情况,可以对输入数据和输出结果进行检验(因为当ALU的控制信号位1111时其将直接输出A,为1010时直接输出B),74LS181的功能见表2-1, A和B分别表示参与运算的两个数,“+”表示逻辑或,“加”表示算术求和。

表2-15.通过前面的操作,我们将A置为65H,B置为A7H。

然后改变运算器的控制电平S3,S2,S1,S0,M,CN的组合,观察运算器的输出,填入表2-2中,并和理论值进行比较,验证74LS181的功能。

表2-2实验4 移位运算实验一.实验目的1.掌握移位寄存器的工作原理及其应用。

2.熟悉移位寄存器的逻辑功能及实现各种移位功能的方法。

二.实验设备74LS194组件一片,单脉冲一个,开关若干,灯泡若干三.实验原理移位寄存器是一种由触发器连接组成的同步时序电路,每个触发器的输出连到下一级触发器的数据输入,所有触发器共用一个时钟脉冲源,在时钟脉冲的作用下,存储在移位寄存器中的二进制信息,逐位左移或右移。

移位寄存器原理框图如图4所示:图4 移位寄存器原理框图在上图中,每一个方框A、B、C、D代表一位寄存器。

如果移位寄存器原状态为1000,A输入接地,每送一个CP时钟之后,数码“1”由A―D 的方向移动一位,若逐级移动,它就实现了寄存器的串行输入——串行输出的移位工作方式。

四.实验步骤及结果分析1.选择实验设备:根据实验原理图,将所需要的组件从组件列表中拖到实验设计流程栏中。

2.搭建实验流程:将已选择的组件进行连线,搭建好的实验流程图如图5所示。

图5 移位寄存器实验流程图3. 验证74LS194双向移位寄存器的逻辑功能。

芯片引脚如下: 0-3号引脚是4个并行输入端A ~D ,4,5号是和右移输入端DSR 和左移输入端DSL ,6、7号引脚是S0、S1两个控制输入端,8号是复位端RD (低电平有效)为“异步清零”输入端,9、10号引脚分别是CP 时钟脉冲和电源信号,11-14号为QA ~QD 输出端,15号引脚是接地端。

它能实现清零、存数、移位、保持等功能。

①清零:给RD 一个低电平,则清除原寄存器中的数码,实现QA 、QB 、QC 、QD 清零。

结果如图4-1、4-2。

图4-1 当S1=S0=1,置入数据D 3D 2D 1D 0=0111 图4-2 RD=0,清除原寄存器中的数码②存数:当S1=S0=1时,CP 上升沿到达时,触发器被置为QAn+1=A,QBn+1=B,QCn+1=C,QDn+1=D,移位寄存器处于“数据并行输入”状态。

结果如图4-3。

图4-3 当S1=S0=1时,RD=1,置入数据D 3D 2D 1D 0=1010,输出为Q 3Q 2Q 1Q 0=1010。

③移位:S1=0,S0=1,CP 上升沿到达时,触发器被置为QAn+1=DSR,QBn+1=QAn, QCn+1=QBn,QDn+1=QCn,这时移位寄存器处在“右移”工作状态。

S1=1,S0=0,CP 上升沿到达时,触发器被置为QAn+1=QBn,QBn+1=QCn,QCn+1=QDn,QDn+1= DSL ,这时移位寄存器处在“左移”工作状态。

图4-4 当S1=S0=1时,RD=1,置入数据D 3D 2D 1D 0=1110,输出为Q 3Q 2Q 1Q 0=1110。

图4-5 S1=0,S0=1,CP上升沿到达时,移位寄存器处在“右移”工作状态。

输出为Q3Q2Q1Q=1100。

图4-6 S1=1,S0=0,CP上升沿到达时,移位寄存器处在“左移”工作状态。

输出为Q3Q2Q1Q0=0110。

④保持:当S1=S0=0时,Qin+1= Qin ,移位寄存器处在“保持”工作状态。

图4-7 当S1=S0=0时,移位寄存器处在“保持”工作状态,输出为Q 3Q 2Q 1Q 0=0110。

74LS194的真值表实验5 存储器实验一.实验目的1.掌握静态存储随机存储器RAM的工作特性。

2.掌握静态存储随机存储器RAM的读写方法。

二.实验设备74LS273组件一片,静态存储器MEMORY6116组件一片(是一个2k×8的静态存储器。

在本实验中只使用8位地址),单脉冲一个,开关若干,灯泡若干。

三.实验原理本实验所用的静态存储器由一片6116(2K×8)构成,其数据线接至数据开关,地址线由地址锁存器(74LS373)给出。

因地址寄存器为8位,接入6116的地址A7-A0,而高三位A8-A10接地,所以其实际容量为256字节。

6116有三个控制线:CE(片选线)、OE(读线)、WE(写线)。

当片选CE=0,读信号OE=0时,进行读操作,当片选CE=0,写信号WE=1时,进行写操作。

由于本实验中将OE常接地,这样,当CE=0、WE=0时进行读操作,CE=0、WE=1时进行写操作,写时间与T3脉冲宽度一致。

四.实验步骤及结果分析1.选择实验设备:根据实验原理图,将所需要的组件从组件列表中拖到实验设计流程栏中。

2.搭建实验流程:将已选择的组件进行连线, 74LS273的0―7号输入引脚(数据端)、9号引脚(复位端)分别接到开关上,8号引脚接单脉冲信号,11-18号输出引脚接到静态MEMORY的0-7号地址输入引脚。

静态MEMORY的高3位地址输入引脚8―10统一置0,由开关控制,使存储器实际容量为256个字节。

11-13号使能端(CE 、WE、OE)分别由开关控制,14-21号数据端同时接入开关和灯泡,进行读写操作,开关控制欲写入存储器的数据,灯泡用于从存储器读出数据的显示。

实验流程图如图6所示。

3.设置相应芯片的控制位.(273的9号引脚为1,6116的CE=1,WE=1,OE=0.)4.写入数据:点击运行按钮,74LS273的连接的地址数据开关作为地址输入端可以自己设置,设置完毕后,双击单脉冲信号,将地址数据输入到74LS273里面去。

因为静态MEMORY6116的11号引脚(CE端)为0,12号引脚(WE端)为0时写入数据,所以11,12号引脚置0,13号引脚(OE端)置0,静态MEMORY6116连接的开关作为数据输入端,将数据写到指定的存储器单元中去。

输入数据可以由用户自己设置。

这样就完成了存储器的写操作,重复上述过程可以完成其他地址的数据写入过程。

记录下此时写入各个单元的数据,以便进行读操作时验证。

5.读出数据:把静态MEMORY6116的11号引脚(CE端)和13号(OE端)引脚设置为0,12号引脚(WE端)置为1,然后置地址,触发脉冲,则可以从灯泡中读出相应地址中的数据。

完成读操作。

检查读的数据与刚记录的数据是否一样。

图5-1 将地址数据输入到74LS273图5-2 将数据00000101写到指定的存储器单元中读的数据与刚记录的数据00000101一样。

图5-4 置入错误地址00000101,未读出所记录数据汇编实验冒泡排序一.实验目的1.掌握冒泡排序的主要算法思想。

2.熟悉汇编语言的编程过程。

二.实验设备计算机一台(含Masm for Windows 开发环境)三、实验要求使用汇编语言,将10个有符号十进制整数,通过冒泡排序法进行排序后,将排序好的10个有符号十进制整数输出,显示在屏幕上。

四、实现方法和过程1.模块层次图2.系统结构图(1)主程序流程图(2)冒泡排序子程序流程图3.功能模块设计说明(1)main模块输入:从键盘输入十个有符号十进制整数输出:在屏幕上显示排好序的十个十进制整数功能:通过对input,bubblesort,output三个模块的调用实现将屏幕上输入的10个十进制有符号整数进行冒泡排序,然后将排好序的10个十进制有符号整数显示在屏幕上。

相关文档
最新文档