搜档网
当前位置:搜档网 › 从实模式到保护模式第8到12章笔记

从实模式到保护模式第8到12章笔记

从实模式到保护模式第8到12章笔记
从实模式到保护模式第8到12章笔记

第十章IA32

10.1 IA-32架构的基本执行环境

10.1.1 寄存器的扩展

在16位处理器内,有8个通用寄存器AX、BX、CX、DX、SI、DI、BP和SP,其中,前4个还可以拆分成两个独立的8位寄存器来用,即AH、AL、BH、BL、CH、CL、DH和DL。

为了在汇编语言程序中使用经过扩展(Extend)的寄存器,需要给它们命名,它们的名字

分别是EAX、EBX、ECX、EDX、ESI、EDI、ESP和EBP。可以在程序中使用这些寄存器,

即使是在实模式下:

mov eax,0xf0000005

mov ecx,eax

add edx,ecx

但是,就像以上指令所示的那样,指令的源操作数和目的操作数必须具有相同的长度,个别特

殊用途的指令除外。因此,像这样的搭配是不允许的,在程序编译时,编译器会报告错误:

mov eax,cx ;错误的汇编语言指令

如果目的操作数是32位寄存器,源操作数是立即数,那么,立即数被视为32位的:

mov eax,0xf5 ;EAX←0x000000f5

32位通用寄存器的高16位是不可独立使用的,但低16位保持同16位处理器的兼容性。因此,

在任何时候它们都可以照往常一样使用:

mov ah,0x02

mov al,0x03

add ax,si

可以在32位处理器上运行16位处理器上的软件。但是,它并不是16位处理器的简单增强。

事实上,32位处理器有自己的32位工作模式,在本书中,32位模式特指32位保护模式。在这种

模式下,可以完全、充分地发挥处理器的性能。同时,在这种模式下,处理器可以使用它全部的32

根地址线,能够访问4GB内存。

10.1.2 基本的工作模式

8086具有16位的段寄存器、指令指针寄存器和通用寄存器(CS、SS、DS、ES、IP、AX、

BX、CX、DX、SI、DI、BP、SP),因此,我们称它为16位的处理器。尽管它可以访问1MB

的内存,但是只能分段进行,而且由于只能使用16位的段内偏移量,故段的长度最大只能是

64KB。8086只有一种工作模式,即实模式。当然,这个名称是后来才提出来的。

10.1.3 线性地址

为IA-32处理器编程,访问内存时,需要在程序中给出段地址和偏移量,因为分段是IA-32

架构的基本特征之一。传统上,段地址和偏移地址称为逻辑地址,偏移地址叫做有效地址

(Effective Address,EA),在指令中给出有效地址的方式叫做寻址方式(Addressing Mode)。

10.2 现代处理器的结构和特点

10.2.1 流水线

处理器的每一次更新换代,都会增加若干新特性,这是很自然的。同时我们也会发现,老

软件在新的处理器上跑得更快。这里面的原因很简单,处理器的设计者总是在想尽办法加快指

令的执行。

10.2.2 高速缓存

影响处理器速度的另一个因素是存储器。从处理器内部向外看,它们分别是寄存器、内存和硬

盘。当然,现在有的计算机已经用上了固态磁盘。

10.2.3 乱序执行

为了实现流水线技术,需要将指令拆分成更小的可独立执行部分,即拆分成微操

作(Micro-Operations),简写为μops。

10.2.5 分支目标预测

流水线并不是百分之百完美的解决方案。实际上,有很多潜在的因素会使得流水线不能达到最

佳的效率。一个典型的情况是,如果遇到一条转移指令,则后面那些已经进入流水线的指令就都无

效了。换句话说,我们必须清空(Flush)流水线,从要转移到的目标位置处重新取指令放入流水线。

10.3.1 32位处理器的寻址方式

在16位处理器上,指令中的操作数可以是8位或者16位的寄存器、指向8位或者16位实际

操作数的16位内存地址,以及8位或16位的立即数。

第十一章进入保护模式

NASM编译

●情景描述

使用NASM编译一段程序,并可以在裸机上运行。

●实现功能

在开机后显示"Hello, OS world!"

●流程

1)初始化寄存器

2)调用BIOS int 10h,显示字符串

3)进入死循环

●代码及注释

%define _BOOT_DEBUG_

%ifdef _BOOT_DEBUG_

org 0100h

%else

org 07c00h

%endif

;告诉编译器加载到0100处生成,这样方便生成com文件。

;或者告诉编译器加载到7c00处生成,这样方便

mov ax,cs;将当前段地址放入ax,可以不要

mov ds,ax;将当前段地址放入数据寄存器,可以不要

mov es,ax;将当前段地址放入extra寄存器,可以不要

call DispStr;调用显示字符串程序

jmp $;无限循环(跳转到当前地址)

DispStr:

mov ax,BootMessage ;BootMessage的首地址送ax

mov bp,ax; 段内地址送到bp,至此地址完成——CS:BP = 串地址

mov cx,16; CX = 串长度

mov ax,01301h; AH = 13,AL = 01h

mov bx,000ch; BH = 0(页号为0),BL = 0ch(黑底红字高亮)

mov dl,0 ; 0送dx寄存器的低字节

int 10h; 10h号中断(视频中断,对应的中断向量为40-43H)

ret ; 从显示子程序中返回到主程序

BootMessage: db "Hello, OS world!"

times 510-($-$$) db 0; 用“0”填充0面0磁道1扇区剩下的空间,使生成的二进制代码恰好为512字节;

;$是当前行的段内偏移地址,$$是本小节代码的第一行代码,在本程序中就是“org 07c00h”的段内偏移地址。

dw 0xaa55;结束标志.使得0面0磁道1扇区510字节存55,511字节存aa,0扇区从0-511号单元,共512个字节。(引导扇区的结束标志)

显示界面

运行程序界面

实验补充资料

一. 内存引导地址7C00

Intel公司当初设计8086系统内存时对内存(1M)是这样规定的:内存包括暂驻程序区640K和系统内存区384K,在640K中把BIOS和驻留操作系统的数据和程序安排在低地址处,在保留一定的可扩展空间后,为配合BIOS和磁盘操作系统就把7C00规定为硬件及软件都支持的启动引导的内存地址,并写成引导规范。在当时各个公司都有自己的一些未公开的标准,而IBM公开推行IBM计算机的内部详细的结构时,他采用的是Intel的芯片,所以他遵循了这个标准,又由于大批的公司知道了这个标准之后,都兼容这个标准,以后也继

续兼容,就真正成为一个共同的标准了,现在的CPU都是向下兼容的,还在用7C00。

由于引导扇区被加载到了7c00h处,代码中BootMessage的首地址放入bp中时,只是将8位放入了bp,缺省了高8位,这高8位需要由org指定,否则无法将正确的字符串相对偏移地址放入bp中:

BootMessage变量对应字符串在内存中首地址=0000(es段值):{7c00(org指定)+BootMessage在程序段内偏移(8位2进制)}

org会在编译期影响到内存寻址指令的编译(编译器会把所有程序用到的段内偏移地址自动加上org 后跟的数值),而其自身并不会被编译成机器码。就是为程序中所有的引用地址(需要计算的相对地址)增加一个段内偏移值。

二. 10h中断说明

10h中断表示,功能号为AH=13h时为写入字符串;AL=01h表示字符串包含属性;BH=页数;BL=显示属性;CX=字符串中的字符数量;DL,DH=从哪一列,行开始写;ES:BP 指向该字符串

反编译

通过反编译,可以将程序返回至源代码内容

反编译方法:ndisasmw -o 0x7c00 https://www.sodocs.net/doc/f5275294.html, >> 1.asm

显示1.asm内容如下:

00007C00 8CC8 mov ax,cs

00007C02 8ED8 mov ds,ax

00007C04 8EC0 mov es,ax

00007C06 E80200 call 0x7c0b

00007C09 EBFE jmp short 0x7c09

00007C0B B81E01 mov ax,0x11e

00007C0E 89C5 mov bp,ax

00007C10 B91000 mov cx,0x10

00007C13 B80113 mov ax,0x1301

00007C16 BB0C00 mov bx,0xc

00007C19 B200 mov dl,0x0

00007C1B CD10 int 0x10

00007C1D C3 ret

以下为数据区

00007C1E 48 H

00007C1F 65 e

00007C20 6C l

00007C21 6C l

00007C22 6F o

00007C23 2C ,

00007C24 20 空格

00007C25 4F O

00007C26 53 S

00007C27 20 空格

00007C28 77 w

00007C29 6F 0

00007C2A 72 r

00007C2B 6C l

00007C2C 64 d

00007C2D 21 !

以下数据为0

00007C2E 00 无

……

00007DFC 00 无

00007DFD 00 无

00007DFE 55AA 55AA

保护模式

保护模式介绍

保护模式(Protected Mode,或有时简写为pmode)是一种80286系列和之后的x86兼容CPU操作模式。保护模式有一些新的特色,设计用来增强多工和系统稳定度,像是内存保护,分页系统,以及硬件支援的虚拟内存。大部分的现今x86操作系统都在保护模式下运行,包含Linux、FreeBSD、以及微软Windows 2.0 和之后版本。

PM是处理器的native模式,在这种模式下,处理器支持所有的指令和所有的体系结构特性提供最高的性能和兼容性。对于所有的应用程序和操作系统来说,建议都使用这种模式。

另外一种286和其之后CPU的操作模式是真实模式(Real Mode),一种向前兼容且关闭这些特色的模式。设计用来让新的芯片可以执行旧的软件。依照设计的规格,所有的x86 CPU都是在真实模式下开机来确保传统操作系统的向前兼容性。在任何保护模式的特色可用前,他们必须要由某些程序手动地切换到保护模式。在现今的电脑,这种切换通常是由操作系统在开机时候必须完成的第一件工作的其中内容之一。为了保证PM的兼容性,处理器允许在受保护的,多任务的环境下执行RM程序。这个特性被称做虚拟8086模式(Virtual -8086 Mode),尽管它并不是一个真正的处理器模式。Virtual-8086模式实际上是一个PM的属性,任何任务都可以使用它。它也可能当CPU在保护模式下运行时,使用虚拟86模式来执行设计给真实模式的程序码。

RM提供了Intel 8086处理器的编程环境,另外有一些扩展(比如切换到PM或SMM 的能力)。当主机被Power-up或Reset后,处理器处于RM下。对于Intel 80386以及其后的芯片,只有使用PM才能发挥作用。因此需要解决从RM切换到PM的问题。

GDT(Global Descriptor Table)

在保护模式下,一个重要的数据结构就是GDT。

在实模式下,我们对一个内存地址的访问是通过(Segment:Offset)的方式来进行的。其中Segment是一个段的基地址,而一个段的最大长度是64 KB(2^16),这是16位系统所能表示的最大长度。而Offset则是相对于该段基地址的偏移量。因此Base Address+Offset 就是一个内存绝对地址。由此,我们可以看出,一个段具备两个因素:Base Address和Limit (段的最大长度),而对一个内存地址的访问,则是需要指出:使用哪个段?以及相对于这个段Base Address的Offset(这个Offset应该小于此段的Limit)。当然对于16-bit系统,Limit 不要指定,默认为最大长度64KB,而16-bit的Offset也永远不可能大于此Limit。我们在实际编程的时候,使用16-bit段寄存器CS(Code Segment),DS(Data Segment),SS(Stack Segment)来指定Segment,CPU将段寄存器中的数值向左偏移4-bit,放到20-bit的地址线

上就成为20-bit的Base Address。(因此内存为2^20,不会超过1M)

到了保护模式,内存的管理模式分为两种,段模式和页模式,其中页模式也是基于段模式的。也就是说,保护模式的内存管理模式事实上是:纯段模式和段页式。进一步说,段模式必不可少。对于段模式来讲,访问一个内存地址仍然使用Segment:Offset的方式,其中由于保护模式运行在32位系统上,那么Segment的两个因素:Base Address和Limit也都应该是32位的。IA-32允许将一个段的Base Address设为32-bit所能表示的任何值(Limit则可以被设为32-bit所能表示的,以2^12为倍数的任何数字。而不象Real Mode下,一个段的Base Address只能是16的倍数(因为其低4-bit是通过左移运算得来的,只能为0,从而达到使用16-bit段寄存器表示20-bit Base Address的目的),而一个段的Limit只能为固定值64 KB。)另外,Protected Mode又为段模式提供了保护机制,也就说一个段的描述符需要规定对自身的访问权限(Access)。所以在Protected Mode下,对一个段的描述则包括3方面因素:[Base Address, Limit, Access],它们加在一起被放在一个64-bit长的数据结构中,被称为段描述符。这样如果直接通过一个64-bit段描述符来引用一个段的时候,就必须使用一个64-bit长的段寄存器装入这个段描述符。但Intel为了保持向后兼容,将段寄存器仍然规定为16-bit(尽管每个段寄存器事实上有一个64-bit长的不可见部分,但对于程序员来说,段寄存器就是16-bit的),那么很明显,无法通过16-bit长度的段寄存器来直接引用64-bit的段描述符。

解决的方法就是把这些长度为64-bit的段描述符放入一个数组中,而将段寄存器中的值作为下标索引来间接引用(事实上,是将段寄存器中的高13 -bit的内容作为索引)。这个全局的数组就是GDT。在GDT中存放的不仅仅是段描述符,还有其它描述符,它们都是64-bit。

GDT可以被放在内存的任何位置,那么当程序员通过段寄存器来引用一个段描述符时,CPU必须知道GDT的入口,也就是GDT的基地址放在哪里,因此设计者提供了一个寄存器GDTR用来存放GDT的入口地址,程序员将GDT设定在内存中某个位置之后,可以通过lgdt指令将GDT的入口地址装入此寄存器,之后从此以后,CPU就根据此寄存器的内容作为GDT的入口来访问GDT了。

GDT是Protected Mode所必须的数据结构,也是唯一的。它是全局可见的,对任何一个任务而言都是这样。除了GDT之外,IA-32还允许程序员构建与GDT类似的数据结构,它们被称作LDT(Local Descriptor Table)。但与GDT不同的是,LDT在系统中可以存在多个,并且不是全局可见的,它们只对引用它们的任务可见。每个任务最多可以拥有一个LDT。另外,每一个LDT自身作为一个段存在,它们的段描述符被放在GDT中。

前面所讨论的装入段寄存器中作为GDT/LDT索引的就是Segment Selector(选择子),当需要引用一个内存地址时,使用的仍然是Segment:Offset模式,具体操作是:在相应的段寄存器装入Segment Selector,按照这个Segment Selector可以到GDT或LDT中找到相应的Segment Descriptor,这个Segment Descriptor中记录了此段的Base Address,然后加上Offset,就得到了最后的内存地址。

从实模式到保护模式

●情景描述

完成一个程序,从实模式到保护模式的转变

●编译方法

nasm pmtest1.asm -o https://www.sodocs.net/doc/f5275294.html,

●pmtest1.asm程序源码

%include "pm.inc" ; 常量, 宏, 以及一些说明

org 0100h ; 告诉编译器程序加载到0100处(段值)

jmp LABEL_BEGIN ; 跳到LABEL_BEGIN处

[SECTION .gdt]

; GDT

LABEL_GDT: Descriptor 0, 0, 0 ; 空描述符(全部为零)LABEL_DESC_CODE32: Descriptor 0, SegCode32Len-1, DA_C+DA_32

; 非一致代码段, 32(定义界限和属性)

; LABEL_DESC_CODE32 98H (10011000B) 内存中,DPL为0,代码段,只执行; LABEL_DESC_CODE32 4000H (0100B) 32位

LABEL_DESC_VIDEO: Descriptor 0B8000h, 0ffffh, DA_DRW

; 显存首地址(定义基址,界限和属性)

; LABEL_DESC_VIDEO 92h 存在的可读写数据段属性值,指向显存

; GDT 结束

GdtLen equ $-LABEL_GDT ; GDT长度

GdtPtr dw GdtLen-1 ; GDT界限

dd 0 ; GDT基地址

; GDT 选择子

SelectorCode32 equ LABEL_DESC_CODE32-LABEL_GDT SelectorVideo equ LABEL_DESC_VIDEO-LABEL_GDT

; GDT 选择子结束

; END of [SECTION .gdt]

[SECTION .s16]

[BITS 16]

LABEL_BEGIN:

mov ax, cs ; 段值-〉AX

mov ds, ax ; DS指向与CS相同的段值

mov es, ax ; ES指向与CS相同的段值

mov ss, ax ; SS指向与CS相同的段值

mov sp, 0100h

; 初始化32 位代码段描述符

xor eax, eax ; 清空EAX

mov ax, cs ; 段值

shl eax, 4 ; 段值左移4位

add eax, LABEL_SEG_CODE32 ; 段值+偏移地址-〉基址mov word [LABEL_DESC_CODE32 + 2], ax ; 基址1

shr eax, 16

mov byte [LABEL_DESC_CODE32 + 4], al ; 基址2

mov byte [LABEL_DESC_CODE32 + 7], ah ; 基址3

; 为加载GDTR 作准备

xor eax, eax ; 清空EAX

mov ax, ds

shl eax, 4

add eax, LABEL_GDT ; eax <- gdt 基地址

mov dword [GdtPtr + 2], eax ; [GdtPtr + 2] <- gdt 基地址

; 加载GDTR

lgdt [GdtPtr] ; GdtPtr -> lgdt

; 关中断

cli

; 打开地址线A20

in al, 92h

or al, 00000010b

out 92h, al

; 准备切换到保护模式,CRO第0位置置1

mov eax, cr0

or eax, 1

mov cr0, eax

; 真正进入保护模式

jmp dword SelectorCode32:0

; 执行这一句会把SelectorCode32 装入cs, 并跳转到Code32Selector:0 处

; LABEL_DESC_CODE32已经准备好,其中的基址就是LABEL_SEG_CODE32地址处; END of [SECTION .s16]

[SECTION .s32]; 32 位代码段. 由实模式跳入.

[BITS 32]

LABEL_SEG_CODE32:

mov ax, SelectorVideo

mov gs, ax ; 视频段选择子(目的) -> GS (段值)

mov edi, (80 * 10 + 0) * 2 ; 屏幕第10 行, 第0 列。

mov ah, 0Ch ; 0000: 黑底1100: 红字

mov al, 'P'

mov [gs:edi], ax

; 到此停止

jmp $

SegCode32Len equ $-LABEL_SEG_CODE32

; END of [SECTION .s32]

pm.inc工具程序

; GDT参数——描述符类型值说明

; 其中:

; DA_ : Descriptor Attribute / ; D : 数据段/ ; C : 代码段/ ; S : 系统段; R : 只读/ ; RW : 读写/ ; A : 已访问

DA_32 equ 4000h ; 32 位段

DA_DPL0 equ 00h; DPL = 0

DA_DPL1 equ 20h ; DPL = 1

DA_DPL2 equ 40h; DPL = 2

DA_DPL3 equ 60h ; DPL = 3

; 存储段描述符类型值说明

DA_DR equ 90h ; 存在的只读数据段类型值

DA_DRW equ 92h ; 存在的可读写数据段属性值

DA_DRW A equ 93h ; 存在的已访问可读写数据段类型值

DA_C equ 98h ; 存在的只执行代码段属性值

DA_CR equ 9Ah ; 存在的可执行可读代码段属性值

DA_CCO equ 9Ch ; 存在的只执行一致代码段属性值

DA_CCOR equ 9Eh; 存在的可执行可读一致代码段属性值

; 系统段描述符类型值说明

DA_LDT equ 82h ; 局部描述符表段类型值

DA_TaskGate equ 85h ; 任务门类型值

DA_386TSS equ 89h ; 可用386 任务状态段类型值

DA_386CGate equ 8Ch ; 386 调用门类型值

DA_386IGate equ 8Eh ; 386 中断门类型值

DA_386TGate equ 8Fh; 386 陷阱门类型值

; RPL(Requested Privilege Level): 请求特权级,用于特权检查。

; TI(Table Indicator): 引用描述符表指示位

; TI=0 指示从全局描述符表GDT中读取描述符;

; TI=1 指示从局部描述符表LDT中读取描述符。

; 选择子类型值说明

; 其中: SA_ : Selector Attribute

SA_RPL0 equ 0 ; ┓

SA_RPL1 equ 1 ; ┣RPL

SA_RPL2 equ 2 ;┃

SA_RPL3 equ 3 ;┛

SA_TIG equ 0 ;┓TI

SA_TIL equ 4 ; ┛

;定义描述符(64位)

; usage: Descriptor Base, Limit, Attr

; Base: dd (32位)

; Limit: dd(低20位可用)

; Attr: dw (高字节的低4位为0)

%macro Descriptor 3

dw %2 & 0ffffh ; 段界限1 (2 字节)

dw %1 & 0ffffh ; 段基址1 (2 字节)

db (%1 >> 16) & 0ffh ; 段基址2 (1 字节)

dw (%2 >> 8) & 0f00h | (%3 & 0f0ffh) ; 属性1 + 段界限2 + 属性2 (2 字节) db (%1 >> 24) & 0ffh ; 段基址3 (1 字节)

%endmacro ; 共8 字节

;定义门

; usage: Gate Selector, Offset, DCount, Attr

; Selector: dw

; Offset: dd

; DCount: db

; Attr: db

%macro Gate 4

dw (%2 & 0FFFFh) ; 偏移1 (2 字节)

dw %1 ; 选择子(2 字节)

dw (%3 & 1Fh)|((%4<<8)&0FF00h) ; 属性(2 字节) dw ((%2>>16)&0FFFFh) ; 偏移2 (2 字节)

%endmacro ; ; 共8 字节

关于c11_mbr.asm的进阶说明

一. 显示结果:第十行第0列打印一个红色的P,如图12-2所示。

二. GDT进阶说明

GDT是Protected Mode所必须的数据结构,那么在进入Protected Mode之前,必须设定好GDT,并通过LGDT将其装入相应的寄存器。尽管GDT允许被放在内存的任何位置,但由于GDT中的元素——描述符——都是64-bit长,也就是说都是8个字节,所以为了让CPU 对GDT的访问速度达到最快,应该将GDT的入口地址放在以8个字节对齐,也就是说是8的倍数的地址位置。

GDT中第一个描述符必须是一个空描述符,也就是它的内容应该全部为0。如果引用这个描述符进行内存访问,则产生General Protection异常。

如果一个OS不使用虚拟内存,段模式会是一个不错的选择。但现代OS没有不使用虚拟内存的,而实现虚拟内存的比较方便和有效的内存管理方式是页式管理。在IA-32上如果我们想使用页式管理,我们只能使用段页式——没有方法可以完全禁止段模式。但我们可以尽力让段的效果降低的最小。

IA-32提供了一种被称作“Basic Flat Model”的分段模式可以达到这种效果。这种模式要求在GDT中至少要定义两个段描述符,一个用来引用Data Segment,另一个用来引用Code Segment。这2个Segment都包含整个线性空间,即Segment Limit = 4 GB,即使实际的物理内存远没有那么多,但这个空间定义是为了将来由页式管理来实现虚拟内存。

我们只是处于Booting阶段,所以我们只需要初步设置一下GDT,等真正进入Protected Mode,启动了OS Kernel之后,具体OS打算如何设置GDT,使用何种内存管理模式,由Kernel自身来设置,Booting只需要给Kernel的数据段和代码段设置全部线性空间就可以了。

三. 定义GDT

●在程序中,GDT定义了三个描述符

第一个描述符为空描述符

第二个描述符为32位代码段描述符

第三个描述符为显示段描述符

●之后定义GdtPtr变量:16位的Gdt长度(已定义)和32位的Gdt基址(未定义)

四. 定义选择子(selector)

●之后定义了两个选择子

第一个选择子为32位代码段选择子

第二个选择子为显示段选择子

选择子

五. 16位的程序段

●寄存器准备

●初始化32位代码段描述符

1.段值x 16 + 32位代码段偏移位置-> 32位代码段基址(eax)

至此,32位代码段描述符全部完成

●初始化GdtPtr并加载gdtr寄存器

1.段值x 16 + GDT基址-> GDT基址(eax)

●关中断

●打开地址线A20

PE为0时,CPU运行于实模式;PE为1时,CPU运行于保护模式。

●跳转到保护模式:jmp dword SelectorCode32:0

六. 32位的代码段

●视频段选择子–> gs

●屏幕位置-> edi

●ah:黑底红字/ al:打印字符

●无限循环

●获取32位代码段长度

关于一致的说明

一致:当转移的目标是一个特权级更高的一致代码段,当前的特权级会被延续下去,而向特权级更高的非一致代码段的转移会引起常规保护错误(general-protection exception,#GP),除非使用调用门或者任务门。

如果特权级高的代码段访问特权级的代码段,则无论是否一致代码段,都不能转移进去,否则会导致常规保护错误。

所有的数据段都是非一致的,因此特权级低的代码不会访问到高特权级的数据。不过低

特权级的数据可以被高特权级的代码访问。

计量经济学复习笔记要点(达莫达尔版)

1、什么是计量经济学? 计量经济学(Econometrics) 意为“经济测量”,它是利用经济理论、数学、统计推断等工具,对经济现象进行分析的一门社会科学。 区别与联系经济理论 计量经济学vs {数理经济学 统计学 2、计量经济学的传统方法论 Step1 理论或假说的陈述经典步骤 →分析经济问题的八个经典步骤 Step5 计量模型的参数估计 Step6 检验模型设定是否正确 Step7 假设检验(检验来自模型的假说) Step8 预测或控制 ◆关于数据 1、数据分类 (1)时间序列数据(Time Series Data): 对一个变量在不同时间取值的一组观测结果。如每年、每月、每季度等 (2)横截面数据(Cross Section Data): 对一个变量在同一个时间点上搜集的数据。如同一年的分国别、分省、分厂家数据 (3)混合数据(Pooled Data): 时序和横截面的混合数据,既有分时,每一时点的观察对象又有不同(多个横截面单元) 广泛运用的一类特殊的混合数据——面板数据/综列数据/合成数据(Panel Data): 在时间轴上对相同的横截面单元跟踪调查得到的数据。如每年对各省GDP的报告。 2、研究结果永远不可能比数据的质量更好 观测误差、近似进位计量、高度加总、选择性偏误 3、数据来源: 网站、统计年鉴、商业数据库等 (1)统计局、央行、证券交易所、世行、IMF等官方网站 (2)图书馆(纸质、电子版年鉴) (3)商业数据库 ◆两个例子 例1:凯恩斯消费理论 ①人们倾向于随他们收入的增加而增加消费,但消费的增加不如收入的增加那么多。 ②C=a+bI →确定性关系 ③Y=β1+β2X+μ→μ为扰动项,非确定性关系 ④搜集80~91年美国消费及收入数据 ⑤估计参数: 解释:平均而言,收入↑1美元,消费↑72美分 ⑥检验模型设定的正确性:是否应当加入别的可能影响消费额的变量,如就业等。

计量经济学读书笔记

计量经济学读书笔记 第一章:统计基础 (2) 第二章:计量经济学总论 (7) 第三章:双变量回归分析 (9) 第3.1回归方法 (9) 第3.2结果检验 (10) 第3.3回归参数的分布 (11) 第四章:多变量回归分析 (13) 第五章:OLS的基本假设 (14) 第六章:多重共线性 (16) 第七章:异方差性 (17) 第八章:自相关 (18) 第九章:时间序列分析 (20) 第十章:面板数据分析 (30) 第十一章:其他重要的分析方法 (49) ******加权最小二乘法 (50) ******二阶段最小二乘法TSLS (51) ******非线性最小二乘法 (51) ******多项分布滞后(PDLS) (51) ******广义矩估计 (52) ******logit和probit模型 (52) ******因子分析 (54) ******Granger因果分析 (55) ****** 广义线性回归(Generalized least squares) (55) ******格兰格因果检验 (57) ******误差修正模型(ECM) (57) 第十二章:EVIEWS (58) 第12.1节EVIEWS基本操作 (58) 第12.3节EVIEWS时间序列分析 (60) 第十三章:SPSS (61) 第13.1SPSS基本操作 (61) 第十四章:数据分析实战经验 (70)

第一章:统计基础 0 常用英文词汇的统计意义 panel data=longitudinal data 是对各个个体进行连续观察的截面数据。回归时的扰动项u=unobserved是影响因变量的其他变量之和,Univariate 单个变量的,如Univariate descriptives 意思是单个变量的统计指标 1 基本概念 统计总体是我们所关心的一些个体组成,如由多个企业构成的集合,统计意义上的总体通常不是一群人或一些物品的集合,而是一组对个体某种特征的观测数据。 参数总体的数值特征描述,如均值、标准差等。 统计量是用样本数据计算出来总体参数的估计值,从一个给定的总体中抽取容量为N的所有可能的样本,对于每一个样本我们可计算出某个统计量的值,不同的样本得到的该统计量的值是不一样的,该统计量的不同的值是不同抽样的结果(根据这些不同抽样计算出的对同一参数进行估计的统计量,可以计算出由各个统计量构成的集体的方差,该方差就是在统计软件中参数后面扩号内的方差),这符合随机变量的定义,因此该统计量也是随机变量,这个统计量的分布称之为抽样分布,它是从同一总体所抽出,同样大小的所有可能样本,其统计量的值的分布,一般情况下是一个正态分布,因为所有的估计值都是对总体参数的近似估计,因而服从以真实值为中心的正态分布,如果总体的分布是已知的则可以根据公式计算统计量 抽样分布的分布参数(均值为总体的均值,标准差为总体的标准差与N的比值)。 4在一个样本之中 包含若干个样本点,各个样本点所对应的个体的某种特征是一个变量,不同个体的该变量的取值相互独立,并且服从某种分布,因此根据样本计算的统计量可以看成是若干个独立变量的函数形式,其分布参数如均值、标准差可用数学公式推导。 时间序列是指同一现象在不同时间的相继观察值排列而成的序列,平稳序列,它的各种统计指标不随着时间而变化,在时间序列的散点图中表现为各点分布在一个以均值为中心的条状带中,同一时间序列的因素分析是指区分时间序列中各种不同因素的影响,确定长期趋势(找一条长期的趋势线)、季节变动(确定季节比率)、循环变动和不规则变动。时间序列分析时一项重要的内容就是根据过去已有的数据来预测未来的结果,利用时间序列数据进行预测时,通常假定过去的变化趋势会延续到未来,这样就可以根据过去已有的形态或模式进行预测。 统计决策是指根据样本的信息对总体的情况做出判断。 点估计是根据样本用与计算总体参数相同的法则(如求平均数)+估计总体参数的具体值,因而叫点估计如用样本的平均身高作为总体的平均身高。 区间估计就是点估计值 边际误差,边际误差是根据显著性水平及统计量的标准差,如大样本时在0.05的水平下边际误差为1.96*标准差。95%置信区间是用样本数据计算出来的对总体参数一个区间估计,保证根据所有样本计算的置信区间中,有95%会把真正的总体参数包含在区间之中,根据不同样本数据对同一总体参数进行估计的相同概率的置信区间不同,根据一个样本计算的对参数进行估计的置信区间是对总体参数的一个区间估计,是总体参数的若干置信区间中的一个,如果继续不断的抽样下去。每个样本会产生一个新的对总体参数的置信区间,如果我们如此不停的抽样下去,所有区间中有95%会包含真正的参数值。区间的概念提醒我们,因为我们只有样本数据,所以我们对于总体的所有叙述都不是确定的。 变量是说明个体的某种特征的概念,如“受教育程度”、“身高”等,说明事物类别的名称叫做分类变量(categorical variable),如性别就有两个分类变量男、女;说明事物有序类别的一个名称,称为顺序变量(rank variable),如一等品、二等品、小学、初中、大学等;说明事物数字特征并且有米、或者公

第4章指令系统层习题参考解答-汇编语言与计算机组成原理 答案

1.什么是“程序可见”的寄存器? 程序可见寄存器是指在用户程序中用到的寄存器,它们由指令来指定。 2. 80x86微处理器的基本结构寄存器组包括那些寄存器?各有何用途? 基本结构寄存器组按用途分为通用寄存器、专用寄存器和段寄存器3类。 通用寄存器存放操作数或用作地址指针;专用寄存器有EIP和EFLAGS,分别存放将要执行的下一条指令的偏移地址和条件码标志、控制标志和系统标志;段寄存器存放段基址或段选择子。 3.80x86微处理器标志寄存器中各标志位有什么意义? 常用的7位: CF进位标志: 在进行算术运算时,如最高位(对字操作是第15位,对字节操作是第7位)产生进位或借位时,则CF置1;否则置0。在移位类指令中,CF用来存放移出的代码(0或1)。 PF奇偶标志: 为机器中传送信息时可能产生的代码出错情况提供检验条件。 当操作结果的最低位字节中1的个数为偶数时置1,否则置0。 AF辅助进位标志: 在进行算术运算时,如低字节中低4位(第3位向第4位)产生进位或借位时,则AF置1;否则AF置0。 ZF零标志:如指令执行结果各位全为0时,则ZF置1;否则ZF置0。 SF符号标志:其值等于运算结果的最高位。 如果把指令执行结果看作带符号数,就是结果为负,SF置1;结果为正,SF置0。 OF溢出标志: 将参加算术运算的数看作带符号数,如运算结果超出补码表示数的范围N,即溢出时,则OF置1;否则OF置0。 DF方向标志: 用于串处理指令中控制处理信息的方向。 当DF位为1时,每次操作后使变址寄存器SI和DI减小;当DF位为0时,则使SI和DI增大,使串处理从低地址向高地址方向处理。 4.画出示意图,简述实模式下存储器寻址的过程。 20位物理地址如下计算(CPU中自动完成):10H×段基址+偏移地址=物理地址 5. 画出示意图,简述保护模式下(无分页机制)存储器寻址的过程。 采用对用户程序透明的机制由选择子从描述子表中选择相应的描述子,得到欲访问段的段基址、段限等有关信息,再根据偏移地址访问目标存储单元。

(完整word版)计量经济学复习笔记

计量经济学复习笔记 CH1导论 1、计量经济学: 以经济理论和经济数据的事实为依据,运用数学、统计学的方法,通过建立数学模型来研究经济数量关系和规律的一门经济学科。研究主体是经济现象及其发展变化的规律。 2、运用计量分析研究步骤: 模型设定——确定变量和数学关系式 估计参数——分析变量间具体的数量关系 模型检验——检验所得结论的可靠性 模型应用——做经济分析和经济预测 3、模型 变量:解释变量:表示被解释变量变动原因的变量,也称自变量,回归元。 被解释变量:表示分析研究的对象,变动结果的变量,也成应变量。 内生变量:其数值由模型所决定的变量,是模型求解的结果。 外生变量:其数值由模型意外决定的变量。 外生变量数值的变化能够影响内生变量的变化,而内生变量却不能反过来影响外生变量。 前定内生变量:过去时期的、滞后的或更大范围的内生变量,不受本模型研究范围的内生变量的影响,但能够影响我们所研究的本期的内生变量。 前定变量:前定内生变量和外生变量的总称。 数据:时间序列数据:按照时间先后排列的统计数据。 截面数据:发生在同一时间截面上的调查数据。 面板数据: 虚拟变量数据:表征政策,条件等,一般取0或1. 4、估计 评价统计性质的标准 无偏:E(^β)=β 随机变量,变量的函数? 有效:最小方差性 一致:N趋近无穷时,β估计越来越接近真实值 5、检验 经济意义检验:所估计的模型与经济理论是否相等 统计推断检验:检验参数估计值是否抽样的偶然结果,是否显著 计量经济检验:是否符合计量经济方法的基本假定 预测检验:将模型预测的结果与经济运行的实际对比 CH2 CH3 线性回归模型 模型(假设)——估计参数——检验——拟合优度——预测 1、模型(线性) (1)关于参数的线性模型就变量而言是线性的;模型就参数而言是线性的。 Y i=β1+β2lnX i+u i 线性影响随机影响 Y i=E(Y i|X i)+u i E(Y i|X i)=f(X i)=β1+β2lnX i 引入随机扰动项, (3)古典假设 A零均值假定 E(u i|X i)=0 B同方差假定 Var(u i|X i)=E(u i2)=σ2 C无自相关假定 Cov(u i,u j)=0

计量经济学读书笔记.doc

学习好资料欢迎下载 计量经济学读书笔记 第一部分基础内容 一、计量经济学与相关学科的关系 经济统计学经济学数理经济学 计量经 济学 统计学数学 数理统计学 二、古典假设下计量经济学的建模过程 1.依据经济理论建立模型 2.抽样数据收集 3.参数估计 4.模型检验 (1)经济意义检验(包括参数符号、参数大小等) (2)统计意义检验(拟合优度检验、模型显著性检验、参数显 著性检验) (3)计量经济学检验(异方差检验、自相关检验、多重共线性 检验) (4)模型预测性检验(超样本特性检验) 5.模型的应用(结构分析、经济预测、政策评价、检验和发展经济理论)

三、几个重要的“变量” 1.解释变量与被解释变量 2.内生变量与外生变量 3.滞后变量与前定变量 4.控制变量 四、回归中的四个重要概念 1. 总体回归模型( Population Regression Model ,PRM) y t b b 1 x t u t--代表了总体变量间的真实关系。 2. 总体回归函数( Population Regression Function ,PRF )E( y t ) b0 b1 x t--代表了总体变量间的依存规律。 3. 样本回归函数( Sample Regression Function ,SRF ) y t ? ? e t--代表了样本显示的变量关系。b0 b1x t 4. 样本回归模型( Sample Regression Model ,SRM ) ? ? ? b0 b1 x t---代表了样本显示的变量依存规律。 y t 总体回归模型与样本回归模型的主要区别是:①描述的对象不同。总体回归模型描述总体中变量y 与 x 的相互关系,而样本回归模型描述所关的样本中变量y 与 x 的相互关系。②建立模型的依据不同。总体回归模型是依据总体全部观测资料建立的,样本回归 模型是依据样本观测资料建立的。③模型性质不同。总体回归模 型不是随机模型,而样本回归模型是一个随机模型,它随样本的 改变而改变。

计量经济学第12章笔记

第12章自相关:误差项相关会怎么样? 1、自相关的性质 (自相关与序列相关的区别,延特纳把一给定序列同它滞后若干期的序列的滞后相关称为自相关,而把不同时间序列之间的相关称为序列相关,本书中两个定义视为相同) 注意:自相关不仅限于当期与过去误差项之间的关系,还包括当期与过去误差方差之间的关系 自相关的原因: 1. 惯性:GDP、价格指数、生产、就业等时间序列数据呈现出一定的 周期性 2. 设定偏误:应含而未含的情形 3. 设定偏误:不准确的函数形式 4. 蛛网现象:供给对价格的反映要滞后一期 5. 滞后效应:(自回归模型) 6. 数据的操作:数据变换(一阶差分形式) 7. 非平稳性 2、自相关的后果 在,假定(马尔科夫一阶自回归AR(1)) ,,, 注意:具有以上性质的误差项称为白噪音误差项 ,,,斜率系数的OLS估计量的方差为,在AR(1)模式下 自相关出现时的BLUE(最优线性无偏估计) , 出现自相关时使用OLS的后果 1、考虑到自相关的OLS估计量 尽管OLS估计量是线性无偏的,但为了构造置信区间并检验假设,要用GLS而不是OLS 2、忽略自相关的OLS估计 (1)残差方差很可能低估了真实的,结果高估了 (2)即使没有低估,也可能低估了(一阶)自相关情形下的方差,虽然较低效,因此通常的t或F检验都不再可靠 3、自相关的侦查 1、图解法(标准化残差对时间的散点图,即期残差与滞后残差的散点图) 2、游程检验

游程个数渐进服从正态分布,, ,其中为残差为正的总个数 3、德宾-沃森d检验 注意:(1)回归中含有截距项(2)解释变量X是非随机的(3)干扰项是按一阶自回归模式生成(4)服从正态分布(5)不适合自回归模型(6)没有缺失数据 d的值介于0到4之间, 1、,若,则在水平上拒绝,即存在统计显著上的正相关 2、,若,则在水平上拒绝,即存在统计显著上的负相关 3、,若或,则在水平上拒绝,即存在统计显著上的正或负相关 当样本容量很大时, 4、布罗施-戈弗雷检验(BG检验) 允许非随机回归元,如回归子的滞后值;高阶自回归模式 令在,假定 该检验过程如下: (1)使用OLS估计模型,得到残差记为。 (2)进行辅助回归,并计算辅助回归模型的可决系数 (3)在大样本下,渐进地有: 缺陷:(1)滞后长度不能事先确定,需借助赤池和施瓦茨信息准则来筛选长度(2)假定了同方差 4、自相关的补救 若是模型误设,则改进模型假定,若是纯粹自相关,则选用广义最小二乘法,GLS的基本思想:将存在自相的误差项转化为一个满足经典假定的误差项,然后对转化后的模型进行OLS回归。 在,假定 (1) 已知,则模型转换为,普莱斯-温斯顿变换,将变换为 (2) 未知: 1、曼德拉提出一个粗略的检验法则,只要,则能用一阶差分形式,若一阶差分方程中含有截距项,则可检验原模型中是否出现趋势变量,一阶差分即消除了一阶自相关,又使时间序列变得平稳,可谓一箭双雕,严格地讲只有时才可运用一阶差分形式,贝伦布鲁特-韦布检验可检验,检验统计量 2、 3、从残差中估计出, 4、科克伦—奥克特迭代估计

实模式和保护模式的区别

实模式和保护模式的区别 实模式和保护模式的区别 2009-08-31 20:19 551人阅读评论(1) 收藏举报 从80386开始,cpu有三种工作方式:实模式,保护模式和虚拟8086模式。只有在刚刚启动的时候是real-mode,等到linux操作系统运行起来以后就运行在保护模式(所以存在一个启动时的模式转换问题)。 实模式只能访问地址在1M以下的内存称为常规内存,我们把地址在1M 以上的内存称为扩展内存。 在保护模式下,全部32条地址线有效,可寻址高达4G字节的物理地址空间; 扩充的存储器分段管理机制和可选的存储器分页管理机制,不仅为存储器共享和保护提供了硬件支持,而且为实现虚拟存储器提供了硬件支持; 支持多任务,能够快速地进行任务切换和保护任务环境; 4个特权级和完善的特权检查机制,既能实现资源共享又能保证代码和数据的安全和保密及任务的隔离; 支持虚拟8086方式,便于执行8086程序。 1.虚拟8086模式是运行在保护模式中的实模式,为了在32位保护模式下执行纯16位程序。它不是一个真正的CPU模式,还属于保护模式。 2.保护模式同实模式的根本区别是进程内存受保护与否。可寻址空间的区别只是这一原因的果。 实模式将整个物理内存看成分段的区域,程序代码和数据位于不同区域,系统程序和用户程序没有区别对待,而且每一个指针都是指向"实在"的物理地址。这样一来,用户程序的一个指针如果指向了系统程序区域或其他用户程序区域,并改变了值,那么对于这个被修改的系统程序或用户程序,其后果就很可能是灾难性的。为了克服这种低劣的内存管理方式,处理器厂商开发出保护模式。这样,物理内存地址不能直接被程序访问,程序内部的地址(虚拟地址)要由操作系统转化为物理地址去访问,程序对此一无所知。至此,进程(这时我们可以称程序为进程了)有了严格的边界,任何其他进程根本没有办法访问不属于自己的物理内存区域,甚至在自己的虚拟地址范围内也不是可以任意访问的,因为有一些虚拟区域已经被放进一些公共系统运行库。这些区域也不能随便修改,若修改就会有: SIGSEGV (linux 段错误);非法内存访问对话框(windows 对话框)。 CPU启动环境为16位实模式,之后可以切换到保护模式。但从保护模式无法切换回实模式

一分钟看完计量经济学

建模是计量的灵魂,所以就从建模开始。 建模步骤:A,理论模型的设计:a ,选择变量b ,确定变量关系c,拟定参数范围 B,样本数据的收集:a,数据的类型b,数据的质量 C,样本参数的估计:a,模型的识别b,估价方法选择 D,模型的检验 a , 经济意义的检验1 正相关 2反相关等等 b,统计检验:1 检验样本回归函数和样本的拟合优度, R 的平方即其修正检验 2 样本回归函数和总体回归函数的接近程度:单个解释变量显著性即t 检验,函数显著性即F 检验,接近程度的区间检验 c,模型预测检验1 解释变量条件条件均值与个值的预测 2 预测置信空间变化 d,参数的线性约束检验:1 参数线性约束的检验 2 模型增加或减少变量的检验 3参数的稳定性检验:邹氏参数稳定性检验,邹氏预测检验------------ 主要方法是以F 检验受约束前后模型的差异 e,参数的非线性约束检验:1 最大似然比检验 2沃尔德检验 3拉格朗日乘数检验------ 主要方法使用X 平方分布检验统计量分布特征 f , 计量经济学检验 1, 异方差性问题:特征:无偏,一致但标准差偏误。检测方法:图示法, Park 与Gleiser 检验法, Goldfeld-Quandt 检验法, White 检验法----- 用WLS 修正异方差 2, 序列相关性问题:特征:无偏,一致,但检验不可靠,预测无效。检测方法:图示法, 回归检验法, Durbin-Waston 检验法, Lagrange 乘子检验法------ 用GLS 或广义差分法修正序列相关性 3 ,多重共线性问题:特征:无偏,一致但标准差过大,t 减小,正负号混乱。检测方法:先检验多重共线性是否存在,再检验多重共线性的范围 ------------------- 用逐步回归法,差分法或

保护模式与实模式

什么是实模式、保护模式和虚拟8086方式 1:实模式:寻址采用和8086相同的16位段和偏移量,最大寻址空间1MB,最大分段64KB。可以使用32位指令。32位的x86 CPU用做高速的8086。 2:保护模式:寻址采用32位段和偏移量,最大寻址空间4GB,最大分段4GB (Pentium Pre及以后为64GB)。在保护模式下CPU可以进入虚拟8086方式,这是在保护模式下的实模式程序运行环境。 第一:实模式下程序的运行回顾. 程序运行的实质是什么?其实很简单,就是指令的执行,显然CPU 是指令得以执行的硬件保障,那么CPU如何知道指令在什么地方呢? 对了,80x86系列是使用CS寄存器配合IP寄存器来通知CPU指令在内存 中的位置. 程序指令在执行过程中一般还需要有各种数据,80x86系列有DS、 ES、FS、GS、SS等用于指示不同用途的数据段在内存中的位置。 程序可能需要调用系统的服务子程序,80x86系列使用中断机制 来实现系统服务。 总的来说,这些就是实模式下一个程序运行所需的主要内容 (其它如跳转、返回、端口操作等相对来说比较次要。) 第二:保护模式---从程序运行说起 无论实模式还是保护模式,根本的问题还是程序如何在其中运行。 因此我们在学习保护模式时应该时刻围绕这个问题来思考。 和实模式下一样,保护模式下程序运行的实质仍是“CPU执行指令, 操作相关数据”,因此实模式下的各种代码段、数据段、堆栈段、中 断服务程序仍然存在,且功能、作用不变。 那么保护模式下最大的变化是什么呢?答案可能因人而异,我的 答案是“地址转换方式”变化最大。 第三:地址转换方式比较 先看一下实模式下的地址转换方式,假设我们在ES中存入0x1000, DI中存入0xFFFF,那么ES:DI=0x1000*0x10+0xFFFF=0x1FFFF,这就是众 所周知的“左移4位加偏移”。 那么如果在保护模式下呢?假设上面的数据不变ES=0x1000, DI=0xFFFF,现在ES:DI等于什么呢? 公式如下:(注:0x1000=1000000000000b= 10 0000 0000 0 00) ES:DI=全局描述符表中第0x200项描述符给出的段基址+0xFFFF 现在比较一下,好象是不一样。再仔细看看,又好象没什么区别! 为什么说没什么区别,因为我的想法是,既然ES中的内容都不是 真正的段地址,凭什么实模式下称ES为“段寄存器”,而到了保护模式 就说是“选择子”? 其实它们都是一种映射,只是映射规则不同而已:在实模式下这

杨小凯

杨小凯(1948年10月6日-2004年7月7日),原名杨曦光,澳大利亚经济学家,华人。杨小凯原籍中国湖南省湘潭县,出生于吉林省,在湖南长沙长大。他最突出的贡献是提出新兴古典经济学与超边际分析方法和理论。他已出版的中英文专著包括:《专业化与经济组织》、《经济学:新兴古典与新古典框架》、《发展经济学:超边际与边际分析》,使他获得了世界级的成就和同行的推崇。他曾两次被提名诺贝尔经济学奖(2002年和2003年)2004年于澳洲墨尔本的家中去世,享年55岁。 主要成就:提出新兴古典经济学方法和理论提出超边际分析方法和理论 代表作品:《专业化与经济组织》;《经济学:新兴古典与新古典框架》等重要事件:被两次提名诺贝尔经济学奖 杨小凯,1988年获普林斯顿大学经济学博士学位,曾任哈佛大学国际发展中心(CID)研究员、澳洲莫纳什大学经济学讲座教授、澳洲社会科学院院士。 他的论文见于“美国经济评论”,“政治经济期刊”、“发展经济学期刊”、“经济学期刊”、“城市经济学期刊”等匿名审稿杂志。他和黄有光合著的《专业化和经济组织》一书被权威杂志书评称为“盖世杰作”。财务理论奇才布莱克称此书为“天才著作”。 他的《经济学:新兴古典与新古典框架》被匿名书评人称为“对经济学根基 进行重新梳理,为经济学教学提供了崭新的方法。”该书评人认为“杨正在建立起一个全新的领域。是的,我敢预见,人们对新兴古典经济学的兴趣将迅速兴起,我认为它很可能成为未来的潮流。” 诺贝尔奖得主布坎南认为杨的工作比卢卡斯(Lucas)、罗默(Romer)、克鲁格曼(Krugman)的要好得多。另一位诺贝尔奖得主阿罗称赞杨的研究使亚当·斯密的劳动分工论与科斯的交易费用理论浑为一体。 由于其在经济学上的巨大成就,杨小凯被誉为“离诺贝尔奖最近的华人”。 研究领域:

计量经济学笔记(总)

计量经济学 三、课程大致安排 1、内容框架 2、参考书目:

初、中级教程: 计量经济学 王维国 东北财经大学出版社 计量经济学/Basic Econometrics (印度)古扎拉蒂 中国人民大学 计量经济学 赵国庆 中国人民大学出版社 计量经济学 李子奈 潘文卿 高等教育出版社 高级教程: 计量经济模型与经济预测 平耿克 钱小军译 机械工业出版社 《经济计量分析》( Econometric Analysis ) 3、安装eview ,数据(演算一下)OLS 法(缺少数据) 4、安装pdf 第二部分 数学预备知识 概率论

第一章随机变量及其分布 一、随机变量的定义 设随机试验Ed样本空间为{} π=,如果对两个???,都有唯一 w 的实数() x w与之对应,并且对任意实数X,??是随机事件,则称事件,则称定义在π上的实单值函数() x w为随机变量。 通俗的说,在实验结果能取得不同数值的量,称为随机变量它的数值是随机试验结果而它由于试验的结果是随机的,所以它的值也是随机的。 二、分类(连续型和离散型)

例子:在一个箱子里放着t个数字球,-2,1,1,3,3,3,3从中取一个球,取到球上面的数字是随着试验结果不同而变化。 又如:考四、六级,考过记为1,不过记为0。 再如:抛硬币,正面记为1,反面记为0。 引入话题:举一些现实中的例子,如考试,在公交场等车 随机变量-事件-概率-频率-分布率-分布函数-连续随机变量 上面我们讲的是一种事件有很多种不同的结果,但在现实中这些出现的结果的可能性并不是相同的。 例子:考六级出现的结果不同,大多数分数集中在50-60和60-70之间,也就是说出现2和3的可能性更大。 =0(0-50),1(50-60),2(60-70),3(70-80),4(80-100) 问题:用什么衡量可能性呢?(概率) 我们用的概率都是古典概型,即用事件发生概率来表示概率。 频率的定义:一随机事件的n个结果互斥且两个结果等可能发生,并且事件A会有m个基本结果,则事件A发生的概率即是() p A,就是 () p A= m n =事件发生的总数/结果总数 两点需要注意:1、试验结果互斥;2、等可能性相当。

计量经济学读书笔记

计量经济学读书笔记 第一部分基础内容 一、计量经济学与相关学科的关系 二、古典假设下计量经济学的建模过程 1.依据经济理论建立模型 2.抽样数据收集 3.参数估计 4.模型检验 (1)经济意义检验(包括参数符号、参数大小等) (2)统计意义检验(拟合优度检验、模型显著性检验、参数显 著性检验) (3)计量经济学检验(异方差检验、自相关检验、多重共线性 检验) (4)模型预测性检验(超样本特性检验) 5.模型的应用(结构分析、经济预测、政策评价、检验和发展经济理论)

三、 几个重要的“变量” 1. 解释变量与被解释变量 2. 内生变量与外生变量 3. 滞后变量与前定变量 4. 控制变量 四、 回归中的四个重要概念 1. 总体回归模型(Population Regression Model ,PRM) t t t u x b b y ++=10--代表了总体变量间的真实关系。 2. 总体回归函数(Population Regression Function ,PRF ) t t x b b y E 10)(+=--代表了总体变量间的依存规律。 3. 样本回归函数(Sample Regression Function ,SRF ) t t t e x b b y ++=10??--代表了样本显示的变量关系。 4. 样本回归模型(Sample Regression Model ,SRM ) t t x b b y 10???+=---代表了样本显示的变量依存规律。 总体回归模型与样本回归模型的主要区别是:①描述的对象不同。总体回归模型描述总体中变量y 与x 的相互关系,而样本回归模型描述所关的样本中变量y 与x 的相互关系。②建立模型的依据不同。总体回归模型是依据总体全部观测资料建立的,样本回归模型是依据样本观测资料建立的。③模型性质不同。总体回归模型不是随机模型,而样本回归模型是一个随机模型,它随样本的改变而改变。 总体回归模型与样本回归模型的联系是:样本回归模型是总体回

第3章作业

第3章从8086到Pentium系列微处理器的技术发展 教材习题解答 1. 简述80286的特点和保护模式的保护功能。 【解】80286的特点: ①CPU内部分为四个处理部件:EU(执行部件)、AU(地址部件)、IU(指令部件)和BU(总线部件)。这四个处理部件可以并行的进行操作,提高了处理速度。 ②数据线和地址线完全分离。在一个总线周期中,当有效数据出现在数据总线上的时候,下一个总线周期的地址已经送到地址总线,形成总线周期的流水作业。 ③具有“实地址模式”(Real Address Mode,简称为“实模式”)和“保护虚地址模式”(Protected V irtual Address Mode,简称为“保护模式”)”两种工作模式。 ④能运行实时多任务操作系统,支持存储管理和保护功能。 ⑤实现了虚拟存储管理。 ⑥与80286 配合使用的数学协处理器是80287,它基本与8087相同,但适应80286 的两种工作模式。 保护模式体现了80286的特色,主要是对存储器管理、虚拟存储和对地址空间的保护。在保护模式下,可为每个任务提供多达1GB的虚拟存储空间和保护机制,有力地支持了多用户、多任务的操作。那些内存装不下的逻辑段,将以文件形式存在外存储器中,当处理器需要对它们进行存取操作时就会产生中断,通过中断服务程序把有关的程序或数据从外存储器调入到内存,从而满足程序运行的需要。 保护模式为不同程序设置了四个特权级别,可让不同程序在不同的特权级别上运行。依靠这一机制,可支持系统程序和用户程序的分离,并可进一步分离不同级别的系统程序,大大提高了系统运行的可靠性。 2. 简述80386 的特点、80386引脚与8086的区别。 【解】80386 的特点: 80386是全32位结构,它的外部数据总线和内部数据通道,包括寄存器、ALU和内部总线都是32位的。 80386 有3 种工作模式:实模式、虚拟86模式、386的保护模式。 80386的硬件结构可分成6个逻辑单元,它们以流水线方式工作,运行速度可达4MIPS。其硬件设计有支持段页式存储管理部件,易于实现虚拟存储系统。在保护模式下的分段寻址体系,与操作系统相配合可以组成虚拟存储器系统,一个任务的最大虚拟空间可达246=64 TB。 80386硬件支持多任务处理,用一条指令就可以实现任务切换。 80386设置了4级特权级,按优先顺序依次为0级、1级、2级、3级,前3级用于操作系统程序,后1级用于用户程序。 80386引脚与8086的区别见表3-1。 表3-1 80386引脚与8086的区别 8086CPU 80386CPU 共有40个引脚共有132个引脚 16条地址/数据复用线4条地址线34条地址线 32条数据线 在总线宽度控制信号16 BS的控制下,可实现16位或32位数据传送。字节控制信号0 BE~3 BE 协处理器接口信号 (1) PEREQ:协处理器向80386发出的请求信号,有效时表示协处理器请求与存储器之间传送数据。80386响应该请求后,将按照指令的要求控制对存储器的读写。 (2) BUSY:协处理器向80386发出的状态信号,有效时表示协处理器正在执行指令,处于忙状态,暂时不能接受新的指令。 (3)ERROR:协处理器向80386发出的状态信号,有效时表示协处理器出错。80386在检测到ERROR信号后,将转到错误处理子程序来处

计量经济学论文读后感

文献读后感——基于动态计量经济学模型的房地产 周期研究 丁毅1 (南京财经大学国民经济学MG11001049) 摘要:本文作者参见清华大学学报2007年第47卷第12期《基于动态计量经济学模型的房地产周期研究》一问,研究了动态计量经济学模型在现实的应用方法。参考文献对所涉及的内容包括自回归分布滞后的ARMAX模型,使用了ADF检验和多重协整JJ检验,求出了误差修正序列(ECM)。 关键词:动态经济学模型ECMARMAX模型JJ检验 0 文献内容 本文是研究张红教授等《基于动态计量经济学模型的房地产周期研究》一文后的读后笔记。原文是以北京市1989年至2004年的时间序列数据为基础,建立了用于分析和判别房地产周期的动态计量经济学模型。原文作者使用的动态计量经济学模型,是有别于传统计量经济学模型的理论先导方法。张红教授认为如果后者先验理论的不准确,将导致传统计量经济学模型参数的错误。这与《中级计量经济学》中所认为的伪拟合问题含义相同。原文采用了误差修正模型和协整理论基础上的动态经济学模型,建立了北京房地产市场模型。经过系列分析后,得出结论:2006年北京房地产市场继续稳步上升。这与事实现今基本相同,因此本文作者认为该模型拟合过程正确。同时,张红教授指出,模型后期修正可以构建房地产周期识别指标和复杂性指标体系,时期合理体现市场的真实情况,而且可以考虑应用广义脉冲函数等分析某单独因素对房地产市场的周期的冲击性影响。[1] 1 原文解读 1.1选择动态经济学模型原因 中国房地产各种非理性因素对房地产有着深刻的影响能力,同时房地产行业的统计数据质量和时间序列长度无法满足分析需要,因此传统计量经济学模型效果差,应当考虑动态计量经济学模型。使用一个代表数据生成过程的自回归分布整合模型,然后推出包含变量间长期稳定关系的简单模型。这种模型使用了经济理论和统计数据,充分利用数据所包含的全部信息,适合于房地产市场周期分析。1.2建模思路 1.确定房地产周期变量相关的时间序列,建 立指标体系; 2.建立ARMAX模型; 3.确定模型参数,及ARMAX的滞后阶数; 4.对参数进行检验,ADF和多重协整JJ检验; 5.求出ECM,以此表明周期实际表征数据; 6.建立包含修正项的ARMAX模型; 7.模型的预测和分析; 1.3ARMAX模型 Eq1表示ARMAX模型。其中,RD表示销售率,INVT表示年度完成投资额,PRIE表示年度商品房平均销售价格,EARN表示家庭年均可支配收入;因为原文中,指标体系是通过经验判断和行业规范建立的,因此本文作者在此不进行叙述。 1.4JJ检验[2] Johansen和Juselius的似然比检验方法,简称JJ检验,主要用来分析诸多变量组成的V AR系统,借助典型相关理论在V AR模型基础上使用似然比检验进行协整检验的同时确定协整关系。其中,要注意的问题有 1.根据时间序列的数据生成过程正确选择确定成 分,正确处理好截距项和趋势项; 2.在实证分析阶段的结果上选择临界值; 3.协整关系非唯一性问题,当检验结果出现多个

Gate A20与保护模式

Gate A20与保护模式 大家都知道,8088/8086只有20位地址线,按理它的寻址空间是2^20,应该是1024KB,但PC机的寻址结构是segment:offset,segment和offset都是16 位的寄存器,最大值是0ffffh,换算成物理地址的计算方法是把segment左移4位,再加上offset,所以segment:offset所能表达的寻址空间最大应为0ffff0h + 0ffffh = 10ffefh(前面的0ffffh是segment=0ffffh并向左移动4位的结果,后面的0ffffh是可能的最大offset),这个计算出的10ffefh是多大呢?大约是1088KB,就是说,segment:offset的地址表达能力,超过了20位地址线的物理寻址能力,你说这是不是有点麻烦。在早先,由于所有的机器都没有那么大的内存,加上地址线只有20位,所以当你用segment:offset的方式企图寻址100000h这个地址时,由于没有实际的第21位地址线,你实际寻址的内存是00000h的位置,如果你企图寻址100001h这个地址时,你实际得到的内容是地址00001h上的内容,所以这个事对实际使用几乎没有任何影响,但是后来就不行了,出现了80286,地址线达到了24位,使segment:offset寻址100000h--10ffefh这将近64K的存储器成为可能,为了保持向下兼容,于是出现了A20 Gate,这是后话,我们后面再细说。 我们可能经常听到一些只有在PC机上才有的一些关于存储器的专有名词,包括:常规内存(Conventional Memory)、上位内存区(Upper Memory Area)、高端内存区(High Memory Area)和扩展内存(Extended Memory),我尽量把这几个东东说明白,这需要下面这张著名的图。 这张图很清楚地说明了问题,大家都知道,DOS下的“常规内存”只有640K,这640K就是从0--A0000H这段地址空间;所谓“上位内存区”,指的就是20位地址线所能寻址到的1M地址空间的上面384K空间,就是从A0001H--100000H 这段地址空间,也就是我们说的用于ROM和系统设备的地址区域,这384K空间和常规内存的640K空间加起来就是20位地址线所能寻址的完整空间 1024KB;由于80286和80386的出现使PC机的地址线从20位变成24位又变成32位,寻址能力极大地增加,1M以上的内存寻址空间,我们统称为“扩展内存”;这里面绝大部分内存区域只能在保护模式下才能寻址到,但有一部分既可以在保护模式下,也可以在实模式下寻址,这就是我们前面提到过的地址100000h--10ffefh之间的这块内存,为了表明其特殊性,我们把这块有趣的内存区叫做“高端内存”。 前面我们提过由于IBM的愚蠢设计给PC机的内存结构埋下了麻烦的伏笔,现在我们来说说这个麻烦。我们都见过PC机上的内存条,但是由于上位内存区

计量经济学笔记

建模是计量的灵魂,所以就从建模开始。 一、 建模步骤:A,理论模型的设计: a,选择变量b,确定变量关系c,拟定参数范围 B,样本数据的收集: a,数据的类型b,数据的质量 C,样本参数的估计: a,模型的识别b,估价方法选择 D,模型的检验 a,经济意义的检验1正相关 2反相关等等 b,统计检验:1检验样本回归函数和样本的拟合优度,R的平方即其修正检验 2样本回归函数和总体回归函数的接近程度:单个解释变量显著性即t检验,函数显著性即F检验,接近程度的区间检验 c,模型预测检验1解释变量条件条件均值与个值的预测 2预测置信空间变化 d,参数的线性约束检验:1参数线性约束的检验 2模型增加或减少变量的检验 3参数的稳定性检验:邹氏参数稳定性检验,邹氏预测检验----------主要方法是以F检验受约束前后模型的差异 e,参数的非线性约束检验:1最大似然比检验 2沃尔德检验 3拉格朗日乘数检验---------主要方法使用 X平方分布检验统计量分布特征 f,计量经济学检验 1,异方差性问题:特征:无偏,一致但标准差偏误。检测方法:图示法,Park与Gleiser 检验法,Goldfeld-Quandt检验法,White检验法-------用WLS修正异方差 2,序列相关性问题:特征:无偏,一致,但检验不可靠,预测无效。检测方法:图示法,回归检验法,Durbin-Waston检验法,Lagrange乘子检验法-------用GLS或广义差分法修正序列相关性 3,多重共线性问题:特征:无偏,一致但标准差过大,t减小,正负号混乱。检测方法:先检验多重共线性是否存在,再检验多重共线性的范围-------------用逐步回归法,差分法或使用额外信息,增大样本容量可以修正。 4,随机解释变量问题:随机解释变量与随机干扰项独立----------对OLS没有坏影响。随机变量与随机干扰项同期相关:有偏但一致-----扩大样本容量可以克服。随机变量与随机干扰项同期相关:有偏且非一致--------工具变量法可以克服 二、 参数估计量性质的分析:a小样本和大样本性质 b无偏性

数据分析读后感

数据分析是一种信息提取过程。数据的搜索,聚集,整理是数据分析的前提,只有通过分析的数据才有使用的价值和意义。数据分析是指用适当的统计方法对收集来的大量第一手资料和第二手资料进行分析,以求最大化地开发数据资料的功能,发挥数据的作用。是为了提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。 在统计学中,数据分析可划分为描述性统计分析、探索性数据分析以及验证性数据分析。所谓描述性统计分析,就是对一组数据的各种特征进行分析,以便于描述测量样本的各种特征及其所代表的总体的特征;探索性数据分析侧重于在数据之中发现新的特征;而验证性数据析,则侧重于验证或推翻已有的假设。 《数据分析》一书中介绍了数据描述性分析、非参数方法、回归分析等分析方法并介绍了常用数据分析方法的SAS实现过程。第一章介绍的数据描述分析是利用最基础的数理知识实现最简单的数据分析,包括对均值、方差、中值等的计算,数据分布图的勾画,对多元数据的相关分析等。这些简单的分析是复杂数据分析的基础。简单的数据分析在大多数情况下无法满足信息使用者的要求,这时,就需要对数据进行更深入的分析。 回归分析基于观测数据,建立变量间的适当以来关系,用以分析数据的内在规律,可用于预报、控制等问题。回归分析中要解决的问题有:参数估计、假设检验、模型选取等。模型的选取尤为关键,一个好的模型,既要较好地反映问题的本质,又要包含尽可能少的自变量。模型的选取有穷举法和逐步回归法两种。一个好的模型可以准确地预测应变量的值,在数据分析中起到重大的作用。该部分内容与上学期所学的《计量经济学》有诸多相同之处。数据分为三大类,即:截面数据、时间序列数据和虚拟数据。 第七章所介绍的时间序列分析正是对时间序列数据的普遍的处理方法。时间序列是按时间顺序排列的、随时间变化且相互关联的数据序列。其中,AR序列、MA序列、ARMA序列是最基本的三种时间序列形式。时间序列分析旨在建立一个平稳的序列模型用以预测将来某一时刻的数据。平稳的时间序列满足序列的分布特征不随时间的变化而变化,宽平稳时间序列具体要求:有常数均值、常数方差、任何两点间的协方差只与两点间的间隔有关。 第八章介绍了Bayes统计分析,贝叶斯统计中的两个基本概念是先验分布和后验分布。先验分布:总体分布参数θ的一个概率分布。贝叶斯学派的根本观点,是认为在关于总体分布参数θ的任何统计推断问题中,除了使用样本所提供的信息外,还必须规定一个先验分布,它是在进行统计推断时不可缺少的一个要素。他们认为先验分布不必有客观的依据,可以部分地或完全地基于主观信念。后验分布:根据样本分布和未知参数的先验分布,用概率论中求条件概率分布的方法,求出的在样本已知下,未知参数的条件分布。因为这个分布是在抽样以后才得到的,故称为后验分布。贝叶斯推断方法的关键是任何推断都必须且只须根据后验分布,而不能再涉及样本分布。

相关主题