搜档网
当前位置:搜档网 › 计算机系统试验

计算机系统试验

计算机系统试验
计算机系统试验

计算机系统实验报告

题目:求1到n之间所有偶数的平方和

院(系):计算机与信息安全学院

专业:计算机技术

学生姓名:侯权

学号:1403303022

指导教师:陈智勇

一、课程设计课题任务的要求

题目:设计一台嵌入式的8位CISC模型计算机,并运行能完成一定功能的机器语言程序进行验证,程序功能是:

?输入一个无符号整数n,求1到n之间所有偶数的平方和并输出显示。

说明:数据从外部输入。

二、本课程设计工作内容

1.完成系统的总体设计,画出模型机数据通路框图;

2.设计微程序控制器(CISC模型计算机)的逻辑结构框图;

3.设计机器指令格式和指令系统;

4.设计时序产生器电路;

5.设计所有机器指令的微程序流程图;

6.设计操作控制器单元;

●在CISC模型计算机中,设计的内容包括微指令格式(建议采用全水平型微指令)、

微指令代码表(根据微程序流程图和微指令格式来设计)和微程序控制器硬件电路

(包括地址转移逻辑电路、微地址寄存器、微命令寄存器和控制存储器等。具体电

路根据微程序控制器的逻辑结构框图、微指令格式和微指令代码来设计)。

7.设计模型机的所有单元电路,并用VHDL语言(也可使用GDF文件----图形描述文件)

对模型机中的各个部件进行编程,并使之成为一个统一的整体,即形成顶层电路或顶层文件;

8.由给出的题目和设计的指令系统编写相应的汇编语言源程序;

9.根据设计的指令格式,将汇编语言源程序手工转换成机器语言源程序,并将其设计到模

型机中的ROM中去;

10.使用EDA软件进行功能仿真,要保证其结果满足题目的要求;(其中要利用EDA软件提

供的波形编辑器,选择合适的输入输出信号及中间信号进行调试。)

三、试验完成的内容

1、系统的总体设计

系统数据通路图如图1所示:

图1 系统数据通路图

2、操作控制器逻辑框图

微程序控制器组成原理框图如图2所示。它主要由控制器、微指令寄存器和地址转移逻辑电路三大部分组成,其中微指令寄存器分为微地址寄存器和微命令寄存器两部分。

图2 微程序控制器逻辑结构框图

3、模型机机器指令格式和指令系统

CISC模型机的指令系统采用复杂的指令格式、多种指令字长度和多种寻址方式,但指令功能强大,单条指令的执行速度较慢。为了完成题目所要求的功能,模型机的指令系统共设计了8条不同的功能指令。指令字长度有单字长(1个字节)和双字长(2个字节)两种;寻址方式有三种,分别是寄存器寻址、直接寻址和立即寻址。这9条指令是IN1(输入),MOV(将一个数送入寄存器),CMP(比较),JB(小于跳转),ADD(两数相加),INC(自增1),JMP(无条件跳转),OUT1(输出),MUL(两数相乘)。

下面分别介绍这些指令的格式:

(1)、I/O指令

7 6 5 4 3 2 1 0

操作码XX Rd

(2)、转移指令

条件转移指令(JB)和无条件转移指令(JMP)采用双字节指令,其格式如

7 6 5 4 3 2 1 0

操作码XX

addr

(3)、比较指令和相加指令

(4)、MOV指令

(5)、自增指令

模型机的指令系统中共有8条基本指令,表中列出每条指令的助记符号、指令格式和功能。

OUT1 Rs 0111 Rs XX (Rs) →LED

JMP addr 0110 XX XX

addr→PC addr

MUL 1000 Rs Rd Rs*Rd→Rd

4、时序波形图

CISC微处理器的时钟信号CLK和清除信号CLR由外部输入,节拍脉冲信号Ti由时序产生器产生。图3描述了节拍脉冲信号与外部时钟信号、清除信号的时序关系。

由图可以看出,节拍脉冲信号T1、T2、T3、T4实际上是以CLK为时钟输入信号的计数状态经过译码器译码后生成的,因此可写出节拍脉冲信号的逻辑表达式,并用VHDL语言实现之,然后将它创建为一个元件符号,供顶层电路调用

时序波形图如下图所示,描述了各元器件之间的关系。

图3 时序波形图

5、微程序流程图

根据模型机的数据通路图(图1)以及所有指令在CISC模型机中的操作过程,画出所有机器指令的微程序流程图,如图4所示。图中每个框为一个CPU周期对应于一条微指令。框中上面的十六进制数表示的是当前微指令在控制存储器中的微地址;框中下面的十六进制数表示的是当前微指令的后续微坡地。在编写微指令时,图中的菱形框从属于它上面的方框。

图4 CISC模型机中所有机器指令的微程序流程图

6、设计微指令格式和微指令代码表

(1)微指令格式

CISC模型机系统使用的微指令采用全水平型微指令,字长25位,其中微指令字段17位,P字段2位,后续微地址6位。其格式如下:

(2)微指令代码

由微指令格式和微程序流程图编写的微指令代码表如图5所示

微地址微命令字段P1 P2 后继微地址000000 1110011001001110 0 0 000001

000001 1001011001000110 1 0 010000

000010 1000111001000110 0 0 000000

000011 1000001001011110 0 0 000100

000100 1000011011001111 0 0 000000

000101 1000001001011110 0 0 000110

000110 1000111000001110 0 0 000000

000111 1000111100001110 0 0 000000

001000 0100011001000110 0 0 000000

010000 1000111001001010 0 0 000000

010001 1110011001001110 0 0 000010

010010 1000010001101110 0 0 000011

010011 1110011001001110 0 1 000000

010100 1000010001101110 0 0 000101

010101 1000001001101110 0 0 000111

010110 1110011001001110 0 0 001000

010111 1000010001001100 0 0 000000

011000 1000010001101110 0 0 011001

011001 1000001001011110 0 0 011010

011010 1000111110001110 0 0 000000

100000 0100011001000110 0 0 000000

图5 微指令代码表

(3)微程序控制器

微程序控制器器由地址转移逻辑电路ADDR、微地址寄存器aa、控制存储器CONTROM和微命令寄存器MCOMMAND等几部分组成。为了方便电路的设计与连线,在进行本模型机微程序控制器单元内部结构设计时,增加了F1、F2和F3共三个用于多根单线与总线之间转换的器件。

微程序控制器单元的内部结构如图6所示

图6 微程序控制器的内部结构图

(4)微地址寄存器aa的内部结构如图7所示。

图7 微地址寄存器的内部结构图

7、各单元电路图及VHD代码

(1)ALU单元

算术逻辑运算单元ALU可执行三种运算,即加、比较和加1运算。ALU的三种运算受S0、S1控制。

ALU单元如图8所示

图8 ALU单元

ALU的代码如下:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_ARITH.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY ALU IS

PORT(

A: IN STD_LOGIC_VECTOR(7 DOWNTO 0);

B: IN STD_LOGIC_VECTOR(7 DOWNTO 0);

S1,S0: IN STD_LOGIC;

BCDOUT: OUT STD_LOGIC_VECTOR(7 DOWNTO 0) ;

CF,ZF: OUT STD_LOGIC

);

END ALU;

ARCHITECTURE A OF ALU IS

SIGNAL AA,BB,TEMP:STD_LOGIC_VECTOR(8 DOWNTO 0);

BEGIN

PROCESS

BEGIN

IF(S1='0' AND S0='0') THEN --ADD

AA<='0'&A;

BB<='0'&B;

TEMP<=AA+BB;

BCDOUT<=TEMP(7 DOWNTO 0);

homework1

《计算机系统基础》Homework HW1:数据的表示 实验目的:熟悉数值数据在计算机内部的表示方式,掌握相关的处理语句。 实验报告要求: 1.说明你做实验的过程(重要步骤用屏幕截图表示)。 2.提交源程序。 3.分析或回答问题。 完成下列实验,提交实验报告: 1.下述两个结构所占存储空间多大?结构中各分量所在位置相对于结构起始位置的偏移 量是什么?要求编写程序以验证你的答案。若使用#pragma pack(2)语句,则结果又如何? struct test1 { char x2[3]; short x3[2]; int x1; long long x4; }; struct test2 { char x2[3]; short x3[2]; int x1; long long x4; }__attribute__((aligned(8))); 2.“-2 < 2”和“-2 < 2u”的结果一样吗?为什么? 3.运行下图中的程序代码,并对程序输出结果进行分析。

4.运行下列代码,并对输出结果进行分析。 #include void main() { union NUM { int a; char b[4]; } num; num.a = 0x12345678; printf("0x%X\n", num.b[2]); } 5.请说明下列赋值语句执行后,各个变量对应的机器数和真值各是多少?编写一段程序代 码并进行编译,观察默认情况下,编译器是否报warning。如果有warning信息的话,分析为何会出现这种warning信息。 int a = 2147483648; int b = -2147483648; int c = 2147483649; unsigned short d = 65539; short e = -32790; 6.完成书上第二章习题中第40题,提交代码,并在程序中以十六进制形式打印变量u的 机器数。 7.编译运行以下程序,并至少重复运行3次。 void main() { double x=23.001, y=24.001, z=1.0; for (int i=0; i<10; i++) { if ((y-x)==z) printf("equal\n"); else printf("not equal\n"); x += z; y += z; printf("%d, %f , %f\n”, i, x, y); } } 要求: (1)给出每次运行的结果截图。 (2)每次运行过程中,是否每一次循环中的判等结果都一致?为什么? (3)每次运行过程中,每一次循环输出的i、x和y的结果分别是什么?为什么?

实验室管理系统详细设计

实验室管理系统 第一章:引言 1.1课题背景 计算机技术的进步, 促使现代工业技术在快速发展,随着科研和生产技术的不断发展, 原来的人工管理模式已显得不太适应, 而对于高校实验室, 无论其规模的大小, 每时每刻都会产生例如实验设备信息、实验数据、设备维修等等这样大量的信息, 这些数据、信息不仅是一些测量、分析的数据, 还有许多维持实验室运行的管理型数据。在以往的手工管理、纸袋储存数据的方式下,这些海量般的数据、信息, 使得实验室的管理人员以及使用人员为维护这些数据浪费了大量的物力和时间, 效率低下, 并且经常出错, 更谈不上数据的快速科学分析。 在这一背景下, 实验室信息管理系统( LIMS)开始出现, 并在实际应用中得到了快速发展, 成为一项崭新的实验室管理与应用技术。在当今这样一个网络信息时代, 除了提高实验室自身专业水准, 提高实验室的管理水准已经是唯一的选择。实验室信息管理系统( LIMS) 无疑会把实验室的管理水平提升到信息时代的高水平。 1.2研究目的与意义 高校实验室信息管理系统是一个以实验室信息管理和实验信息管理为主的先进的网络系统,能够为用户提供充足的实验室信息和实验信息的查询手段。传统的人工管理实验室这种古老的方式来进行,已完全不能满足学校对实验室规划的需要,实验室信息管理系统能够极大地提高实验室管理的效率,也是使学校的科学化、正规化管理的重要条件。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。现代企业的竞争逐渐整合为工作效率的竞争,在信息爆炸的时代,传统教学实验管理面临着诸多挑战。

计算机控制系统设计性实验

计算机控制系统设计性实验报告 学生姓名:学号: 学院:自动化工程学院 班级: 题目:

设计性实验撰写说明 正文:正文内容层次序号为: 1、1.1、1.1.1 2、2.1、2.1.1……。 1、选题背景:说明本课题应解决的主要问题及应达到的技术要求;简述本设计的指导思想。 2、方案论证(设计理念):说明设计原理(理念)并进行方案选择,阐明为什么要选择这个设计方案以及所采用方案的特点。 3、过程论述:对设计工作的详细表述。要求层次分明、表达确切。 4、结果分析:对研究过程中所获得的主要的数据、现象进行定性或定量分析,得出结论和推论。 5、结论或总结:对整个研究工作进行归纳和综合。 6、设计心得体会。 课程设计说明书(报告)要求文字通顺,语言流畅,无错别字,用A4纸打印并右侧装订。

《计算机控制系统》设计性实验 一、通过设计性实验达到培养学生实际动手能力方法及步骤: 对系统设计方法可以从“拿到题目”到“进行分析”再到“确定解决方案”最后到“具体系统的设计的实现”的整个过程进行全方位的启发。让学生掌握对不同的控制系统设计方法和基本思想,从工程角度对待设计题目,尽量做到全面认识理解工程实际与实验室环境的区别,逐步引入工程思想,提高学生设计技巧和解决实际问题的能力。 1、了解和掌握被控制对象的特性; 2、选择合理的传感器(量程、精度等); 3、计算机控制系统及接口的设计(存储器、键盘、显示); 4、制定先进的、合理的控制算法; 5、结合控制系统的硬件系统对软件进行设计; 6、画出系统硬件、软件框图; 7、系统调试。 二、具体完成成品要求: 1、对传感器、A/D、D/A、中央处理器、显示、键盘、存储器的选型大小等; 2、实现系统硬件原理图用Protel或Proteus、MATLAB软件(框图)仿真设计; 3、达到课题要求的各项功能指标; 4、系统设计文字说明书; 5、按照学号循环向下作以下7个题目。 三、系统控制框图: 控制系统硬件框图

操作系统实验1

#include "stdio.h" #include #include #define getpch(type) (type*)malloc(sizeof(type)) #define NULL 0 struct pcb { /* 定义进程控制块PCB */ char name[10]; char state; int ntime; int rtime; struct pcb* link; }*ready=NULL,*p; typedef struct pcb PCB; void sort() /* 建立对进程进行优先级排列函数*/ { PCB *first, *second; int insert=0; if((ready==NULL)||((p->ntime)<(ready->ntime))) /*运行时间最短者,插入队首*/ { p->link=ready; ready=p; } else /* 进程比较运行时间优先级,插入适当的位置中*/ { first=ready; second=first->link; while(second!=NULL) { if((p->ntime)<(second->ntime)) /*若插入进程比当前进程所需运行时间短,*/ { /*插入到当前进程前面*/ p->link=second; first->link=p; second=NULL; insert=1; } else /* 插入进程运行时间最长,则插入到队尾*/ { first=first->link; second=second->link; } } if(insert==0) first->link=p; } }

总线实验

山西大学自动化与软件学院 课程实验报告 实验课程计算机系统基础 实验名称总线与寄存器实验 实验地点线上 实验时间 6.30 学生班级软件工程1808班 学生学号 201802810825 学生姓名 指导教师

一:实验要求 理解并掌握总线与寄存器 二:实验目的 1、熟悉实验软件环境; 2、掌握总线以及数据通路的概念及传输特性。 3、理解锁存器、通用寄存器及移位寄存器的组成和功能。 二、实验内容 1、根据已搭建好的8位数据通路,熟悉总线连接的方法,理解74LS244芯片的作用,理解各相关信号在数据传输过程中起的作用; 2、通过拨码开关置数,将数据传送到各寄存器,将寄存器中数据显示出来,熟悉常用的寄存器。 三、实验器件 1、D触发器(74LS74、74LS175)、三态缓冲器(74LS244)。 2、寄存器(74LS27 3、74LS374 )和移位寄存器(74LS194) 四、实验原理 (见实验指导书) 五、实验步骤 注意:实验过程中应观察总线上及芯片引脚上显示的数据的变化情况,理解数据传送的过程和寄存器存数,从寄存器读数的原理。 实验(1)拨码开关输入数据至总线 ●====1;手动操作总线DIN上的拨码开关,在总线DIN上置位数据0x55,缓冲器244阻断。比较总线DIN与BUS状态的异同。 ●=0,比较总线DIN与BUS状态的异同,记录BUS总线的数据: BUS_7BUS_6BUS_5BUS_4BUS_3BUS_2BUS_1BUS_0BUS总 线 01010101AA 实验(2)D触发器数据锁存实验 ●=0,===1;通过拨码开关改变74LS74的D端(即BUS总线的BUS_0)的状态,按照下表置位74LS74的端、端,观察并记录CLK端上升沿、下降沿跳变时刻Q端、端的状态,填观测结果于表中。 CLK D Qn Qn+1n+1 01××010 110 10××001 101

计算机控制系统实验报告

南京理工大学 动力工程学院 实验报告 实验名称最少拍 课程名称计算机控制技术及系统专业热能与动力工程 姓名学号 成绩教师任登凤

计算机控制技术及系统 一、 实验目的及内容 通过对最少拍数字控制器的设计与仿真,让自己对最少拍数字控制器有更好的理解与认识,分清最少拍有纹波与无纹波控制系统的优缺点,熟练掌握最少拍数字控制器的设计方法、步骤,并能灵巧地应用MATLAB 平台对最少拍控制器进行系统仿真。 (1) 设计数字调节器D(Z),构成最少拍随动控制系统,并观察系统 的输出响应曲线; (2) 学习最少拍有纹波系统和无纹波系统,比较两系统的控制品质。 二、实验方案 最少拍控制器的设计理论 r (t ) c(t ) e*(t) D (z) E (z) u*(t) U (z) H 0(s )C (z) Gc (s ) Φ(z) G(z) R(z) 图1 数字控制系统原理图 如图1 的数字离散控制系统中,G C (S)为被控对象,其中 H(S)= (1-e -TS )/S 代表零阶保持器,D(Z)代表被设计的数字控制器,D(Z)的输入输出均为离散信号。 设计步骤:根据以上分析 1)求出广义被控对象的脉冲传递函数G (z ) 2)根据输入信号类型以及被控对象G (z )特点确定参数q, d, u, v, j, m, n 3)根据2)求得参数确定)(z e Φ和)(z Φ 4)根据 )(1) ()(1)(z z z G z D Φ-Φ= 求控制器D (z ) 对于给定一阶惯性加积分环节,时间常数为1S ,增益为10,采样周期T 为1S 的对象,其传递函数为:G C (S) =10/S(S+1)。 广义传递函数: G(z)=Z [])()(s G s H c ?=Z ?? ?????--)(1s G s e c Ts =10(1-z -1 )Z ??????+)1(12s s =3.68×) 368.01)(1() 717.01(1 111------+z z z z

《计算机操作系统》实验指导书

《计算机操作系统》 实验指导书 (适合于计算机科学与技术专业) 湖南工业大学计算机与通信学院 二O一四年十月

前言 计算机操作系统是计算机科学与技术专业的主要专业基础课程,其实践性、应用性很强。实践教学环节是必不可少的一个重要环节。计算机操作系统的实验目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握操作系统的基本原理,加深对操作系统基本方法的理解,加深对课堂知识的理解,为学生综合运用所学知识,在Linux环境下调用一些常用的函数编写功能较简单的程序来实现操作系统的基本方法、并在实践应用方面打下一定基础。要求学生在实验指导教师的帮助下自行完成各个操作环节,并能实现且达到举一反三的目的,完成一个实验解决一类问题。要求学生能够全面、深入理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题;对此能够较好地理解和掌握,并且能够进行简单分析和判断;能够熟练使用Linux用户界面;掌握操作系统中进程的概念和控制方法;了解进程的并发,进程之间的通信方式,了解虚拟存储管理的基本思想。同时培养学生进行分析问题、解决问题的能力;培养学生完成实验分析、实验方法、实验操作与测试、实验过程的观察、理解和归纳能力。 为了收到良好的实验效果,编写了这本实验指导书。在指导书中,每一个实验均按照该课程实验大纲的要求编写,力求紧扣理论知识点、突出设计方法、明确设计思路,通过多种形式完成实验任务,最终引导学生有目的、有方向地完成实验任务,得出实验结果。任课教师在实验前对实验任务进行一定的分析和讲解,要求学生按照每一个实验的具体要求提前完成准备工作,如:查找资料、设计程序、完成程序、写出预习报告等,做到有准备地上机。进行实验时,指导教师应检查学生的预习情况,并对调试过程给予积极指导。实验完毕后,学生应根据实验数据及结果,完成实验报告,由学习委员统一收齐后交指导教师审阅评定。 实验成绩考核: 实验成绩占计算机操作系统课程总评成绩的20%。指导教师每次实验对学生进行出勤考核,对实验效果作记录,并及时批改实验报告,综合评定每一次的实验成绩,在学期终了以平均成绩作为该生的实验成绩。有以下情形之一者,实验成绩为不及格: 1.迟到、早退、无故缺勤总共3次及以上者; 2.未按时完成实验达3次及以上者; 3.缺交实验报告2次及以上者。

计算机控制技术实验报告

精品文档

精品文档 实验一过程通道和数据采集处理 为了实现计算机对生产过程或现场对象的控制,需要将对象的各种测量参数按 要求转换成数字信号送入计算机;经计算机运算、处理后,再转换成适合于对生产 过程进行控制的量。所以在微机和生产过程之间,必须设置信息的传递和变换的连 接通道,该通道称为过程通道。它包括模拟量输入通道、模拟量输出通道、数字量 输入通道、数字量输出通道。 模拟量输入通道:主要功能是将随时间连续变化的模拟输入信号变换成数字信 号送入计算机,主要有多路转化器、采样保持器和 A/D 转换器等组成。模拟量输出通道:它将计算机输出的数字信号转换为连续的电压或电流信 号,主要有 D/A 转换器和输出保持器组成。 数字量输入通道:控制系统中,以电平高低和开关通断等两位状态表示的 信号称为数字量,这些数据可以作为设备的状态送往计算机。 数字量输出通道:有的执行机构需要开关量控制信号 ( 如步进电机 ) ,计算机 可以通过 I/O 接口电路或者继电器的断开和闭合来控制。 输入与输出通道 本实验教程主要介绍以 A/D 和 D/A 为主的模拟量输入输出通道, A/D 和D/A的 芯片非常多,这里主要介绍人们最常用的 ADC0809和 TLC7528。 一、实验目的 1.学习 A/D 转换器原理及接口方法,并掌握ADC0809芯片的使用 2.学习 D/A 转换器原理及接口方法,并掌握TLC7528 芯片的使用 二、实验内容 1.编写实验程序,将- 5V ~ +5V 的电压作为 ADC0809的模拟量输入,将 转换所得的 8 位数字量保存于变量中。 2.编写实验程序,实现 D/A 转换产生周期性三角波,并用示波器观察波形。 三、实验设备 + PC 机一台, TD-ACC实验系统一套, i386EX 系统板一块 四、实验原理与步骤 1.A/D 转换实验 ADC0809芯片主要包括多路模拟开关和 A/D 转换器两部分,其主要特点为:单 电源供电、工作时钟 CLOCK最高可达到 1200KHz 、8 位分辨率, 8 +个单端模拟输 入端, TTL 电平兼容等,可以很方便地和微处理器接口。 TD-ACC教学系统中的 ADC0809芯片,其输出八位数据线以及 CLOCK线已连到控制计算机的数据线及系统应用时钟1MCLK(1MHz) 上。其它控制线根据实验要求可另外连接(A 、B、C、STR、/OE、EOC、IN0~ IN7) 。根据实验内容的第一项要求,可以设计出如图 1.1-1 所示 的实验线路图。

计算机操作系统实验四

实验三进程与线程 问题: 进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的独立单位,具有动态性、并发性、独立性、异步性和交互性。然而程序是静态的,并且进程与程序的组成不同,进程=程序+数据+PCB,进程的存在是暂时的,程序的存在是永久的;一个程序可以对应多个进程,一个进程可以包含多个程序。当操作系统引入线程的概念后,进程是操作系统独立分配资源的单位,线程成为系统调度的单位,与同一个进程中的其他线程共享程序空间。 本次实验主要的目的是: (1)理解进程的独立空间; (2)加深对进程概念的理解,明确进程和程序的区别; (3)进一步认识并发执行的实质; (4)了解红帽子(Linux)系统中进程通信的基本原理。 (5)理解线程的相关概念。 要求: 1、请查阅资料,掌握进程的概念,同时掌握进程创建和构造的相关知识和线程创建和 构造的相关知识,了解C语言程序编写的相关知识; (1)进程: 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。程序是指令、数据及其组织形式的描述,进程是程序的实体。进程的概念主要有两点:第一,进程是一个实体。每一个进程都有它自己的地址空间,一般情况下,包括文本区域(text region)、数据区域(data region)和堆栈(stack region)。文本区域存储处理器执行的代码;数据区域存储变量和进程执行期间使用的动态分配的内

存;堆栈区域存储着活动过程调用的指令和本地变量。第二,进程是一个“执行中的程序”。程序是一个没有生命的实体,只有处理器赋予程序生命时(操作系统执行之),它才能成为一个活动的实体,我们称其为进程。 (2)进程的创建和构造: 进程简单来说就是在操作系统中运行的程序,它是操作系统资源管理的最小单位。但是进程是一个动态的实体,它是程序的一次执行过程。进程和程序的区别在于:进程是动态的,程序是静态的,进程是运行中的程序,而程序是一些保存在硬盘上的可执行代码。新的进程通过克隆旧的程序(当前进程)而建立。fork() 和clone()(对于线程)系统调用可用来建立新的进程。 (3)线程的创建和构造: 线程也称做轻量级进程。就像进程一样,线程在程序中是独立的、并发的执行路径,每个线程有它自己的堆栈、自己的程序计数器和自己的局部变量。但是,与独立的进程相比,进程中的线程之间的独立程度要小。它们共享内存、文件句柄和其他每个进程应有的状态。 线程的出现也并不是为了取代进程,而是对进程的功能作了扩展。进程可以支持多个线程,它们看似同时执行,但相互之间并不同步。一个进程中的多个线程共享相同的内存地址空间,这就意味着它们可以访问相同的变量和对象,而且它们从同一堆中分配对象。尽管这让线程之间共享信息变得更容易,但你必须小心,确保它们不会妨碍同一进程里的其他线程。 线程与进程相似,是一段完成某个特定功能的代码,是程序中单个顺序的流控制,但与进程不同的是,同类的多个线程是共享同一块内存空间和一组系统资源的,而线程本身的数据通常只有微处理器的寄存器数据,以及一个供程序执行时使用的堆栈。所以系统在产生一个线程,或者在各个线程之间切换时,负担要比进程小得多,正因如此,线程也被称为轻型进程(light-weight process)。一个进程中可以包含多个线程。 2、理解进程的独立空间的实验内容及步骤

homework2

《计算机系统基础》Homework HW2:排序程序的编辑、编译和调试 实验目的:熟悉开发环境、掌握开发和调试的基本过程以及工具。 实验要求:对实验步骤中给出的源程序进行编辑、编译、链接,调试。 实验报告: 1. 说明你做实验的过程(重要步骤用屏幕截图表示)。 2. 提交出源程序。 3. 提交可执行目标文件。 4. 分析或回答下列问题。 (1)分析同一个源程序在不同机器上生成的可执行目标代码是否相同。 提示:从多个方面(如ISA、OS 和编译器)来分析。 (2)你能在可执行目标文件中找出函数printf ()对应的机器代码段吗?能的话,请标示出来。(3)为什么源程序文件的内容和可执行目标文件的内容完全不同? 报告提交截止日期:5月24 日 实验步骤: 1、以下程序实现了排序和求和算法,程序源码如下图所示。请根据提供的图片输入源程序文件,并保存为相应的.c 和.h 文件。 bubblesort.h: bubblesort.c:

add.h: add.c: printresult.h: printresult.c:

main.c: 2、将源程序文件进行预处理、编译、汇编和链接,以生成可执行文件。 (1) 使用gcc 直接生成可执行文件 gcc -o main main.c bubblesort.c add.c printresult.c

(2) 首先生成可重定位目标文件(.o 文件),再链接成可执行文件。 首先,使用gcc –c ……命令将所有.c 文件编译成.o 文件(可以用-o 选项命名输出的可重定位目标文件),然后再用ld 命令进行链接,以生成可执行目标文件。 (用ld命令链接时要包含很多系统库,可以用gcc –v main.c来查看系统链接需要哪些库,把collect2 换成ld,生成的/tmp/ccBCU0rh.o 即为mian.c 编译出来的main.o 文件,删掉该句替换成以下命令:-o main main.o bubblesort.o add.o printresult.o -e main) ld -o main main.o bubblesort.o add.o printresult.o -e main --sysroot=/ --build-id --eh-frame-hdr -m elf_i386 --hash-style=gnu --as-needed -dynamic-linker /lib/ld-linux.so.2 -z relro /usr/lib/gcc/i686-linux-gnu/4.8/../../../i386-linux-gnu/crt1.o /usr/lib/gcc/i686-linux-gnu/4.8/../../../i386-linux-gnu/crti.o /usr/lib/gcc/i686-linux-gnu/4.8/crtbegin.o -L/usr/lib/gcc/i686-linux-gnu/4.8 -L/usr/lib/gcc/i686-linux-gnu/4.8/../../../i386-linux-gnu -L/usr/lib/gcc/i686-linux-gnu/4.8/../../../../lib -L/lib/i386-linux-gnu -L/lib/../lib -L/usr/lib/i386-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/i686-linux-gnu/4.8/../../.. -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/i686-linux-gnu/4.8/crtend.o /usr/lib/gcc/i686-linux-gnu/4.8/../../../i386-linux-gnu/crtn.o 上述过程如下图所示: 3、使用OBJDUMP命令进行反汇编(请自行查阅OBJDUMP命令的使用方法) 例如,可使用“objdump –S”命令进行反汇编 objdump –S main.o:将main.o进行反汇编 4、使用GDB命令进行各种调试(GDB命令参见教材附录C,也可自行查阅网上相关文档) 调试之前首先用“gcc –g”命令生成调试信息,否则调试失败。 gcc -g -o main main.c bubblesort.c add.c printresult.c gdb main 要求用各种GDB命令对程序进行调试(例如用info registers 查看寄存器内容)。 5、选做(加分题) 实现readelf –h main.o的功能

实验室管理系统需求分析

实验室管理系统需求分析

实验室管理系统需求 分析 一、背景 (一)实验室发展状况 实验室作为实践教学中的重要手段,在学习的教学中扮演了重要的角色。正式认识到了实验室教学的重要性,各个学校的实验室也是鳞次栉比的落成。实验室的仪器、耗材、低值品等的需求也越来越大,旧式的登记管理方式已经渐渐显得力不从心。 实验室资源是衡量一所学校的硬件和科研水平的一个重要标准,所以各个学校都会投入大量的人力,物力,财力来更新,优化实验室的教学和设备等,虽然对实验室的硬件设施比较重视,花费也比较多,但实验室的软件却没有跟上。实验室的软件,包括对实验室器材,教学仪器,辅助设备,实验教学等的统筹管理,使之达到对仪器设备的充分利用和保养维护,对实验课堂效率的提高。 (二)什么是实验室管理系统 面对日益增多的实验教学任务,以往人工管理方式和人工预约方式已经不符合需求,简便和规范化的管理需要一套与对应的实验室管理系统。 通过使用实验室管理系统实现高校实验室、实验仪器与实验耗材管理的规范化、信息化;提高实验教学特别是开放实验教学的管理水平与服务水平;为实验室评估、实验室建设及实验教学质量管理等决策提供数据支持;智能生成每学年教育部数据报表,协助完成数据上报工作。运用计算机技术,特别是现代网络技术,为实验室管理、实验教学管理、仪器设备管理、低值品与耗材管理、实验室建设与设备采购、实验室评估与评教、实践管理、数据与报表等相关事务进行网络化的规范管理。

(三)建立实验室管理系统的必要性 若以某个实验室来考虑,我们通常会想到验室里会有很多的仪器设备,包括教学仪器,设备,基础设施等等。实验室管理员在采购,使用,维护时通常都会做些记录,整个过程显得繁琐·效率低下,并且对之后的资料整理工作带来了一定的不便,另外就是在实验室的课程教学中,仪器使用记录,学生考勤,实验报告等都是以纸质的形式记录,占用了学生的实验课实践操作时间。针对以上的问题,我们需要运用科学的的工具与手段来采集信息、进行数据处理,才能全面、综合地利用信息资源,设备管理人员才能及时准确动态地从实物和价值两方面了解各自管辖范围内各类设备的分布情况,掌握设备的新旧程度、使用状态、分布状况,掌握设备内部流动情况,才能以此推动实验室管理技术的进步,改善和加强实验室管理,辅助管理决策,全面提升实验室的管理水平。实现对实验室的信息化管理,提高实验室的管理效率。 二、实验室管理系统建设条件 实验室管理系统的建设条件,换句话说,就是什么情况下需要建设实验室管理系统? (一)实验室的建设现状需要 目前的很多实验室,处于深化市场机制的过程中,还未采用各种现代化管理手段,作为实验室主管,无法快速、全面、准确地掌控合同状况、试验进度、人员管理等实验室信息;人员和任务分配过程较复杂;检验任务书、试验报告、原始记录等信息需要重复录入,而且查询、生成不方便;实验仪器设备的查询、维修、校准、各种标准文本的发放、查询等管理手续繁琐;从检验任务书的传递、检验,以及检验报告等都由人工处理;虽然各部门都配备了电脑,但是大多数部门的计算机都是独立使用,没有很好地实现资源共享。这种不适应当前 检验工作需要的现状,说明了引入实验室信息管理平台的必要性。 (二)实验室自身业务流程的规范 实验自身已建立了一套较为完善的管理体系。实验室管理清晰的初始化资料,包括实验室人员角色配置和权限配置、实验室仪器设备台帐、检测能力范围、方法标准等保证实验室良好运行的基本资料。 (三)实验室硬件的建设

计算机控制系统实验报告2

江南大学物联网工程学院 《计算机控制系统》 实验报告 实验名称实验二微分与平滑仿真实验 实验时间2017.10.31 专业班级 姓名学号 指导教师陈珺实验成绩

一、实验目的与要求 1、了解微分对采样噪音的灵敏响应。 2、了解平滑算法抑制噪音的作用。 3、进一步学习MATLAB 及其仿真环境SIMULINK 的使用。 二、仿真软硬件环境 PC 机,MATLAB R2012b 。 三、实验原理 如图微分加在正反馈输入端,计算机用D(Z)式进行微分运算。R 为阶跃输入信号,C 为系统输出。由于微分是正反馈,当取合适的微分时间常数时,会使系统响应加快。若微分时间常数过大,则会影响系统稳定性。 四、D(Z)设计 1、未平滑时的D(Z) 用一阶差分代替微分运算: )1()()()(1--==Z T T Z X Z Y Z D D 式中T D为微分时间常数,T 为计算机采样周期。 2、平滑后的D(Z) 微分平滑运算原理如图: 取Y *(k)为四个点的微分均值,有 )331(6)()()( )33(6 )5 .15.05.05.1(4)( 321321221*-----------+==∴--+=-+-+-+-= Z Z Z T T Z X Z Y Z D X X X X T T X X X X X X X X T T K Y D K K K K D K K K K D x t + ○R

五、SIMULINK仿真结构图 七、思考题 1、微分噪音与采样噪音和采样周期T有什么关系?与微分时间常数有什么关系? 2、平滑后系统输出有无改善?是否一定需要平滑?

计算机操作系统 实验报告

操作系统实验报告 学院:计算机与通信工程学院 专业:计算机科学与技术 班级: 学号: 姓名: 指导教师: 成绩: 2014年 1 月 1 日

实验一线程的状态和转换(5分) 1 实验目的和要求 目的:熟悉线程的状态及其转换,理解线程状态转换与线程调度的关系。 要求: (1)跟踪调试EOS线程在各种状态间的转换过程,分析EOS中线程状态及其转换的相关源代码; (2)修改EOS的源代码,为线程增加挂起状态。 2 完成的实验内容 2.1 EOS线程状态转换过程的跟踪与源代码分析 (分析EOS中线程状态及其转换的核心源代码,说明EOS定义的线程状态以及状态转换的实现方法;给出在本部分实验过程中完成的主要工作,包括调试、跟踪与思考等) 1.EOS 准备了一个控制台命令“loop ”,这个命令的命令函数是 ke/sysproc.c 文件中的ConsoleCmdLoop 函数(第797行,在此函数中使用 LoopThreadFunction 函数(第755 行)创建了一个优先级为 8 的线程(后面简称为“loop 线程”),该线程会在控制台中不停的(死循环)输出该线程的ID和执行计数,执行计数会不停的增长以表示该线程在不停的运行。loop命令执行的效果可以参见下图: 2. 线程由阻塞状态进入就绪状态 (1)在虚拟机窗口中按下一次空格键。 (2)此时EOS会在PspUnwaitThread函数中的断点处中断。在“调试”菜单中选择“快速监视”,在快速监视对话框的表达式编辑框中输入表达式“*Thread”,然后点击“重新计算”按钮,即可查看线程控制块(TCB)中的信息。其中State域的值为3(Waiting),双向链表项StateListEntry的Next和Prev指针的值都不为0,说明这个线程还处于阻塞状态,并在某个同步对象的等待队列中;StartAddr域的值为IopConsoleDispatchThread,说明这个线程就是控制台派遣线程。 (3)关闭快速监视对话框,激活“调用堆栈”窗口。根据当前的调用堆栈,可以看到是由键盘中断服务程序(KdbIsr)进入的。当按下空格键后,就会发生键盘中断,从而触发键盘中断服务程序。在该服务程序的最后中会唤醒控制台派遣线程,将键盘事件派遣到活动的控制台。 (4)在“调用堆栈”窗口中双击PspWakeThread函数对应的堆栈项。可以看到在此函数中连续调用了PspUnwaitThread函数和PspReadyThread函数,从而使处于阻塞状态的控制台派遣线程进入就绪状态。 (5)在“调用堆栈”窗口中双击PspUnwaitThread函数对应的堆栈项,先来看看此函数是如何改变线程状态的。按F10单步调试直到此函数的最后,然后再从快速监视对

实验报告一Linux下的C语言编程

计算机系统基础实验报告 学院信电学院专业计算机班级1401 学号140210110 姓名段登赢实验时间: 一、实验名称:Linux下的C语言编程 二、实验目的和要求: 实验目的: (1)掌握VMware虚拟机的使用及Linux操作系统的安装; (2)熟练Linux操作系统的基本使用; (3)掌握GCC编译环境的使用; 实验要求: 描述你的分析过程;说明你做实验的过程(重要步骤用屏幕截图表示);提交源程序和可执行文件。 三、实验环境(软、硬件): 硬件:个人电脑一台 软件:在虚拟机Vmware上的Ubuntu GCC编辑器:vi编辑器 四、实验内容: 要求:在GCC编译环境下用C语言编程完成下列题目。 (1)人口普查 (2)旧键盘 (3)集体照 1、常用的Linux命令总结 Tab 快捷键,自动补全 切换用户:格式su [用户名];su - root 查看目录和文件:格式ls [-a -l ] [目录和文件],其中-a是显示目录下所有的文件和目录(含隐藏文件)-l是显示目录下的文件和目录的详细信息 改变工作目录:格式cd /目录名;cd .. 返回上一目录 复制文件:格式cp [ -r ] 源文件或目录目标文件和目录,其中-r是复制目录 移动或更名:格式mv 源文件目标文件 删除文件或目录:格式rm [ -r ] 文件名或目录名,其中-r是删除目录 创建目录:格式mkdir 目录名 查看目录大小:格式du 目录名 压缩文件:格式gzip [-d] 文件名,其中-d是解压缩 打包文件:格式tar 目录或文件

解包文件:格式xvf 目录或文件 终止程序:Ctrl+c 后台运行:Ctrl+z Gcc编译:格式gcc [-o -O -c -g -w] 文件名,其中-o是确定输出自定义文件的名字,-O对程序的编译和链接进行优化,-c是不进行链接,生成.o后缀的文件,-g是产生调试工具,-w 不生成警告信息。 2. 在Linux系统中对所给的题目进行编程和分析 (1)打开虚拟机运行ubuntu (2)打开虚拟机终端(ctrl+Alt+T) (3)键入命令cd /home/duan/桌面进入到桌面 (4)键入命令mkdir shiyan,创建名字为shiyan的文件夹,更改用户权限 (5)然后cd /shiyan进入的shiyan文件夹里面 (6)键入命令touch renkou.c创建.c文件。如下图所示 (7)键入命令gcc renkou.c进行编译c程序,生成可执行文件。 (8)键入命令./a.out运行可执行文件,如下图所示。 五、实验结果及分析: 1、人口普查

高校实验室管理系统

万欣高校实验室管理系统方案 概述 一、高校实验室实现智能化综合性管理的需求 实验室是高等学校的重要组成部分,是办好高校的基本条件之一,高校实验室管理是确保高等学校实验教学、科学研究、技术开发、资产管理的一项重要工作。当前我国高校的实验室建设进入了一个崭新的阶段,随着建设速度和投入力度的加大、高校管理变革的逐步推进、实验室建设和管理的进一步规范化、复杂化,使得实验室管理工作变得更加繁重、复杂,实验室的教学、资产和人员等管理给管理带来了巨大的压力和工作强度。如何运用现代计算机信息技术,对高校实验室进行科学的信息化管理、提高工作效率和管理水平,已经成为高校实验室管理工作者亟待解决的重要问题之一。 为加强高校实验室信息化管理,教育部和各省教育厅曾指定使用过多种管理系统软件,一部分高校也已经使用了实验室管理软件,对高校实验室信息化管理确实起到了积极的推动作用,但在使用过程中也不可避免地存在着很多不足,主要表现是:⑴功能不完善,不能覆盖实验室建设和管理的各个方面;⑵单机管理模式;⑶管理模式分级不合理,难以适应不同的实验室管理体制;⑷信息化标准不统一,各系统之间不能有机连接。⑸不利于学分制的实施。基于上述原因,市面上现有的一些实验室管理系统不能得到全面推广应用。 二、实践教学改革的必要性 高等教育的目标就是要培养基础扎实、知识面广、能力强、素质高、全面发展的复合型人才。加强对学生的素质教育和创新能力首先必须改革传统的教、学观念,注重他们的动手能力,加强对学生实践能力的培养。我国高校的一些学科实验教学所占比重较低,远远低于西方的一些发达国家水平,据不完全统计:美国、日本、德国、法国等国家高校的实验教学占总教学时数的比例(因学院及专业的性质而异),理科为17.1%-33.6%,工科为5.6%~12.5%,农科为15.7%~40.3,医科为25.1%~45%。相比之下,面对这种新形势,作为培养人才重要基地的高等学校实验室,实践教学的改革势在必行。主要包括以下几个方面的:1、增加实践教学课时,加强实验教学管理;2、改革实践教学管理体制,完善实验室管理制度;3、强化对实验室的控制及管理;4、优化实验室资源配置,保障开放实验的需求;5、提高实验室利用率,随时查询、统计出实验室的使用状况;6、建设实验技术队伍;7、提升实验教学质量等。充分运用信息网络手段,强化对实验室的控制及管理,以达到立竿见影的实验室改革效果。 三、万欣实验室综合管理系统的设计思路 3.1 总体目标:

《计算机控制系统》实验手册

《计算机控制系统》实验手册 上海海事大学电气自动化系施伟锋 上海海事大学电气自动化实验中心李妮娜 目录 1《计算机控制系统》实验指导(Matlab版) (2) 实验一数字PID参数的整定 (3) 实验二Smith算法的运用..........................................5实验三二阶对象数字控制系统设计..............................7实验四达林控制算法的运用 (9) 2 《计算机控制系统》实验指导(DSP版) (11) 实验一实验系统介绍与CCS软件使用入门 (11) 实验二数字I/O实验—交通灯实验 (26) 实验三PWM输出实验1——直流电机控制实验 (30) 3 《计算机控制系统》课程设计指导(Matlab版)………33 4 《计算机控制系统》课程设计指导(DSP版) (35) 5 《计算机控制系统》课程设计报告或小论文格式 (40)

《计算机控制系统》实验指导 (Matlab 版) 一、实验课程教学目的与任务 通过实验设计或计算机仿真设计,使学生了解和掌握数字PID控制算法的特点、了解系统PID参数整定和数字控制系统的直接设计的基本方法,了解不同的控制算法对被控对象的控制特性,加深对计算机控制系统理论的认识,掌握计算机控制系统的整定技术,对系统整体设计有一个初步的了解。 根据各个实验项目,完成实验报告(用实验报告专用纸)。 二、实验要求 学生在熟悉PC机的基础上,熟悉MATLAB软件的操作,熟悉Simuli nk工具箱的软件编程。通过编程完成系统的设计与仿真实验,逐步学习控制系统的设计,学习控制系统方案的评估与系统指标评估的方法。 计算机控制系统主要技术指标和要求: 根据被控对象的特性,从自动控制系统的静态和动态质量指标要求出发对调节器进行系统设计,整体上要求系统必须有良好的稳定性、准确性和快速性。一般要求系统在振荡2~3次左右进入稳定;系统静差小于3%~5%的稳定值(或系统的静态误差足够小);系统超调量小于30%~50%的稳定值;动态过渡过程时间在3~5倍的被控对象时间常数值。 系统整定的一般原则: 将比例度置于交大值,使系统稳定运行。根据要求,逐渐减小比例度,使系统的衰减比趋向于4:1或10:1。若要改善系统的静态特性,要使系统的静差为零,加入积分环节,积分时间由大向小进行调节。若要改善系统的动态特性,增加系统的灵敏度,克服被控对象的惯性,可以加入微分环节,微分时间由小到大进行调节。PID控制的三个特性参数在调节时会产生相互的影响,整定时必需综合考虑。系统的整定过程是一个反复进行的过程,需反复进行。

西南交大大学计算机基础实验报告

大学计算机基础 实 验 报 告 教学班级:_______ 学号:__________ 姓名:___________ 课程教师:______________ 实验辅导教师:_____________ 西南交通大学 2011年9月

实验一微机基本操作与上网冲浪 教学班级:_______ 学号:__________ 姓名:___________ 实验日期:___________ 实验地点:_________(机房) 指导教师签名:__________ 实验成绩:___________ 一、实验目的 1.掌握计算机系统的启动与关闭; 2.掌握常用输入设备、输出设备、存储设备的用法。 3.掌握搜索引擎的使用; 4.掌握下载与解压缩的方法; 5.掌握软件安装的方法。 二、实验任务 1.启动与关闭计算机。 2.利用“键盘盲打练习”软件进行键盘的指法练习。 3.硬盘信息查询。 4.利用搜索引擎搜索成都商报,阅读当日报纸新闻。 5.利用下载工具FlashGet在网上下载“NetAnts”软件压缩包,利用压缩工具winRar解压缩该包,并安装该软件。 三、实验检查内容 [ ] 1.能否热启动计算机 [ ] 2.能否下载打字软件(辅导老师可协助将软件下载到教师机上,学生通过网上邻居获取) [ ] 3.能否安装打字软件 [ ] 4.打字速度/分钟 [ ] 5.查看C区总容量 [ ] 6.查看磁盘整理程序对C区的分析报告,看是否需要整理[ ] 7.写出当日成都商报的头版头条标题 [ ] 8.是否将NetAnts软件安装在D区

实验二文件资源的管理与操作 教学班级:_______ 学号:__________ 姓名:___________ 实验日期:___________ 实验地点:_________(机房) 指导教师签名:__________ 实验成绩:___________ 一、实验目的 1.掌握文件的复制、移动、删除; 2.掌握文件的重命名、属性的设置; 3.掌握文件的查找; 4.掌握文件夹选项操作。 二、实验任务 1.查找文件“notepad.exe”,在D盘上以自己的学号为名建立一个新的文件夹,在此文件夹内建一名为“记事本”的文件夹,将文件“notepad.exe”复制到“记事本”文件夹下面,属性修改为“只读”,然后在桌面上创建“notepad.exe”文件的快捷方式。 2.显示“我的文档”文件夹下所有文件的扩展名。 三、实验检查内容 [ ] 1.是否在D区建立以自己学号为名的文件夹 [ ] 2.是否在学号文件夹中创建名为“记事本”的文件夹 [ ] 3.是否将“notepad.exe”文件复制到“记事本”文件夹中[ ] 4.“notepad.exe”文件的属性是否修改为“只读” [ ] 5.是否在桌面上创建“notepad.exe”文件的快捷方式 [ ] 6.是否显示文件的扩展名

相关主题