搜档网
当前位置:搜档网 › 汇编教程控制寄存器和系统地址寄存器

汇编教程控制寄存器和系统地址寄存器

汇编教程控制寄存器和系统地址寄存器
汇编教程控制寄存器和系统地址寄存器

80386控制寄存器和系统地址寄存器如下表所示。它们用于控制工作方式,控制分段管理机制及分页管理机制的实施。

控制寄存器CRx BIT31 BIT30—BIT12 BIT11—BIT5 BIT4 BIT3 BIT2 BIT1 BIT0 CR0 PG 0000000000000000 ET TS EM MP PE CR1 保留

CR2 页故障线性地址

CR3 页目录表物理页码000000000000

BIT47—BIT16 BIT15—BIT

全局描述符表寄存器GDTR 基地址界限中断描述符表寄存器IDTR 基地址界限

BIT15—BIT0

局部描述符表寄存器LDTR 选择子任务状态段寄存器TR 选择子BIT31—BIT0 BIT31—BIT0 BIT11—BIT0 基地址界限属性

基地址界限属性

<一>控制寄存器

从上表可见,80386有四个32位的控制寄存器,分别命名位CR0、CR1、CR2和CR3。但CR1被保留,供今后开发的处理器使用,在80386中不能使用CR1,否则会引起无效指令操作异常。CR0包括指示处理器工作方式的控制位,包含启用和禁止分页管理机制的控制位,包含控制浮点协处理器操作的控制位。CR2及CR3由分页管理机制使用。CR0中的位5—位3 0及CR3中的位0至位11是保留位,这些位不能是随意值,必须为0。

控制寄存器CR0的低16位等同于80286的机器状态字MSW。

1.保护控制位

控制寄存器CR0中的位0用PE标记,位31用PG标记,这两个位控制分段和分页管理机制的操作,所以把它们称为保护控制位。PE控制分段管理机制。PE=0,处理器运行于实模式;PE=1,处理器运行于保护方式。PG控制分页管理机制。PG=0,禁用分页管理机制,此时分段管理机制产生的线性地址直接作为物理地址使用;PG=1,启用分页管理机制,此时线性地址经分页管理机制转换位物理地址。关于分页管理机制的具体介绍在后面的文章中进行。

下表列出了通过使用PE和PG位选择的处理器工作方式。由于只有在保护方式下才可启用分页机制,所以尽管两个位分别为0和1共可以有四种组合,但只有三种组合方式有效。

PE=0且PG=1是无效组合,因此,用PG 为1且PE 为0的值装入CR0寄存器将引起通用保护异常。

需要注意的是,PG 位的改变将使系统启用或禁用分页机制,因而只有当所执行的程序的代码和至少有一部分数据在线性地址空间和物理地址空间具有相同的地址的情况下,才能改变PG 位。

PG 和PE 位与处 理器工 作模式

PG P E 处理器工作方式

0 0 实模式 0 1 保护模式,禁用分页机制 1 0 非法组合 1 1 保护方式,启用分页机制

2.协处理器控制位

控制寄存器CR0中的位1—位4分别标记为MP(算术存在位)、EM(模拟位)、TS(任务切换位) 和ET(扩展类型位),它们控制浮点协处理器的操作。

当处理器复位时,ET 位被初始化,以指示系统中数字协处理器的类型。如果系统中存在 80387协处理器,那么ET 位置1;如果系统中存在80287协处理器或者不存在协处理器,那么ET 位清0。

EM 位控制浮点指令的执行是用软件模拟,还是由硬件执行。EM=0时,硬件控制浮点指令传送到协处理器;EM=1时,浮点指令由软件模拟。

TS 位用于加快任务的切换,通过在必要时才进行协处理器切换的方法实现这一目的。每当进行任务切换时,处理器把TS 置1。TS=1时,浮点指令将产生设备不可用(DNA)异常。 MP 位控制WAIT 指令在TS=1时,是否产生DNA 异常。MP=1和TS=1时,WAIT 产生异常;MP =0时,WAIT 指令忽略TS 条件,不产生异常。

3.CR2和CR3

控制寄存器CR2和CR3由分页管理机制使用。

CR2用于发生页异常时报告出错信息。当发生页异常时,处理器把引起页异常的线性地址保存在CR2中。操作系统中的页异常处理程序可以检查CR2的内容,从而查出线性地址空间中的哪一页引起本次异常。

CR3用于保存页目录表的其始物理地址。由于目录是页对齐的,所以仅高20位有效,低12 位保留未用。向CR3中装入一个新值时,低12位必须为0;但从CR3中取值时,低12位被忽略。每当用MOV 指令重置CR3的值时,会导致分页机制高速缓冲区的内容无效,用此方法,可以在启用分页机制之前,即把PG 位置1之前,预先刷新分页机制的高速缓存。C R3寄存器即使在CR0寄存器的PG 位或PE 位为0时也可装入,如在实模式下也可设置CR3,以便进行分页机制的初始化。在任务切换时,CR3要被改变,但是如果新任务中CR3的值与

原任务中CR3的值相同,那么处理器不刷新分页高速缓存,以便当任务共享也表时有较快的执行速度。

<二>系统地址寄存器

全局描述符表GDT、局部描述符表LDT和中断描述符表IDT等都是保护方式下非常重要的特殊段,它们包含有为段机制所用的重要表格。为了方便快速地定位这些段,处理器采用一些特殊的寄存器保存这些段的基地址和段界限。我们把这些特殊的寄存器称为系统地址寄存器。

1.全局描述符表寄存器GDTR

如本文开始处的表格所示,GDTR长48位,其中高32位为基地址,低16位为界限。由于GDT 不能有GDT本身之内的描述符进行描述定义,所以处理器采用GDTR为GDT这一特殊的系统段提供一个伪描述符。GDTR给定了GDT,如下图所示。

GDTR中的段界限以字节为单位。由于段选择子中只有13位作为描述符索引,而每个描述符长8个字节,所以用16位的界限足够。通常,对于含有N个描述符的描述符表的段界限设为8*N-1。

利用结构类型可定义伪描述符如下:

PDESC STRUC LIMIT DW 0 BASE DD 0 PDESC ENDS 2.局部描述符表寄存器LDTR

局部描述符表寄存器LDTR规定当前任务使用的局部描述符表LDT。如本文开始处的表格所示,LDTR类似于段寄存器,由程序员可见的16位的寄存器和程序员不可见的高速缓冲寄存器组成。实际上,每个任务的局部描述符表LDT作为系统的一个特殊段,由一个描述符描述。而用于描述符LDT的描述符存放在GDT中。在初始化或任务切换过程中,把描述符对应任务LDT的描述符的选择子装入LDTR,处理器根据装入LDTR可见部分的选择子,从GDT 中取出对应的描述符,并把LDT的基地址、界限和属性等信息保存到LDTR的不可见的高速缓冲寄存器中。随后对LDT的访问,就可根据保存在高速缓冲寄存器中的有关信息进行合法性检查。

LDTR寄存器包含当前任务的LDT的选择子。所以,装入到LDTR的选择子必须确定一个位于GDT中的类型为LDT的系统段描述符,也即选择子中的TI位必须是0,而且描述符中的类型字段所表示的类型必须为LDT。

可以用一个空选择子装入LDTR,这表示当前任务没有LDT。在这种情况下,所有装入到段寄存器的选择子都必须指示GDT中的描述符,也即当前任务涉及的段均由GDT中的描述符来描述。如果再把一个TI位为1的选择子装入到段寄存器,将引起异常。

3.中断描述符表寄存器IDTR

中断描述符表寄存器IDTR指向中断描述符表IDT。如本文开始处的表格所示,IDTR长48 位,其中32位的基地址规定IDT的基地址,16位的界限规定IDT的段界限。由于8038 6只支持256个中断/异常,所以IDT表最大长度是2K,以字节位单位的段界限为7FFH。ID TR 指示IDT的方式与GDTR指示GDT的方式相同。

4.任务状态段寄存器TR

任务状态段寄存器TR包含指示描述当前任务的任务状态段的描述符选择子,从而规定了当前任务的状态段。任务状态段的格式在后面的文章中介绍。如本文开始处的表格所示,TR也有程序员可见和不可见两部分。当把任务状态段的选择子装入到TR可见部分时,处理器自动把选择子所索引的描述符中的段基地址等信息保存到不可见的高速缓冲寄存器中。在此之后,对当前任务状态段的访问可快速方便地进行。装入到TR的选择子不能为空,必须索引位于GDT中的描述符,且描述符的类型必须是TSS。

过程控制系统 复习总结!

过程控制系统知识点总结 ) 一、概论 1、过程控制概念:五大参数。 过程控制的定义:工业中的过程控制是指以温度、压力、流量、液位和成分等工艺参数作为被控变量的自动控制。 2、简单控制系统框图。 控制仪表的定义:接收检测仪表的测量信号,控制生产过程正常进行的仪表。主要包括:控制器、变送器、运算器、执行器等,以及新型控制仪表及装置。 控制仪表的作用:对检测仪表的信号进行运算、处理,发出控制信号,对生产过程进行控制。 3、能将控制流程图(工程图、工程设计图册)转化成控制系统框图。

4、DDZ-Ⅲ型仪表的电压信号制,电流信号制。QDZ-Ⅲ型仪表的信号制。它们之间联用要采用电气转换器。 5、电信号的传输方式,各自特点。 电压传输特点: 1). 某台仪表故障时基本不影响其它仪表; 2). 有公共接地点; 3). 传输过程有电压损耗,故电压信号不适宜远传。 电流信号的特点: 1).某台仪表出故障时,影响其他仪表; 2).无公共地点。若要实现仪表各自的接地点,则应在仪表输入、输出端采取直流隔离措施。 6、变送器有四线制和二线制之分。区别。 1、四线制:电源与信号分别传送,对电流信号的零点及元件的功耗无严格要求。 2、两线制:节省 第一个字母:参数类型 T —— 温 度 (Temperature ) P ——压力(Pressure ) L ——物位(Level ) F ——流量(Flow ) W ——重量(Weight ) 第二个字母:功能符号 T —— 变 送 器 (transmitter ) C —— 控 制 器 (Controller ) I ——指示器(Indicator ) R ——记录仪(Recorder ) A ——报警器(Alarm ) 加热 制燃料

寄存器和存储器的区别

https://www.sodocs.net/doc/0415252522.html,/p-20032411.html

寄存器和存储器的区别

如果仅是讨论CPU的范畴 寄存器在cpu的内部,容量小,速度快 存储器一般都在cpu外部,容量大,速度慢 回答者:athlongyj - 高级经理六级6-1 08:52 从根本上讲,寄存器与RAM的物理结构不一样。 一般寄存器是指由基本的RS触发器结构衍生出来的D触发, 就是一些与非门构成的结构,这个在数电里面大家都看过; 而RAM则有自己的工艺,一般1Bit由六MOS管构成。所以, 这两者的物理结构不一样也导致了两者的性能不同。寄存器 访问速度快,但是所占面积大。而RAM相反,所占面积小, 功率低,可以做成大容量存储器,但访问速度相对慢一点。 1、 寄存器存在于CPU中,速度很快,数目有限; 存储器就是内存,速度稍慢,但数量很大; 计算机做运算时,必须将数据读入寄存器才能运算。 2、 存储器包括寄存器, 存储器有ROM和RAM 寄存器只是用来暂时存储,是临时分配出来的,断电,后,里面的内容就没了`````

寄存器跟存储器有什么区别? 一般数据在内存里面,要处理(或运算)的时候, 独到寄存器里面。 然后CPU到寄存器里面拿值,拿到运算核内部, 算好了在送到寄存器里面 再到内存 寄存器跟存储器有什么区别? 寄存器跟存储器有什么区别? 寄存器上:“一个操作码+一个操作数”等于一条微指令吗?一条微指令是完成一条机器指令的一个步骤对吗?cpu是直接跟寄存器打交道的对吗?也就是说寄存器是运算器、控制器的组成部分对不? 设计一条指令就是说把几条微指令组合起来对吗? 刚开始学硬件相关知识,学的晕头转向的!! 存储器与寄存器区别 2009-06-09 12:27 寄存器是CPU内部存储单元,数量有限,一般在128bit内,但是速度快,CPU访问几乎没有任何延迟。分为通用寄存器和特殊功能寄存器。 通常说的存储器是独立于cpu之外的,比如内存,硬盘,光盘等。 所有数据必须从存储器传入寄存器后,cpu才能使用。

信号与系统实验指导书

信号与系统实验指导书 通信教研室 辽宁工业大学 2009年8月

目录 实验一时域卷积积分- 1 - 实验二连续系统时域分析- 10 - 实验三离散系统时域分析- 13 - 实验四二阶低通滤波器的响应- 16 -

1 MATLAB 在信号与系统中的应用 1.1.1 实验目的 (1) 练习连续信号的产生。 (2) 练习傅里叶变换的分析。 (3) 练习连续系统分析。 1.1.2 实验仪器 计算机、MATLAB 软件环境。 1.1.3 实验内容 在下面的实验操作中,认真保存、记录每项操作的作用和目的。 (一) 练习连续信号的产生 已知连续信号()()sin()j t x t e t αω+=+。要求编写程序文件siggen.m ,完成以下功能: (1) 在0≤t ≤5之间,产生该信号。其中0.6,5αω=-=。 (2) 在3个子图上分别画出该信号、信号的实部和虚部,并对图形进行标注。 此外, (3) 将(2)中产生的图形文件以bmp 格式保存到桌面。 (二) 练习连续傅里叶变换的分析 已知信号12()sin(2)2cos(2)s t f t f t ππ=+,其中f 1=47Hz ,f 2=88Hz 。要求: (1) 在0≤t ≤5范围内,步长增量为0.001,求出该信号的傅里叶变换; (2) 在2个子图上,分别绘制该信号的波形和幅频、相频响应曲线图。 (三) 练习连续系统分析 某LTI 系统输入信号为信号1110()0 t u t ≤≤?=? ?其它 ,系统的冲激响应为0.2()t h t e -=,

长度为15。要求: (1) 在时间间隔为0.5前提下,完成系统的卷积计算; (2) 在2个子图上,绘出输入信号和输出信号曲线,并进行标注。 1.1.4 实验预习 (1) 读懂各例题实验程序,了解MA TLAB基本操作方法。 (2) 根据实验内容预先编写实验程序。 1.1.5 实验报告 (1) 列写实验内容和已调试通过的实验程序,并按实验记录完成实验报告,打印实验程序产生的曲线图形。 (2) 思考题 ①若通信信号由有用信号和信道噪声组成,该信号该如何产生? ②连续系统分析的方法

过程控制系统 复习总结

过程控制系统知识点总结 ) 一、概论 1、过程控制概念:五大参数。 过程控制的定义:工业中的过程控制就是指以温度、压力、流量、液位与成分等工艺参数作为被控变量的自动控制。 2、简单控制系统框图。 控制仪表的定义:接收检测仪表的测量信号,控制生产过程正常进行的仪表。主要包括:控制器、变送器、运算器、执行器等,以及新型控制仪表及装置。 控制仪表的作用:对检测仪表的信号进行运算、处理,发出控制信号,对生产过程进行控制。 3、能将控制流程图(工程图、工程设计图册)转化成控制系统框图。 4、DDZ -Ⅲ型仪表的电压信号制,电流信号制。QDZ-Ⅲ型仪表的信号制。它们之间联用要采用电气转换器。 5、电信号的传输方式,各自特点。 电压传输特点: 1)、 某台仪表故障时基本不影响其它仪表; 2)、 有公共接地点; 3)、 传输过程有电压损耗,故电压信号不适宜远传。 电流信号的特点: 1)、某台仪表出故障时,影响其她仪表; 2)、无公共地点。若要实现仪表各自的接地点,则应在仪表输入、输出端采取直流隔离措施。 6、变送器有四线制与二线制之分。区别。 1、四线制:电源与信号分别传送,对电流信号的零点及元件的功耗无严格要求。 2、两线制:节省电缆及安装费用,有利于防爆。活零点,两条线既就是信号线又就是电源线。 7、本安防爆系统的2个条件。 第一个字母:参数类型 T ——温度(Temperature) P ——压力(Pressure) L ——物位(Level) F ——流量(Flow) W ——重量(Weight) 第二个字母:功能符号 T ——变送器(transmitter) C ——控制器(Controller) I ——指示器(Indicator) R ——记录仪(Recorder) A ——报警器 (Alarm) 加热炉

汇编语言 快速入门

“哎哟,哥们儿,还捣鼓汇编呢?那东西没用,兄弟用VB"钓"一个API就够你忙活个十天半月的,还不一定搞出来。”此君之言倒也不虚,那吾等还有无必要研他一究呢?(废话,当然有啦!要不然你写这篇文章干嘛。)别急,别急,让我把这个中原委慢慢道来:一、所有电脑语言写出的程序运行时在内存中都以机器码方式存储,机器码可以被比较准确的翻译成汇编语言,这是因为汇编语言兼容性最好,故几乎所有跟踪、调试工具(包括WIN95/98下)都是以汇编示人的,如果阁下对CRACK颇感兴趣……;二、汇编直接与硬件打交道,如果你想搞通程序在执行时在电脑中的来龙去脉,也就是搞清电脑每个组成部分究竟在干什么、究竟怎么干?一个真正的硬件发烧友,不懂这些可不行。三、如今玩DOS的多是“高手”,如能像吾一样混入(我不是高手)“高手”内部,不仅可以从“高手”朋友那儿套些黑客级“机密”,还可以自诩“高手”尽情享受强烈的虚荣感--#$%&“醒醒!” 对初学者而言,汇编的许多命令太复杂,往往学习很长时间也写不出一个漂漂亮亮的程序,以致妨碍了我们学习汇编的兴趣,不少人就此放弃。所以我个人看法学汇编,不一定要写程序,写程序确实不是汇编的强项,大家不妨玩玩DEBUG,有时CRACK出一个小软件比完成一个程序更有成就感(就像学电脑先玩游戏一样)。某些高深的指令事实上只对有经验的汇编程序员有用,对我们而言,太过高深了。为了使学习汇编语言有个好的开始,你必须要先排除那些华丽复杂的命令,将注意力集中在最重要的几个指令上(CMP LOOP MOV JNZ……)。但是想在啰里吧嗦的教科书中完成上述目标,谈何容易,所以本人整理了这篇超浓缩(用WINZIP、WINRAR…依次压迫,嘿嘿!)教程。大言不惭的说,看通本文,你完全可以“不经意”间在前辈或是后生卖弄一下DEBUG,很有成就感的,试试看!那么――这个接下来呢?――Here we go!(阅读时看不懂不要紧,下文必有分解) 因为汇编是通过CPU和内存跟硬件对话的,所以我们不得不先了解一下CPU和内存:(关于数的进制问题在此不提) CPU是可以执行电脑所有算术╱逻辑运算与基本I/O控制功能的一块芯片。一种汇编语言只能用于特定的CPU。也就是说,不同的CPU其汇编语言的指令语法亦不相同。个人电脑由1981年推出至今,其CPU发展过程为:8086→80286→80386→80486→PENTIUM →……,还有AMD、CYRIX等旁支。后面兼容前面CPU的功能,只不过多了些指令(如多能奔腾的MMX指令集)、增大了寄存器(如386的32位EAX)、增多了寄存器(如486的FS)。为确保汇编程序可以适用于各种机型,所以推荐使用8086汇编语言,其兼容性最佳。本文所提均为8086汇编语言。寄存器(Register)是CPU内部的元件,所以在寄存器之间的数据传送非常快。用途:1.可将寄存器内的数据执行算术及逻辑运算。2.存于寄存器内的地址可用来指向内存的某个位置,即寻址。3.可以用来读写数据到电脑的周边设备。8086有8个8位数据寄存器,这些8位寄存器可分别组成16位寄存器:AH&AL=AX:累加寄存器,常用于运算;BH&BL=BX:基址寄存器,常用于地址索引;CH&CL=CX:计数寄存器,常用于计数;DH&DL=DX:数据寄存器,常用于数据传递。为了运用所有的内存空间,8086设定了四个段寄存器,专门用来保存段地址:CS(Code Segment):代码段寄存器;DS(Data Segment):数据段寄存器;SS(Stack Segment):堆栈段寄存器;ES(Extra Segment):附加段寄存器。当一个程序要执行时,就要决定程序代码、数据和堆栈各要用到内存的哪些位置,通过设定段寄存器CS,DS,SS来指向这些起始位置。通常是将DS固定,而根据需要修改CS。所以,程序可以在可寻址空间小于64K的情况下被写成任意大小。所以,程序和其数据组合起来的大小,限制在DS所指的64K内,这就是COM文件不得大于64K的原因。8086以内存做为战场,用寄存器做为军事基地,以加速工作。除了前面所提的寄存器外,还有一些特殊功能的寄存器:IP(Intruction Pointer):指

DCS集散控制系统课程总结

集散控制系统课程总结 本文将从课程学习框架(附件)、各章节内容、学习心得体会三个方面阐述自己对集散控制系统这门学科的了解,并作出以下总结:(其中学习框架参考书中目录及其自己所看章节而定位;各章节内容由看书过程中认为的重要及疑难问题内容设置而成) 一、DCS概述与PLC的关系 1.1 DCS的概述 1、计算机如何进行处理信息? 控制计算机处理的信息只能是数字量,在实际生产过程中,被控量(如温度、压力、流量等)都是模拟量,执行机构接受的大多数是模拟量。所以,系统需有将模拟信号转换为数字信号的模/数(A/D)转换器和将数字信号转换为模拟信号的数/模(A/D)转换器。 2、计算机控制系统的组成? 主机、输入/输出设备、通信设备、现场设备、操作台、系统软件、应用软件 3、计算机控制系统的分类有哪些? 数据采集系统(DAS)、直接数字控制系统(DDC)、计算机监督控制系统(SCC)、分散控制系统(DCS)、现场总线控制系统(FCS)、综合自动化系统(CIPS) 4、DCS的概念? 集散型控制系统(Total Distributed Control Systems以下称作DCS) 也称为分散控制系统(Distributed Computer Control Systems),它是一个由过程控制级和过程监控级组成的以通信网络为纽带的多级计算机系统,分析了计算机、通讯(Communication)、显示(CRT)和控制(Control)等4C技术,其基本思想是分散控制、集中操作、分级管理、配置灵活、组态方便。它是以微处理器为核心,采用数据通讯技术和图形显示技术的新型计算机控制系统。该系统能够完成直接数字控制、顺序控制、批量控制、数据采集与处理、多变量解耦控制以及最优控制等功能,在先进的集散型控制系统中,还包含有生产的指挥、调度和管理功能。 5、DCS集散控制系统的特点? 1).采用分散技术、集中操作、分级管理、分而自治和综合协调发展的设计原则,大大提 高系统的可靠性。 2).采用4C技术,即Control控制技术;Computer计算机技术;Communication 通信技术; Cathode Ray Tube CRT显示技术。

3.单片机的存储器、寄存器及位地址空间

单片机的存储器有几种?多存放何种内容和信息? 答:单片机的存储器有程序存储器ROM与数据存储器RAM两种。 这两种存储器在使用上是严格区分的,不得混用。 程序存储器存放程序指令,以及常数,表格等;而数据存储器则存放缓冲数据。 MCS-51单片机存储器的结构有哪几部分? 答:MCS-51单片机存储器的结构共有3部分: 一是程序存储器 二是内部数据存储器 三是外部数据存储器 MCS-51单片机的存储器分为哪几类? 答:MCS-51单片机的存储器可分为5类:程序存储器、内部数据存储器、特殊功能寄存器、位地址空间、外部数据存储器。 程序存储器用于存放什么内容?它可寻址的地址空间是多少? 答:程序存储器用于存放编号的程序和表格常数 程序存储器以程序计数器PC作地址指针 由于MCS-51单片机的程序计数器为16位,因此可寻直的地址为64KB。 MCS-51单片机复位后,对系统有何要求? 答:单片机复位后,程序计数器PC的内容为0000H,所以系统必须从0000H单元开始取指令来执行程序。

0000H单元是系统的起始地址,一般在该单元存放一条绝对跳转指令(LJMP) 而用户设计的主程序,则从跳转后的地址开始安放。 MCS-51单片机内部数据存储器是怎样设置的? 答:MCS-51单片机内部有128个字节的数据存储器,内部RAM编址为00H~7FH。 MCS-51对其内部的RAM存储器有很丰富的操作指令,方便了程序设计。 单片机内部数据存储器的特点是什么? 答:工作寄存器和数据存储器是统一编址的,这是单片机内部存储器的主要特点。 什么是堆栈?MCS-51单片机的堆栈怎样设置的? 答:程序设计时,往往需要一个后进先了的RAM区,以保存CPU的现场。这种后进先出的缓冲区,就称为堆栈。 MCS-51单片的堆栈原则上设在内部RAM的任意区域内。但是,一般设在31H~7FH的范围之间,栈顶的位置由栈指针SP指出。 什么是特殊功能寄存器? 答:特殊功能寄存器是用来对片内各功能模块进行管理、控制、监视的控制寄存器和状态寄存器,是一个特殊功能的RAM区。 MCS-51单片机特殊功能寄存器的作用是什么? 答:特殊功能寄存器的作用是对片内各功能模块进行管理、控制和监视。 MCS-51单片机特殊功能寄存器是怎样设置的? 答:MCS-51单片机内的I/O口锁存器、定时器、串行口缓冲器以及各种控制寄存器和状态寄存器都以特殊功能寄存器的形式出现。

6、汇编学习从入门到精通(荐书)

汇编学习从入门到精通Step By Step 2007年12月15日星期六00:34 信息来源:https://www.sodocs.net/doc/0415252522.html,/hkbyest/archive/2007/07/22/1702065.aspx Cracker,一个充满诱惑的词。别误会,我这里说的是软件破解,想做骇客的一边去,这年头没人说骇客,都是“黑客”了,嘎嘎~ 公元1999年的炎热夏季,我捧起我哥留在家的清华黄皮本《IBM-PC汇编语言程序设计》,苦读。一个星期后我那脆弱的小心灵如玻璃般碎裂了,为了弥补伤痛我哭爹求妈弄了8k大洋配了台当时算是主流的PC,要知道那是64M内存!8.4G硬盘啊!还有传说中的Celeon 300A CPU。不过很可惜的是在当时那32k小猫当道的时代,没有宽带网络,没有软件,没有资料,没有论坛,理所当然我对伟大的计算机科学体系的第一步探索就此夭折,此时陪伴我的是那些盗版光盘中的游戏,把CRACK_XXX文件从光盘复制到硬盘成了时常的工作,偶尔看到光盘中的nfo 文件,心里也闪过一丝对破解的憧憬。 上了大学后有网可用了,慢慢地接触到了一些黑客入侵的知识,想当黑客是每一个充满好奇的小青年的神圣愿望,整天看这看那,偷偷改了下别人的网页就欢喜得好像第一次偷到鸡的黄鼠狼。 大一开设的汇编教材就是那不知版了多少次的《IBM-PC汇编语言程序设计》,凭着之前的那星期苦读,考试混了个80分。可惜当时头脑发热,大学60分万岁思想无疑更为主流,现在想想真是可惜了宝贵的学习时间。 不知不觉快毕业了,这时手头上的《黑客防线》,《黑客X档案》积了一大摞,整天注来注去的也厌烦了,校园网上的肉鸡一打一打更不知道拿来干什么。这时兴趣自然转向了crack,看着杂志上天书般的汇编代码,望望手头还算崭新的汇编课本,叹了口气,重新学那已经忘光了的汇编语言吧。咬牙再咬牙,看完寻址方式那章后我还是认输,不认不行啊,头快裂了,第三次努力终告失败。虽然此时也可以爆破一些简单的软件,虽然也知道搞破解不需要很多的汇编知识,但我还是固执地希望能学好这门基础中的基础课程。 毕业了,进入社会了,找工作,上班,换工作成了主流旋律,每天精疲力尽的哪有时间呢?在最初的中国移动到考公务员再到深圳再到家里希望的金融机构,一系列的曲折失败等待耗光了我的热情,我失业了,赋闲在家无所事事,唯一陪伴我的是那些杂志,课本,以及过时的第二台电脑。我不想工作,我对找工作有一种恐惧,我靠酒精麻醉自己,颓废一段日子后也觉得生活太过无聊了,努力看书考了个CCNA想出去,结果还是被现实的就业环境所打败。三年时间,一无所获。 再之后来到女朋友处陪伴她度过刚毕业踏入社会工作的适应时期,这段时间随便找了个电脑技术工作,每月赚那么个几百块做生活费。不过这半年让我收获比较大的就是时间充裕,接触到了不少新东西,我下定决心要把汇编学好,这时我在网上看到了别人推荐的王爽《汇编语言》,没抱什么希望在当当网购了人生中的第一次物,19块6毛,我记得很清楚,呵呵。 废话终于完了,感谢各位能看到这里,下面进入正题吧。

Windows X86-64位汇编语言入门

Windows X86-64位汇编语言入门 Windows X64汇编入门(1) 最近断断续续接触了些64位汇编的知识,这里小结一下,一是阶段学习的回顾,二是希望对64位汇编新手有所帮助。我也是刚接触这方面知识,文中肯定有错误之处,大家多指正。 文章的标题包含了本文的四方面主要内容: (1)Windows:本文是在windows环境下的汇编程序设计,调试环境为Windows Vista 64位版,调用的均为windows API。 (2)X64:本文讨论的是x64汇编,这里的x64表示AMD64和Intel的EM64T,而不包括IA64。至于三者间的区别,可自行搜索。 (3)汇编:顾名思义,本文讨论的编程语言是汇编,其它高级语言的64位编程均不属于讨论范畴。 (4)入门:既是入门,便不会很全。其一,文中有很多知识仅仅点到为止,更深入的学习留待日后努力。其二,便于类似我这样刚接触x64汇编的新手入门。 本文所有代码的调试环境:Windows Vista x64,Intel Core 2 Duo。 1. 建立开发环境 1.1 编译器的选择 对应于不同的x64汇编工具,开发环境也有所不同。最普遍的要算微软的MASM,在x64环境中,相应的编译器已经更名为ml64.exe,随Visual Studio 2005一起发布。因此,如果你是微软的忠实fans,直接安装VS2005既可。运行时,只需打开相应的64位命令行窗口(图1),便可以用ml64进行编译了。

第二个推荐的编译器是GoASM,共包含三个文件:GoASM编译器、GoLINK链接器和GoRC 资源编译器,且自带了Include目录。它的最大好外是小,不用为了学习64位汇编安装几个G 的VS。因此,本文的代码就在GoASM下编译。 第三个Yasm,因为不熟,所以不再赘述,感兴趣的朋友自行测试吧。 不同的编译器,语法会有一定差别,这在下面再说。 1.2 IDE的选择 搜遍了Internet也没有找到支持asm64的IDE,甚至连个Editor都没有。因此,最简单的方法是自行修改EditPlus的masm语法文件,这也是我采用的方法,至少可以得到语法高亮。当然,如果你懒得动手,那就用notepad吧。 没有IDE,每次编译时都要手动输入不少参数和选项,做个批处理就行了。 1.3 硬件与操作系统 硬件要求就是64位的CPU。操作系统也必须是64位的,如果在64位的CPU上安装了

过程控制系统考试知识点复习和总结终极版

过程控制系统考试知识点复习和总结 终极版 第五章复杂控制系统(串级、比值、均匀、分程、选择、前馈、双重控制)

串级控制系统 定义:采用不止一个控制器,而且控制器间相串接,一个控制器的输出作为另一个控制器的设定值的系统。 调节过程: 当燃料气压力或流量波动时,加热炉出口温度还没有变化,因此,主控制器输出不变,燃料气流量控制器因扰动的影响,使燃料气流量测量值变化,按定值控制系统的调节过程,副控制器改变控制阀开度,使燃料气流量稳定。与此同时,燃料气流量的变化也影响加热炉出口温度,使主控制器输出,即副控制器的设定变化,副控制器的设定和测量的同时变化,进一步加速了控制系统克服扰动的调节过程,使主被控变量回复到设定值。 当加热炉出口温度和燃料气流量同时变化时,主控制器经过主环及时调节副控制器的设定,使燃料气流量变化保持炉温恒定,而副控制器一方面接受主控制器的输出信号,同时,根据燃料气流量测量值的变化进行调节,使燃料气流量跟踪设定值变

化,使燃料气流量能根据加热炉出口温度及时调整,最终使加热炉出口温度迅速回复到设定值。 特点: 能迅速克服进入副回路扰动的影响 串级控制系统由于副回路的存在,改进了对象特性,提高了工作频率 串级控制系统的自适应能力 设计: ⑴主、副回路 副回路应尽量包含生产过程中主要的、变化剧烈、频繁和幅度大的扰动,并力求包含尽可能多的扰动。设计副回路应注意工艺上的合理性;应考虑经济性;注意主、副对象时间常数的匹配 ⑵串级控制系统中主、副控制器控制规律 主控制器起定值控制作用,副控制器对主控制器输出起随动控制作用,而对扰动作用起定值控制作用。主被控变量要求无余差,副被控变量却允许在一定范围内变动。主控制器可采用比例、积分两作用或比例、积分、微分三作用控制规律,副控制器单比例作用或比例积分作用控制规律。 ⑶主、副控制器正、反作用的选择

信号与系统课程设计应用MATLAB实现连续信号的采样与重构仿真

设计题目应用MATLAB实现连续信号的采样与重构仿真 1、设计目的 信号与系统课程设计是学习《信号与系统》课程必要的教学环节。由于该课程是专业基础课,需要通过实践了巩固基础知识,为使学生取得最现代化的设计技能和研究方法,课程设计训练也就成为了一个重要教学环节。通过对信号与系统一书的重新认识,我们将学习如何利用MATLAB软件进行仿真与重构并加深对滤波器的理解,这样的课程设计出了对我们的学习起着只关重要的作用,还可以很好的培养我们自己的动手能力。本次课程设计,我们会引入一个模拟的信号,通过MATLAB软件的防真技术来实现对它的分析、理解与学习。 MATLAB软件是今年来比较长用的一种数学软件,它有很强大的功能,主要侧重于某些理论知识的灵活运用。本次课程设计的目的是:增加对仿真软件MATLAB的感性认识,熟悉MATLAB软件平台的使用和MATLAB编程方法及常用语句;、初步掌握MATLAB的编程方法和特点;加深理解采样与重构的概念,应用MATLAB编程实现对信号的采样与重构;分别计算在临界采样、过采样、欠采样三种不同条件下重构信号的误差,并由此总结采样频率对信号重构误差的影响;学生需要自拟题目,根据自己手中的资料独立思考与分析,明确实习内容,制定实习步骤与方案,独立完成作业。 2、原理说明 2.1.1MATLAB MATLAB是美国Math Works公司产品,MATLAB现已被广泛于数学、通信、信号处理、自动控制、神经网络、图形处理等许多不同学科的研究中。并越来越多的应用到我们的学习生活中来,是目前通信工程上最广泛应用的软件之一。最初的MATLAB 只是一个数学计算工具。但现在的MATLAB已经远不仅仅是一个“矩阵实验室”,它已经成为一个集概念设计、算法开发、建模仿真,实时实现于一体的集成环境,它拥有许多衍生子集工具。 沈阳大学

汇编语言入门

汇编语言入门教程 对初学者而言,汇编的许多命令太复杂,往往学习很长时间也写不出一个漂漂亮亮的程序,以致妨碍了我们学习汇编的兴趣,不少人就此放弃。所以我个人看法学汇编,不一定要写程序,写程序确实不是汇编的强项,大家不妨玩玩DEBUG,有时CRACK出一个小软件比完成一个程序更有成就感(就像学电脑先玩游戏一样)。某些高深的指令事实上只对有经验的汇编程序员有用,对我们而言,太过高深了。为了使学习汇编语言有个好的开始,你必须要先排除那些华丽复杂的命令,将注意力集中在最重要的几个指令上(CMP LOOP MOV JNZ……)。但是想在啰里吧嗦的教科书中完成上述目标,谈何容易,所以本人整理了这篇超浓缩(用WINZIP、WINRAR…依次压迫,嘿嘿!)教程。大言不惭的说,看通本文,你完全可以“不经意”间在前辈或是后生卖弄一下DEBUG,很有成就感的,试试看!那么――这个接下来呢?――Here we go!(阅读时看不懂不要紧,下文必有分解) 因为汇编是通过CPU和内存跟硬件对话的,所以我们不得不先了解一下CPU和内存:(关于数的进制问题在此不提) CPU是可以执行电脑所有算术╱逻辑运算与基本I/O 控制功能的一块芯片。一种汇编语言只能用于特定的CPU。也就是说,不同的CPU其汇编语言的指令语法亦不相同。个人电脑由1981年推出至今,其CPU发展过程为:8086→80286→80386→80486→PENTIUM →……,还有AMD、CYRIX等旁支。后面兼容前面CPU的功能,只不过多了些指令(如多能奔腾的MMX指令集)、增大了寄存器(如386的32位EAX)、增多了寄存器(如486的FS)。为确保汇编程序可以适用于各种机型,所以推荐使用8086汇编语言,其兼容性最佳。本文所提均为8086汇编语言。寄存器(Register)是CPU内部的元件,所以在寄存器之间的数据传送非常快。用途:1.可将寄存器内的数据执行算术及逻辑运算。2.存于寄存器内的地址可用来指向内存的某个位置,即寻址。3.可以用来读写数据到电脑的周边设备。8086 有8个8位数据寄存器,这些8位寄存器可分别组成16位寄存器:AH&AL=AX:累加寄存器,常用于运算;BH&BL=BX:基址寄存器,常用于地址索引;CH&CL=CX:计数寄存器,常用于计数;DH&DL=DX:数据寄存器,常用于数据传递。为了运用所有的内存空间,8086设定了四个段寄存器,专门用来保存段地址:CS(Code Segment):代码段寄存器;DS(Data Segment):数据段寄存器;SS(Stack Segment):堆栈段寄存器;ES(Extra Segment):附加段寄存器。当一个程序要执行时,就要决定程序代码、数据和堆栈各要用到内存的哪些位置,通过设定段寄存器CS,DS,SS 来指向这些起始位置。通常是将DS固定,而根据需要修改CS。所以,程序可以在可寻址空间小于64K的情况下被写成任意大小。所以,程序和其数据组合起来的大小,限制在DS 所指的64K内,这就是COM文件不得大于64K的原因。8086以内存做为战场,用寄存器做为军事基地,以加速工作。除了前面所提的寄存器外,还有一些特殊功能的寄存器:IP(Intruction Pointer):指令指针寄存器,与CS配合使用,可跟踪程序的执行过程;SP(Stack Pointer):堆栈指针,与SS配合使用,可指向目前的堆栈位置。BP(Base Pointer):基址指针寄存器,可用作SS 的一个相对基址位置;SI(Source Index):源变址寄存器可用来存放相对于DS段之源变址指针;DI(Destination Index):目的变址寄存器,可用来存放相对于ES 段之目的变址指针。还有一个标志寄存器FR(Flag Register),有九个有意义的标志,将在下文用到时详细说明。 内存是电脑运作中的关键部分,也是电脑在工作中储存信息的地方。内存组织有许多可存放

存储器寻址方式

存储器寻址方式 存储器寻址方式的操作数存放在主存储器中,用其所在主存的位置表示操作数。在这种寻址方式下,指令中给出的是有关操作数的主存地址信息。8088的存储器空间是分段管理的。程序设计时采用逻辑地址;由于段地址在默认的或用段超越前缀指定的段寄存器,所以采用偏移地址,称之为有效地址(Effective Address, EA) 1.直接寻址 在这种寻址方式下,指令中直接包含了操作数的有效地址,跟在指令操作码之后。其默认的段地址在DS段寄存器中,可以采用段超越前缀。 例将数据段中偏移地址2000H处的内存数据送至AX寄存器。 MOV AX, [2000H] 该指令中给定了有效地址2000H, 默认与数据段寄存器DS一起构成操作数所在存储单元的物理地址。 如果DS=1429H,则操作数所在的物理地址为1429H*16+2000H=16920H. 该指令的执行结果是将16920H单元的内容传送至AX寄存器,其中,高字节内容送AH寄存器,低字节内容送AL寄存器。

MOV AX, [2000H];指令代码:A1 00 20 例: 将附加段中偏移地址2000H 处的内存数据送至AX 寄存器。 MOV AX, ES:[2000H]; 指令代码:26 A1 00 20 变量指示内存的一个数据,直接引用变量就是采用直接寻址方式。变量应该在数据段进行定义,常用的变量定义伪指令DB 和DW 分别表示字节变量和字变量,例如 WV AR DW 1234H; 定义字变量WV AR ,它的初值是1234H 这样,标示符WV AR 表示具有初值1234H 的字变量,并由汇编程序为它内存分配了两个连续的字节单元。假设它在数据段偏移地址是0010H 。 例:将数据段的变量WV AR (即该变量名指示的内存单元数据)送至AX 寄存器。 MOV AX, WV AR; 指令功能: 上述指令实质就是如下指令: AX WV AR AX DS :[0010H]

《信号与系统》课程教学大纲

《信号与系统》课程教学大纲 课程编码:A0303051 总学时:64 理论学时:64 实验学时:0 学分:4 适用专业:通信工程 先修课程:电路,高等数学,复变函数与积分变换,线性代数 一、课程的性质与任务 《信号与系统》是电类专业的一门重要的专业课程。它的任务是研究信号和线性非时变系统的基本理论和基本分析方法,要求掌握最基本的信号变换理论,并掌握线性非时变系统的分析方法,为学习后续课程,以及从事相关领域的工程技术和科学研究工作奠定坚实的理论基础。通过本课程的学习,学生将理解信号的函数表示与系统分析方法,掌握连续时间系统和离散时间系统的时域分析和频域分析,连续时间系统的S域分析和离散时间系统的Z域分析,以及状态方程与状态变量分析法等相关内容。通过实验,使学生掌握利用计算机进行信号与系统分析的基本方法,加深对信号与线性非时变系统的基本理论的理解,训练学生的实验技能和科学实验方法,提高分析和解决实际问题的能力。

二、课程学时分配 教学章节理论实践 第一章:信号与系统导论6 第二章:连续系统的时域分析8 第三章:信号与系统的频域分析18 第四章:连续系统的复频域分析10 第五章:系统函数的零、极点分析8 第六章:离散系统的时域分析6 第七章:离散系统的Z域分析8 总计64 三、课程的基本教学内容及要求 第一章信号与系统导论(6学时) 1.教学内容 (1)历史的回顾,应用领域,信号的概念 (2)系统的概念,常用的基本信号 (3)信号的简单处理,单位冲激函数 2.重点及难点 教学重点:信号的描述、阶跃信号与冲激信号;信号的运算;线性时不变系统判据;系统定义 教学难点:信号及其分类,信号分析与处理,系统分析 3.课程教学要求

过程控制系统考试知识点总结

过程控制系统知识点总结 考试题型 一、判断题(共10分) 二、单选(20分) 三、填空(10分) 四、简答题(5小题,共20分) 五、分析计算题(4小题,共40分,每题10分) 一、概论 1、过程控制概念:五大参数。 过程控制的定义:工业中的过程控制是指以温度、压力、流量、液位和成分等工艺参数作为被控变量的自动控制。 2、简单控制系统框图。 控制仪表的定义:接收检测仪表的测量信号,控制生产过程正常进行的仪表。主要包括:控制器、变送器、运算器、执行器等,以及新型控制仪表及装置。 控制仪表的作用:对检测仪表的信号进行运算、处理,发出控制信号,对生产过程进行控制。 3、能将控制流程图(工程图、工程设计图册)转化成控制系统框图。 4、DDZ -Ⅲ型仪表的电压信号制,电流信号制。QDZ-Ⅲ型仪表的信号制。它们之间联用要采用电气转换器。 5、电信号的传输方式,各自特点。 电压传输特点: 1). 某台仪表故障时基本不影响其它仪表; 2). 有公共接地点; 3). 传输过程有电压损耗,故电压信号不适宜远传。 电流信号的特点: 1).某台仪表出故障时,影响其他仪表; 2).无公共地点。若要实现仪表各自的接地点,则应在仪表输入、输出端采取直流隔离措施。 6、变送器有四线制和二线制之分。区别。 1、四线制:电源与信号分别传送,对电流信号的零点及元件的功耗无严格要求。 2、两线制:节省电缆及安装费用,有利于防爆。活零点,两条线既是信号线又是电源线。 第一个字母:参数类型 T ——温度(Temperature ) P ——压力(Pressure ) L ——物位(Level ) F ——流量(Flow ) W ——重量(Weight ) 第二个字母:功能符号 T ——变送器(transmitter ) C ——控制器(Controller ) I ——指示器(Indicator ) R ——记录仪(Recorder ) A ——报警器(Alarm ) 加热炉

MATLAB实验教程

目录实验一、MATLAB 基本应用 实验二、实验二信号的时域表示 实验三、连续信号卷积 实验四、典型周期信号的频谱表示 实验五、傅立叶变换性质研究 实验六、系统的零极点分析 实验七离散信号分析

实验一 MATLAB 基本应用 一、实验目的:学习MATLAB的基本用法,了解 MATLAB 的目录结构和基本功能以及MATLAB在信号与系统中的应用。 二、实验内容: 例一已知x的取值范围,画出y=sin(x)的图型。 参考程序:x=0:0.05:4*pi; y=sin(x); plot(y) 例二计算y=sin(π/5)+4cos(π/4) 例三已知z 取值范围,x=sin(z);y=cos(z);画三维图形。 z=0:pi/50:10*pi; x=sin(z); y=cos(z); plot3(x,y,z)

xlabel('x') ylabel('y') zlabel('z') 例四已知x的取值范围,用subplot函数绘图。 参考程序:x=0:0.05:7; y1=sin(x); y2=1.5*cos(x); y3=sin(2*x); y4=5*cos(2*x); subplot(2,2,1),plot(x,y1),title('sin(x)') subplot(2,2,2),plot(x,y2),title('1.5*cos(x)') subplot(2,2,3),plot(x,y3),title('sin(2*x)') subplot(2,2,4),plot(x,y4),title('5*cos(2*x)')

单位阶跃信号 u(t+3)-2u(t) 其中 u(t)=1/2+(1/2)sign(t) Sigh(t)是符号函数t>0时为1,t<0时为-1; clear all %利用maple中的heaviside函数来实现u(t+3)-2u(t) syms t f=maple('Heaviside(t+3)-2*Heaviside(t)'); t1=-3*pi:0.01:3*pi;%注意精度问题 ff=subs(f,t,t1); figure(1); plot(t1,ff); axis([-5,5,-1.2,1.2]); title('u(t+3)-2u(t)'); %利用自己编写的heaviside函数来实现u(t+3)-2u(t) t=-5:0.01:5; f=Heaviside(t+3)-2*Heaviside(t); figure(2); plot(t,f); axis([-5,5,-1.2,1.2]); title('u(t+3)-2u(t)') %利用符号函数来实现u(t) t=-5:0.05:5; f=sign(t); ff=1/2+1/2*f; figure(3); plot(t,ff); axis([-5 5 -0.1 1.1]); title('u(t)') %利用符号函数来实现u(t+3)-2u(t) t=-5:0.01:5; f=(1/2+1/2*sign(t+3))-2*(1/2+1/2*sign(t)); figure(4) plot(t,f),axis([-5,5,-1.2,1.2]),title('u(t+3)-2u(t)')

程序存储器 指令寄存器 程序计数器(PC,IP) 地址寄存器的区别与联系

先明白定义再说区别和原理: 1、程序存储器(program storage) 在计算机的主存储器中专门用来存放程序、子程序的一个区域。 2、指令寄存器(IR ):用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存取到数据寄存器(DR)中,然后再传送至IR。指令划分为操作码和地址码字段,由二进制数字组成。为了执行任何给定的指令,必须对操作码进行测试,以便识别所要求的操作。指令译码器就是做这项工作的。指令寄存器中操作码字段的输出就是指令译码器的输入。操作码一经译码后,即可向操作控制器发出具体操作的特定信号。 3、程序计数器(PC):为了保证程序(在操作系统中理解为进程)能够连续地执行下去,CPU必须具有某些手段来确定下一条指令的地址。而程序计数器正是起到这种作用,所以通常又称为指令计数器。在程序开始执行前,必须将它的起始地址,即程序的一条指令所在的内存单元地址送入PC,因此程序计数器

(PC)的内容即是从内存提取的第一条指令的地址。当执行指令时,CPU将自动修改PC的内容,即每执行一条指令PC增加一个量,这个量等于指令所含的字节数,以便使其保持的总是将要执行的下一条指令的地址。由于大多数指令都是按顺序来执行的,所以修改的过程通常只是简单的对PC加1。 当程序转移时,转移指令执行的最终结果就是要改变PC的值,此PC值就是转去的地址,以此实现转移。有些机器中也称PC为指令指针IP(Instruction Pointer) 4、地址寄存器:用来保存当前CPU所访问的内存单元的地址。由于在内存和CPU之间存在着操作速度上的差别,所以必须使用地址寄存器来保持地址信息,直到内存的读/写操作完成为止。 当CPU和内存进行信息交换,即CPU向内存存/ 取数据时,或者CPU从内存中读出指令时,都要使用地址寄存器和数据缓冲寄存器。同样,如果我们把外围设备的设备地址作为像内存的地址单元那样来看待,那么,当CPU和外围设备交换信息时,我们同样使用地址寄存器和数据缓冲寄存器。

信号与系统实验报告

信号与系统实验教程(实验报告) 班级: 姓名: 学号: XXXX大学信息科学与技术学院二〇一六年五月十五日

实验一:连续时间信号的频域分析 实验目的: 1、掌握连续时间周期信号的傅里叶级数的物理意义和分析方法; 2、观察截短傅里叶级数产生的Gibbs现象,了解其特点及产生的原因; 3、掌握连续时间傅里叶变换的分析方法及其物理意义; 4、掌握各种典型的连续时间非周期信号的频谱特征以及傅里叶变换的主要性质; 5、学习掌握利用MATLAB语言编写计算CTFS、CTFT的程序,并能利用这些程序对一些典型信号进行频谱分析,验证CTFT的若干重要性质。 实验要求: 掌握并深刻理傅里叶变换的物理意义,掌握信号的傅里叶变换的计算方法,掌握利用MATLAB编程完成相关的傅里叶变换的计算。 实验原理: 1.傅里叶级数:任何周期函数都可以用正弦函数和余弦函数构成的无穷级数来表示。 2.吉布斯现象:将具有不连续点的周期函数(如矩形脉冲)进行傅立叶级数展开后,选取有限项进行合成。当选取的项数越多,在所合成的波形中出现的峰起越靠近原信号的不连续点。当选取的项数很大时,该峰起值趋于一个常数,大约等于总跳变值的9%。 实验内容: 1.参照例2-1程序,上机验证周期方波信号的傅里叶级数ck,并画出幅度谱|ck|。 1.1 程序代码 (1)准备:定义单位阶跃函数和delta函数 % filename u.m function y = u(t) y = (t>=0); % filename delta.m function y = delta(t) dt = 0.001; y = (u(t)-u(t-dt))/dt; 将u.m和delta.m分别保存到work文件夹中,或者保存在自己建立的文件夹中并将此文件夹设为工作路径(file->set path...) (2)验证方波信号的傅里叶级数ck并画频谱图: clear, close all T = 2; dt = 0.00001; t = -2:dt:2; x1 = u(t) - u(t-1-dt); x = 0;

相关主题