北邮微原答案

北邮微原答案
北邮微原答案

答: 2 =1048576=1MB 第 1 章 微型计算机系统概述

1-1.微型计算机包括哪几个主要组成部分,各部分的基本功能是什么? 答:

微型计算机由 CPU 、存储器、输入/输出接口及系统总线组成。

CPU 是微型计算机的核心部件,一般具有下列功能:进行算术和逻辑运算。暂存少量 数据。对指令译码并执行指令所规定的操作。与存储器和外设进行数据交换的能力。提供整

个系统所需要的定时和控制信号。响应其他部件发出的中断请求;总线是计算机系统各功能

模块间传递信息的公共通道,一般由总线控制器、总线发送器、总线接收器以及一组导线组 成;存储器是用来存储数据、程序的部件;I/O 接口是微型计算机的重要组成部件,在CPU 和外设之间起适配作用。

1-2.CPU 执行指令的工作过程。 答:

取指令、执行指令。 指令执行的基本过程:

(1)开始执行程序时,程序计数器中保存第一条指令的地址,指明当前将要执行的指令 存放在存储器的哪个单元。

(2)控制器:将程序计数器中的地址送至地址寄存器MAR ,并发出读命令。存储器根

据此地址取出一条指令,经过数据总线进入指令寄存器IR 。 (3)指令译码器译码,控制逻辑阵列发操作命令,执行指令操作码规定的操作。

(4)修改程序计数器的内容。

1-3.果微处理器的地址总线为 20 位,它的最大寻址空间为多少?

20

1-4.处理器、微型计算机和微型计算机系统之间有什么关系?

答:

微处理器是微型计算机的核心部件。微处理器配上存储器、输入/输出接口及相应的外 设构成完整的微型计算机。以微型计算机为主体,配上系统软件和外部设备以后,就构成了 完整的微型计算机系统。

1-5.下面十进制数分别转换为二进制、八进制和十六进制数:

128,65535,1024

答:

128,二进制:10000000B ,八进制:200O ,十六进制:80H

65535,二进制:1111111111111111B ,八进制:177777O ,十六进制:FFFFH 1024, 二进制:10000000000B ,八进制:2000O ,十六进制:400H

1-6.下面二进制数分别转换为十进制及十六进制数:

1011.1010B ,1111101.11 B

答:

1011.1010B ,十进制:11.625,十六进制:B.AH

1111101.11B,十进制:125.75,十六进制:7D.CH

1-7.(5487)10=(0101010010000111)BCD=1010101101111 B

1-8.设字长为8 位,请写出下列数的原码、反码、补码和移码:

15,-20,-27/32

答:

[+15]原=00001111,[+15]反=00001111,[+15]补=00001111,[+15]移=10001111 [-20]原=10010100,[-20]反=11101011,[-20]补=11101100,[-20]移=01101100 [-27/32]原=1.1101100,[-27/32]反=1.0010011,[-27/32]补=1.0010100,

[-27/32]移=0.0010100

若 CPU 的主时钟频率为 10MHz ,则一个时钟周期为10 s ,一个基本总线周期为 4×

第 2 章 微型计算机系统的微处理器

习 题

2-1.086/8088 CPU 的功能结构由哪两部分组成?它们的主要功能是什么?

答:

8086/8088 CPU 的功能结构由以下两部分组成:总线接口单元BIU (Bus Interface Unit ), 执行部件EU (Execution Unit )。

总线接口单元BIU 的主要功能是:负责与存储器、I/O

端口进行数据传送。具体讲:取 指令:总线接口部件从内存中取出指令后送到指令队列。预取指令。配合EU 执行指令,存 取操作数和运算结果。

执行部件 EU 主要功能是:负责指令执行。

2-2.086 CPU 指令部件(队列)的作用是什么?地址加法器的作用是什么? 答:

8086/8088的指令队列分别为6/4个字节,存储预取的指令。

地址加法器用来产生20位物理地址。8086/8088可用20位地址寻址1M 字节的内存空间,

而CPU 内部的寄存器都是

16 位,因此需要由一个附加的机构来计算出20位的物理地址,这 个机构就是20位的地址加法器。

2-3.据 8086 CPU

的结构,简述程序的执行过程。 答:

设程序的指令代码已存放在存贮器中。为执行程序,CPU 按照时钟节拍,产生一系列控 制信号,有规则地重复进行以下过程。

(1)BIU 从存贮器中取出一条指令存入指令队列。

(2)EU

从指令队列取指令并执行指令。BIU 利用总线空闲时间,从内存取第二条指令 或取第三条指令存入指令队列。

(3)EU 执行下一条指令。如果前面一条指令有写存贮器的要求,则通知BIU 把前条指 令结果写到存贮器中,然后再取指令存入指令队列。

(4)如指令执行要求读取操作数,由BIU 完成。

(5)EU 执行再下一条指令,返回(1)处继续执行上述操作过程。所以,程序的执行过 程就是CPU 取指令、分析指令、执行指令,再取指令这样一个循环重复过程。

在指令执行过程中,利用 EU 分析指令操作码和执行指令时不占用总线操作时间的特 点,BIU 自动地通过总线读取存贮器中的指令码存入 BIU 指令队列,从而使 BIU 与 EU 并 行工作,提高 CPU 执行指令的速度。

2-4.什么是总线周期?8086/8088 的基本总线周期由几个时钟周期组成?若 CPU 的主 时钟频率为 10 MHz ,则一个时钟周期为多少?一个基本总线周期为多少?

答:

总线周期:BIU 通过系统总线对存储器或I /O 端口进行一次读/写操作的过程称为一个

总线周期。 8086/8088CPU 的一个基本总线周期由4个时钟周期(T1~T4)组成,也称4个T 状态。

-7

10-7 s。

2-5.复位信号RESET 到来后,8086/8088 CPU 的内部状态有何特征?系统从何处开

始执行指令?

答:

8086/8088 系统中,复位信号RESET 到来后,处理器内部的各寄存器和标志寄存器

的内容自动设置为:

CS FFFFH DS 0000H

SS 0000H ES 0000H

IP 0000H 指令队列空

FR 0000H (禁止中断)

因CS=FFFFH,IP=0000,所以8086/8088 将从地址FFFF0H 开始执行指令。

2-6.在总线周期的T1~T4状态,CPU 分别执行什么操作?在CPU 的读/写总线周期中,数据在哪个状态出现在数据总线上?

答:

CPU 在每个时钟周期内完成若干个基本操作,具体是:

T1 状态:CPU 向多路复用总线上发送地址信息指出要寻址的存储单元或外设端口地址。

T2 状态:CPU 从总线上撤消地址,使总线的低16 位置为高阻抗状态,为传输数据作

准备。总线的高 4 位输出本总线周期状态信息。这些状态信息用来表示中断允许状态、当前

正在使用的段寄存器等。

T3 状态:CPU 在总线的高4 位继续输出总线周期状态信号。在总线的低16 位出现由CPU 写出的数据,或者从存储器或I/O 端口读入的数据。

T4 状态:总线周期结束。

在CPU 的读/写总线周期中,数据在T3 状态出现在数据总线上。

2-7.8086/8088 读/写总线周期,微处理器是在( B )时刻采样READY信号,以便决

定是否插入Tw 。

A.T2 B.T3 C.T3 下降沿 D. T2 上升沿

2-8.8086/8088 系统中为什么要有地址锁存器?需要锁存哪些信息?

答:

因8086/8088 系统中地址线、数据线是复用的,所以要有地址锁存器锁存T1 状态输出

的地址。8086 系统锁存20 位地址及BHE 信号,8088 系统锁存20 位地址。

2-9.8086/8088 的最大模式系统配置与最小模式系统配置在结构上有何区别?总线控

制器8288 的作用是什么?

答:

最大模式系统配置在结构上与最小模式系统的主要区别是增加了一个总线控制器8288

和一个总线仲裁器8289。

总线控制器8288 的作用是:对来自8086/8088 CPU 的总线状态信号S2 、S1 、S0 译

码,与输入控制信号AEN 、CEN 和IOB 相互配合,产生总线命令信号和总线控制信号。

2-10.关于8086 最大工作模式的特点描述正确的是( D )。

A.不需要总线控制器8288

B.适用于单一处理机系统

C.由编程进行模式设定

D. M/IO 引脚不可以直接引用

2-11.8086/8088有最小和最大模式两种工作模式,当( B )时为最小模式。

A.MN/ MX=O

B.MN/ MX=l B.INTR=l D.HOLD="1"

2-12.8086 最小工作模式和最大工作模式的主要差别是( D ).

A.地址总线的位数不同C.数据总线位数不同

B.I/O 端口数不同

D.单处理器与多处理器的不同

2-13.PC 机中地址总线的作用是( C )。

A.用于选择存储器单元

B.用于选择进行信息传输的设备

C.用于给存储器单元和I/O 设备接口电路的选择地址

D.以上都不正确

2-14.设当前SS=C000H,SP=2000H,AX=2355H,BX=2122H,CX=8788H,则

当前栈顶的物理地址是多少?若连续执行PUSH AX,PUSH BX,POP CX 3 条指令后,堆

栈内容发生什么变化?AX、BX、CX 中的内容是什么?

答:物理地址=C0000H+2000H=C2000H;

执行指令后,地址C000H:2001H内容是23H;

地址C000H:2002H内容是55H;

地址C000H:2003H内容是87H;

地址C000H:2004H内容是88H;

AX=2355H,BX=CX=8788H;

2-15.8086/8088的控制标志位有( C )个。

A.l

B.2

C.3

D.4

2-16.编程人员不能直接读写的寄存器是( C )。

A.DI

B.CX

C.IP

D.SP

2-17.设(AH)=03H,(AL)=82H,试指出将AL 和AH 中的内容相加和相减后,标

志位CF、AF、OF、SF、IF 和PF 的状态。

答:

(AH)=00000011H

+(AL)=10000010H

10000101

CF=0、AF=0、OF=0、SF=1、IF 不确定和PF=0

(AH)=00000011H

_ (AL)=10000010H

10000001

CF=1、AF=0、OF=0、SF=1、IF 不确定和PF=1

2-18.8086 CPU 中的标志寄存器FR 中有哪些状态标志和控制标志?这些标志位各有什

么含义?

见教材。

2-19.BHE 信号的作用是什么?简述8086 系统中,访问存储器在读写一个字和字节的

过程中,BHE 和A0的状态。

答:

高8 位数据总线允许/状态复用信号。总线周期的T1状态,8086 在BHE /S7输出低电平,表示高8 位数据总线AD15~AD8上的数据有效。

8086 系统中,BHE和AD0结合起来,指出当前传送的数据在总线上将以何种格式出现。(见教材表2-4-1)

8088 系统中,由于数据总线只有8 位,不存在高8 位与低8 位的问题。所以,该引脚

(第34 号)被定义为双功能引脚。在最大模式时,该引脚恒为高电平;在最小模式中,则定义为SS0 。

2-20.8086 向偶地址存储单元0 送一个字节数据时, 须执行一个总线周期, 在第一个T 状态中, ALE 为 1 , A0为0 ,WR 为 1 。

2-21.8086 系统中,为什么要对存储器进行分段管理?其分段管理是如何实现的?

答:

8086/ 8088 地址总线是20 位的,CPU 中的寄存器是16 位的,20 位地址无法用16 位寄存器表示,所以必须分段。

通常有代码段、数据段、堆栈段、辅助段。段内地址16 位,每个段的大小最大可达64KB;实际使用时可以根据需要来确定段大小。

2-22.已知某存储单元的段地址为4500H,偏移地址为4500H,该单元的物理地址是多少?

答:49500H

2-23.某指令对应当前段寄存器CS=FFFFH,指令指针寄存器IP=FF00H,此时,该指令

的物理地址为多少?指向这一物理地址的CS值和IP值是唯一的吗?试举例说明答:

该指令的物理地址为:CS+I P

FFFF0H+ FF00H=1 0FEF0H

这一物理地址的CS值和IP值是唯一的吗:不唯一

2-24.因为8086CPU 的字数据既可以存放在内存的偶地址单元,也可以安排在奇地址单元,所以其堆栈指针SP( A )。

A.最好是指向偶地址单元

B.可以指向任何地址单元

C.只能指向偶地址单元

D.只能指向奇地址单元

第3章8086/8088的指令系统

习题

3-1.试举例说明8086/8088 微处理器的各种寻址方式。

(略)

3-2.假定DS=1000H,SS=9000H,SI=100H,BX=20H,BP=300H,请指出下列指令的源操作数是什么寻址方式?若源操作数位于存储器中,其物理地址是多少?

(1)MOV CX,[1000H] (3)MOV AX,[BX] (5)MOV AL,[BP+5] (2)MOV AX,100H

(4)MOV BL,CL

(6)MOV AL,[BP+SI+2]

答:

(1)中源操作数为直接寻址,其物理地址=DS*16+1000H=11000H;

(2)中源操作数为立即寻址;

(3)中源操作数为寄存器间接寻址,其物理地址=DS*16+(BX)=10020H;

(4)中源操作数为寄存器寻址;

(5)中源操作数为变址寻址,其物理地址=SS*16+(BP)+ 5=90305H;

(6)中源操作数为基址加变址寻址,物理地址=SS*16+(BP)+(SI)+ 2=90402H。

3-3.在8088/8086 微机的内存物理地址34780H 处,存放有字节数据58H,已知DS=3000H,试写指令序列将该字节数据送入AL 寄存器。要求分别采用三种不同的寻址方式。

答:

(1)直接寻址:

MOV AL, [4780H]

(2)寄存器间接寻址:

MOV BX,4780H

MOV AL, [BX]

(3)变址寻址:

MOV SI, 4782H

MOV AL, [SI-2]

3-4.判断下述8086/8088 指令的写法是否正确:

(1)MOV [AX], BH

(3)MOV [SP], AX

(5)OUT 10H, CL

(7)PUSH AL

(9)MOV ES:[SI], DI

答:

(1) MOV [AX], BH (2) MOV [BP], AX (3) MOV [SP], AX (X)

()

(X)

(2)MOV [BP], AX

(4)MOV [DI], [SI]

(6)INC WORD PTR [SI]

(8)CMP 36H, AL

(10)MOV BYTE PTR [BX], 800

(4) MOV [DI], [SI] (5) OUT 10H, CL (X) (X)

(6) INC WORD PTR [SI] ()

(7) PUSH AL (8) CMP 36H, AL (9) MOV ES:[SI], DI (X)

(X)

()

(10) MOV BYTE PTR [BX], 800 (X)

3-5.设有关寄存器及存储单元的内容如下:

DS=2000H ,BX=0100H ,AX=1200H ,SI=0002H ,[20102H]=33H ,[20103]=44H ,[21200]=9BH,[21201H]=99H,[21202H]=0AAH,[21203H]=88H。

问:下列各条指令单独执行后相关寄存器或存储单元的内容为多少?

(1)MOV (3)MOV (5)MOV AX,1800H

BX,[1200H]

[BX+SI],AL

(2)MOV

(4)MOV

(6)MOV

AX,BX

DX,[BX+1100H]

AX,[BX+SI+1100H]

答:

(1)

(2)

(3)

(4)

(5)

(6) AX=1800H

AX=BX=0100H

BX=999BH

DX=999BH [20102H] = AL =00H AX=88AAH

3-6.已知SS=0FF00H,SP=0000H,试编写程序片段将两个16 位数1122H 和3344H 先后压入堆栈,并画出堆栈区和SP 内容变化的过程示意图(标出存储单元的地址)。

答:

MOV AX, 1122H

PUSH AX

0FF00:0FFFEH 0FF00:0FFFFH 22H

11H

SP

MOV AX, 3344H PUSH AX

0FF00:0FFFCH

0FF00:0FFFDH

0FF00:0FFFEH

0FF00:0FFFFH 11H

SP

3-7.设在数据段偏移地址为2000H 单元开始的地方连续存放了0 ~ 15 的平方值。试写

出包含有XLAT 指令的指令序列,用来查找0~15 范围内的某个数N 的平方值(设N 的值存放在CL 寄存器中)。

答:

MOV BX, 2000H

MOV AL, CL

XLAT

3-8.试用简单的几条指令完成对AL 寄存器中的无符号数乘以12 的操作。要求只能用

移位、加法及MOV 指令。

答:

MOV AH, 0

MOV CL, 2

SHL AX, CL MOV BX, AX SHL AX, 1 ADD AX, BX ;AL 左移两位,相当于乘 4

;保存

;AL 再左移一位,相当于原数乘8 ;相当于原数乘12

3-9.已知程序段如下:

MOV AX,1234H

MOV CL,4

ROL AX,CL

DEC AX

MOV CX,4

MUL CX

问:执行完每条指令后,AX=? CF=? SF=? ZF=?(设在执行第一条指令前CF=SF=ZF=0)。

答:

AX=8D00H

CF=0,SF 及ZF 不确定。

3-10.执行如下三条指令后:

MOV AH,0

MOV AL,7

ADD AL,5

问:(1) 若再执行一条非组合BCD 码加法调整指令AAA 后,AX 的内容为多少? (2) 若题中的三条指令后紧跟的是一条组合BCD 码加法调整指令DAA,则执行完DAA 后AX 的内容为多少?

答:

(1)AX=0102H

(2)AX=0012H

3-11.已知AX=14C6H,BX=80DCH,问执行下列程序段后,程序转向何处?

ADD AX,BX

JNC L2

SUB AX,BX

JNC L3

JMP L4

若初始AX=B568H,BX=54B7H,情况又如何?

答:

程序转向地址标号L2 处。

若初始AX=B568H,BX=54B7H,程序转向地址标号L4 处。

3-12.如下程序完成什么功能?

MOV AX,5000H

MOV DS,AX

MOV CX,100

MOV AX,0

MOV SI,AX

START:ADD AX,[SI+1000H]

ADD SI,2

LOOP START

MOV [200H],AX

答:

程序完成内存5000H:1000H 开始的连续100 个字数据的求和,并将和数存于5000H:200H 处。

3-13、试写一程序片段,将当前数据段偏移地址为2000H 开始的100 个字节单元内容

与偏移地址为3000H 开始的100 个字节单元内容相交换,即:偏移地址2000H 对应单元内

容与偏移地址3000H 对应单元内容交换,偏移地址2001H 对应单元内容与偏移地址3001H

对应单元内容交换,依此类推。

答:

MOV SI, 2000H

MOV DI, 3000H

MOV CX, 100

REPT0: MOV AL, [SI]

MOV BL, [DI]

MOV [DI], AL

MOV [SI], BL

INC SI

INC DI

LOOP REPT0

3-14.在数据段中偏移地址分别为1000H 及2000H 开始的存储区内有两个10 字节的字

符串,试编写一段程序来比较这两个字符串。如果这两个字符串不同,则程序转至8000H:1000H 处,否则顺序执行。

答:

MOV SI,1000H MOV DI,2000H MOV CX,10 CLD ;装入源串偏移地址;装入目的串偏移地址;装入字符串长度

;方向标志复位

REPE CMPSB

JCXZ CONTI

JMP 8000H:1000H

CONTI: NOP

3-15.利用串操作指令将数据段中偏移地址1000H 开始处的100 个字节移动到数据段偏移地址为1050H 开始的地方。

答:

MOV CX,100

MOV SI,1000H+99

MOV DI,1050H+99

STD

REP MOVSB ;地址减量方式传送

;数据块传送(串操作)

第4章汇编语言程序设计

习题

4-1.如下定义:

VAR1 DB 4

VAR2 DB 10

CNST1 EQU 12

试指出下列指令的错误原因:

(1)MOV CNST1,CX (3)CMP VAR1,VAR2 (2)MOV VAR1,AX (4)CNST1 EQU 24

答:

(1)目的操作数不能是立即数;

(2) VAR1单元定义为字节类型,而 AX为字;

(3) 8086/8088中两个内存单元不能直接比较;

(4)同一符号名不允许用 EQU重复定义。

4-2.某人定义了如下数据段:

DATA SEGMENT AT 1000H

ORG 100H

VAL1 DB 11H

VAL2 DW 22H, 33H

VAL3 DB 5 DUP (44H)

DATA ENDS

试指明该数据段中偏移地址从100H 到109H 的各存贮单元的内容。答:

100H:11H

101H:22H

102H:00H

103H:33H

104H:00H

105H:44H

106H:44H

107H:44H

108H:44H

109H:44H

4-3.对于下面的数据定义,写出各条指令执行后的结果:

DATA SEGMENT

ORG 0100H

AAAA DW 0A244H

BBBB DB 33H,66H,92H,29H

CCCC EQU WORD PTR BBBB

DDDD DB ‘ABCD’EEEE EQU $-DDDD DATA ENDS

答:(1) MOV AX,AAAA

(2) MOV BX,CCCC

(3) MOV DX,OFFSET DDDD

(4) MOV CL,EEEE

AL=(

BH=(

DL=(

CL=(

(1) MOV AX,AAAA AL=(44H

(2) MOV BX,CCCC BH=(66H

(3) MOV DX,OFFSET DDDD DL=(06H )))

(4) MOV CL,EEEE CL=(04H )

4-4.试编程序将内存从50000H 到5FFFFH 的每个单元均写入数55H,并再逐个单元读

出比较,看写入的与读出的是否一致。若全对,则将AL 置0;只要有错,则将AL 置0FFH。

答:

START:LOOP1:MOV AX,5000H MOV DS,AX

MOV SI,0

MOV CX, 0FFFFH

MOV BYTE PTR [SI], 55H MOV AL, [SI]

CMP AL, 55H

JNZ LOOPERR

LOOP2: INC SI

LOOP LOOP1

MOV BYTE PTR [SI], 55H ;最后一个单元

MOV AL, [SI]

CMP AL, 55H

JNZ LOOPERR

MOV AL, 0 ;全对

JMP LOOPOUT

LOOPERR: MOV AL, 0FFH

LOOPOUT: NOP

4-5.编写一个子程序,对AL 中的ASCII 字符添加偶校验位(bit7),即:使AL 中的“1”的个数为偶数。

答:

ADDPARITY PROC NEAR

AND AL, 7FH

JP ADDEXIT

OR AL, 80H

ADDEXIT: RET

ADDPARITY ENDP

4-6.利用上题的子程序,编程对内存物理地址10000H 开始的1024 个单元的ASCII 字符加上偶校验位。

答:

START:MOV AX,1000H

MOV DS,AX

MOV SI,0

MOV CX, 1024

LOOP1: MOV AL, [SI]

CALL ADDPARITY

MOV [SI], AL

INC SI

LOOP LOOP1

4-7、试写一子程序,完成对一个8 位无符号数乘6 的操作。要求:(1)只能用传送、加法及移位指令;(2)入口参数(即8 位无符号数)放于AL 中,出口参数(即乘 6 后的结果)放于AX。

答:

MULTI6 PROC NEAR

PUSH BX

MOV AH, 0

SHL AX, 1 MOV BX, AX SHL AX, 1 ADD AX, BX

;乘 2

;乘 4 ;乘 6

POP BX

RET

MULTI6 ENDP

4-8.给定如下程序片段:

START: MOV AX, 1000H,

OV SS, AX

OV SP, 000FH

OV AX, 1000H

USH AX

OV BX, 5439H

USH BX

ALL NEAR PTR SUBRT

OP AX

STOP0: HLT

SUBRT: PUSH BP

OV BP, SP

VAAX:MOV AX, [BP+4]

DD AX, 456AH

OV [BP+4], AX

OP BP

ET 4

问:(1)程序执行到标号为SUBRT 处的指令时,SP = ?(2)执行完标号为VAAX 的MOV 指令后,AX =?(3)执行到标号为STOP0 处的指令时:SP = ? AX = ? BX = ? CF=? SF=?

OF=?

答:

(1)程序执行完标号为SUBRT 处的“PUSH BP”指令后,SP=0006H

(2)执行完标号为VAAX 的MOV 指令后,AX =5439H

(3)程序执行到标号为STOP0 处的指令时(实际执行“HLT”指令之前):SP = 000CH

AX = 99A3H

BX = 5439H

以及以下标志寄存器的内容:

CF = 0

SF = 1

OF = 1

4-9.自符号地址为MARK 开始的内存缓冲区中,存有100 个学生的某门课的考试成绩。试找出成绩不低于80 分以及成绩低于60 分的学生个数,同时求出最高的成绩分及最低的成绩分数,并将它们分别存于符号地址为PST、FST、MAXMK 及MINMK 的四个单元中。要求写出完整的数据段及代码段。

答:

DATA SEGMENT

MARK DB 100 DUP(?)

PST DW 0

FST DW 0

MAXMK DB 0

MINMK DB 100

DATA ENDS

CODE START:

AGAIN:

HIGHL: MKCHK: HIGHMK: SEGMENT

ASSUME CS:CODE, DS:DATA

MOV AX, DATA

MOV DS, AX

MOV CX, 100

MOV BX, OFFSET MARK

MOV AL, [BX]

CMP AL, MAXMK

JC HIGHL

MOV MAXMK, AL ; update highest mark

CMP AL, MINMK

JNC MKCHK

MOV MINMK, AL ; update lowest mark

CMP AL, 60

JNC HIGHMK

INC FST ; increase the no. of students whose mark < 60 JMP CHKFH

CMP AL, 80

JC CHKFH

INC PST ; increase the no. of students whose mark >= 80 CHKFH: INC BX

LOOP AGAIN

MOV AX, 4C00H

INT 21H

CODE ENDS

END START

4-10.编写一段程序,接收从键盘输入的10 个数(输入回车符后结束),然后将这些数按位取反后存于BUFF 开始的缓冲区中。

答:

DATA SEGMENT BUFF DB 10 DUP (0)

;数据段;数据区

DATA ENDS

STACK SEGMENT STACK ‘STACK’;堆栈段

DB 100 DUP(?)

STACK ENDS

CODE SEGMENT ;代码段

ASSUME CS:CODE,DS:DATA,SS:STACK

START:MOV AX,DATA

MOV DS,AX

MOV CX, 10

LEA SI, BUFF

REPT1: MOV AH, 1

INT 21H

;键入数据

CMP AL, 0DH ;判断是否是回车键

JE NEXT1 ;是,转NEXT1;否继续输入

NOT AL

MOV BUFF, AL

DEC CX

NEXT1: OR CX, CX

JNZ REPT1

MOV AX,4C00H

INT 21H

CODE ENDS

END START

4-11.试编程序完成两个一位十进制数的加法功能。具体步骤与要求如下:(1) 利用DOS 1 号功能调用,顺序从键盘输入被加数、“+”运算符及加数;(2) 完成相加功能;(3) 将相

加的结果用DOS 9 号功能调用在屏幕上显示出来。例如:输入8+6 后,屏幕上应显示相加结果14。如果在上述步骤(1)中有非法输入,应在屏幕上显示“Input error”,之后程序须

重新从头开始(即从被加数的输入开始)。

(略)

4-12.试定义一条能对任意寄存器进行左移指定位的宏指令。

答:

SHIFT MACRO REG, COUNT

LOCAL LEND

PUSH CX

MOV CL, COUNT

CMP CL, 1

JC LEND ; for COUNT < 1, do not shift

SHL REG, CL

LEND: POP CX

ENDM

4-13.某人写了如下宏定义,以将某寄存器中的一位16 进制数转化为相应的ASCII 码。试分析该宏定义是否有错,若有,试指出错误之处及原因。

HEXASC MACRO HEXREG

PUSHF

CMP HEXREG,10

JL LS10

ADD HEXREG,'a'-‘0’- 10

LS10:ADD HEXREG,‘0’

POPF

RET

HEXASC ENDP

答:

错误之处:

开始处缺:LOCAL LS10

应去除“RET” 语句

“HEXASC ENDP”应为“ENDM”

4-14.在数据段偏移地址BUFFER 开始处顺序存放了100 个无符号16 位数,现要求编写程序将这100 个数据从大到小排序。

(略)

第5章微型计算机总线

习题

5-1.ISA 总线是属于____C______总线。

A. 同步

B. 异步

C. 半同步

D. 自适应

5-2.以下的接口芯片中,可以用作总线主设备的是____A______。

A. DMA 控制器

B. 中断控制器

C. 计数器

D. A/D 变换器

5-3.总线最大传输率等于_____D_______。

A. 总线宽度乘以总线频率

B. 总线宽度乘以总线频率的二分之一

C. 总线宽度乘以总线频率的四分之一

D. 总线宽度乘以总线频率的八分之一

5-4.总线宽度的意思是_______B________。

A. 总线插槽的尺寸

B. 总线中数据线的数目

C. 总线中所有信号线的数目

D. 总线插槽所有引脚的数目

5-5.8088CPU 在形成对外的数据总线和地址总线时要使用____B_____。

A. 三态地址锁存器和三态双向数据缓冲器

B. 非三态地址锁存器和三态双向数据缓冲器

C. 三态地址锁存器和非三态双向数据缓冲器

D. 非三态地址锁存器和非三态双向数据缓冲器

5-6.8088 在最大模式下使用8288 总线控制器产生读写控制信号,8288 产生的读写信号有 6 条,在PC 总线中使用的读写控制线是_____C______。

A. 6 条

B. 5 条

C. 4 条

D. 2 条

5-7.PC 总线标准中不包括_____C_________。

A. DMA 请求和应答线

B. 硬中断请求线

C. 和CPU 连接的中断请求和应答线

D. 复位线

5-8.PCI 总线是一种______D________总线。

A. 8 位/16 位

C. 16 位/32 位

5-9.ISA 总线是一种______A________总线。

A. 8 位/16 位

C. 16 位/32 位B. 8 位/16 位

D. 32 位/64 位

B. 8 位/16 位D. 32 位/64 位

5-10.以下的说法中,不是同步总线特点的是______C________。

A. 不需要应答信号

B. 总线周期的长度一般较短

C. 总线周期的长短可以变化

D. 总线上各部件的工作速度比较接近

5-11.什么是总线,微型计算机为什么要采用总线结构?

答:

总线是在计算机系统中,CPU 和其他模块,模块和模块之间传输某种信息的公共通道。

采用总线结构,便于微型计算机设计和生产的标准化和模块化,降低了生产和使用

的成本,对于微型计算机的推广使用具有非常重要的价值。

5-12.总线操作有什么限制?这些限制对于微型计算机的性能有什么影响?

答:

总线上同时只能传输一种信号。所以,不允许同时有几个部件互相传输信息。不同部件

之间的传输只能分时进行。

这种总线传输的分时性限制了微型计算机操作的并发性。

5-13.ISA 总线是一种同步总线还是半同步总线?

答:

是一种半同步总线。

5-14.ISA 总线通过什么信号可以调整总线周期的长短?

答:

I/O CH RDY。如果此信号线的输入是低电平,要求CPU 延长总线周期。

5-15.PCI 总线是不是可以接入多个主设备?在接入多个主设备时,PCI 总线是什么类

型的总线?

答:

PCI 总线可以接入多个主设备。

PCI 总线本来是属于半同步总线,可以通过TRDY#和IRDY#来控制插入等待周期。在

引入多个主设备时,需要通过REQ 和GNT 信号来进行请求和应答的联络,但是,并不会

因此而改变总线的类型位异步总线。总线的类型仍然是半同步总线。

5-16.现在实际的微型计算机是多总线系统还是单总线系统?微型计算机采用多总线系

统有什么优点?

答:

现在的微机系统都是多总线系统。

多总线系统可以根据不同的速度需要,在系统的不同地方使用不同速度的总线。使得系

统的配置具有更多的灵活性。由于不需要所有的总线都使用同样高速的性能,也可以降低系

统的成本。

5-17.一个USB 系统包括几种硬设备,分别在系统中起什么作用?

答:

一个USB 系统包含三类硬件设备:USB 主机(USB Host)、USB 设备(USB Device)、USB 集线器(USB Hub)

USB 主机有以下功能:

?????检测USB 设备的加入和退出;

管理主机和USB 设备间的通信;

读取和分析设备的配置信息,对USB 设备进行配置操作;对总线上的错误进行管理和恢复;

为加入的USB 设备提供电源。

USB Hub 就是USB 集线器。USB 集线器用于设备扩展连接,通过USB 集线器可以连接更多的USB 设备。

USB 设备就是使用USB 总线标准的外部设备。

5-18.为什么USB 总线很快的得到了普及和应用?

微机原理与接口技术 北邮 软件 实验报告

微机原理与接口技术软件实验报告

实验B 分支、循环程序设计 一、实验目的 1.开始独立进行汇编语言程序设计; 2.掌握基本分支,循环程序设计; 3.掌握最简单的DOS功能调用。 二、实验任务及内容 1.安排一个数据区,内存有若干个正数,负数和零。每类数的个数都不超过9。 2.编写一个程序统计数据区中正数,负数和零的个数。 3.将统计结果在屏幕上显示。 4. 选作题: 统计出正奇数,正偶数,负奇数,负偶数以及零的个数.

四、源程序 DISPSTR MACRO STR ;打出字符串(属于DOS功能调用)MOV AH,9 MOV DX,SEG STR MOV DS,DX MOV DX,OFFSET STR INT 21H ENDM DISPNUM MACRO NUM ;打出数字(属于DOS功能调用)MOV AH,2 MOV DL,NUM ADD DL,30H ;加30H变为ASCII码 INT 21H ENDM DATA SEGMENT NUM DB 3,2,7,0,1,0,-5,-4,0 COUNT EQU $-NUM ;统计数据个数 ZEROS DB 0 ;各类数初值均为0 PLUSES DB 0 MINUSES DB 0 EVENMINUSES DB 0 ODDMINUSES DB 0 EVENPLUSES DB 0 ODDPLUSES DB 0 ZEROSTR DB 0DH,0AH,'ZERO:$' ;待输出字符串

PLUSSTR DB 0DH,0AH,'PLUS:$' MINUSSTR DB 0DH,0AH,'MINUS:$' EVENMINUSSTR DB 0DH,0AH,'EVENMINUS:$' ODDMINUSSTR DB 0DH,0AH,'ODDMINUS:$' EVENPLUSSTR DB 0DH,0AH,'EVENPLUS:$' ODDPLUSSTR DB 0DH,0AH,'ODDPLUS:$' DATA ENDS STACK SEGMENT STACK 'STACK' DB 100 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA, SS:STACK START PROC FAR PUSH DS ;初始化 MOV AX,0 PUSH AX MOV AX,DATA MOV DS,AX MOV CX,COUNT ;CX控制循环次数 MOV SI,OFFSET NUM ;SI指向数据的偏移地址 LOOP1: CMP BYTE PTR[SI],0 ;将SI指向的内容与0比较大小JZ ZERO ;等于0跳转 JG PLUS ;大于0跳转 INC MINUSES ;负数加一 SHR BYTE PTR[SI],1 ;判断是负奇数还是负偶数 JNC EVENMINUS ;是负偶数跳转 INC SI ;SI指针后移 INC ODDMINUSES ;负奇数加一 RETURN: LOOP LOOP1 ;循环直至CX=0 JMP DISP ;循环结束后跳转至打出结果 ZERO: INC ZEROS INC SI JMP RETURN ;返回循环体 PLUS: INC PLUSES SHR BYTE PTR[SI],1 JNC EVENPLUS

微实验报告

本科生实验报告 实验课程微机原理与接口技术 学院名称信息科学与技术学院 专业名称电子信息工程 学生姓名干娜 学生学号201413080229 指导教师李志鹏 实验地点6B610 实验成绩 二〇一六年十月二〇一六年十二月

实验一、动态调试程序DEBUG 一、实验目的 1.动态调试程序DEBUG环境的搭建; 2.掌握各种汇编指令的作用; 3.掌握磁盘文件操作命令的使用; 4.掌握查找、比较、填充和移动内存命令的使用。 二、实验内容 1.搭建汇编调试环境,安装DOS系统; 2.进行DEBUG动态调试程序的启动与退出; 3.进行汇编、执行、跟踪与反汇编命令的编写与运行; 4.进行显示、修改内存和寄存器命令的编写与运行; 5.进行查找、比较、填充和移动内存命令的编写与运行。 三、DEBUG的启动与退出 DEBUG的启动:首先选择一个磁盘,建立一个名为“TEST”的文件,文件名可以任意,然后挂载DOS系统在任意磁盘上,执行代码界面为: 出现“-”表示执行成功,进入DEBUG调试环境,此后可以进行代码的编译与执行。 DEBUG的退出命令:-Q 四、汇编、执行、跟踪与反汇编 1.A命令:逐行汇编命令,主要用于小段程序的汇编和修改目标程序。使用逐行汇编命令的格式为: A[地址] 实验内容:汇编一小段程序,DOS运行界面为:

该段程序完成了对AX,BX,CX,DX寄存器写入规定的数据。 2.G命令:启动运行一个程序或程序的一段,编写格式为: G[=<起始地址>][<断点地址>…] 执行A命令的代码后,运用G命令查看各个寄存器状态: 结果分析:从运行结果可以看出,BX、CX、DX已经写入了输入值,但AX 中的值并不是输入值,可能是AX寄存器的值写入后又被改变。 3.T命令 T命令用来逐条跟踪程序的运行,编写格式如下: T[=<地址>][<跟踪条数>] 每条指令执行后,都要暂停并显示各寄存器的内容,跟踪执行实际上是单步执行,执行结果如下: 从地址100开始,跟踪三条指令,从执行细节可以看出AX、BX、CX、DX都写入了程序给定的值,IP指针的值也是逐条递增。 4.U命令:用来对二进制代码程序进行反汇编,常用于分析和调试目标程序,引用格式如下: U[<地址>]

北邮微原硬件实验

信息与通信工程学院 微原硬件实验报告 姓名: 班级: 学号: 班内序号: 【一.基本的I/O实验】 实验一 I/O地址译码 一、实验目的 掌握I/O地址译码电路的工作原理。 二、实验原理和内容 1、实验电路如图1-1所示,其中74LS74为D触发器,可直接使用实验台 上数字电路实验区的D触发器,74LS138为地址译码器。译码输出端Y0~Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:

280H~287H,Y1:288H~28FH,……当CPU执行I/O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。 例如:执行下面两条指令 MOV DX,2A0H OUT DX,AL(或IN AL,DX) Y4输出一个负脉冲,执行下面两条指令 MOV DX,2A8H OUT DX,AL(或IN AL,DX) Y5输出一个负脉冲。 图1-1 利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。 2、接线: Y4/IO地址接 CLK/D触发器 Y5/IO地址接 CD/D触发器 D/D触发器接 SD/D角发器接 +5V Q/D触发器接 L7(LED灯)或逻辑笔 三、硬件接线图及软件程序流程图 1.硬件接线图 2.软件程序流程图

四、源程序 DATA SEGMENT DATA ENDS STACK SEGMENT STACK 'STACK' DB 100H DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK ;基本框架;延时子程序 DELAY1 PROC NEAR MOV BX,500H PUSH CX LOOP2: MOV CX,0FFFH WAIT1: LOOP WAIT1 DEC BX JNZ LOOP2 POP CX RET DELAY1 ENDP START: MOV CX,0FFFFH ;L7闪烁控制 LOOP1: MOV DX,2A0H ;灯亮 OUT DX,AL CALL DELAY1 MOV DX,2A8H ;灯灭 OUT DX,AL CALL DELAY1 LOOP LOOP1 ;循环闪烁 CODE ENDS END START 五、实验结果 灯L7闪烁 实验二简单并行接口 一、实验目的 掌握简单并行接口的工作原理及使用方法。(选择273进行实验)二、实验原理和内容

北邮微原硬件实验报告

2013年微机原理硬件实验报告 学院:信息与通信工程学院班级:2011211104 姓名:

实验一 I/O地址译码 一.实验目的 掌握I/O地址译码电路的工作原理。 二.实验原理和内容 1.实验电路如图1-1所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器。 译码输出端Y0~Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:280H~287H,Y1:288H~28FH,……当CPU执行I/O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。 例如:执行下面两条指令 MOV DX,2A0H OUT DX,AL(或IN AL,DX) Y4输出一个负脉冲,执行下面两条指令 MOV DX,2A8H OUT DX,AL(或IN AL,DX) Y5输出一个负脉冲。 原理:地址2A0H的A5,A4,A5为100,在输入或输出时,IOW或I OR为0,使得74LS138被选中,经过译码,在Y4口输出负脉冲。其他同理。 图1-1 利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。 2.接线:Y4/IO地址接CLK/D触发器

Y5/IO 地址 接 CD/D 触发器 D/D触发器 接 SD/D 角发器 接 +5V Q /D 触发器 接 L7(L ED 灯)或 逻辑笔 三.程序流程图 四.源程序 DA TA ?SE GMENT D ATA ??ENDS ST ACK SE GME NT ST ACK 'STA CK' DB 100H DU P(?) STA CK ENDS 否

北邮微波实验报告整理版

北京邮电大学信息与通信工程学院 微波实验报告 班级:20112111xx 姓名:xxx 学号:20112103xx 指导老师:徐林娟 2014年6月

目录 实验二分支线匹配器 (1) 实验目的 (1) 实验原理 (1) 实验内容 (1) 实验步骤 (1) 单支节 (2) 双支节 (7) 实验三四分之一波长阻抗变换器 (12) 实验目的 (12) 实验原理 (12) 实验内容 (13) 实验步骤 (13) 纯电阻负载 (14) 复数负载 (19) 实验四功分器 (23) 实验目的 (23) 实验原理 (23) 实验内容 (24) 实验步骤 (24) 公分比为1.5 (25) 公分比为1(等功分器) (29) 心得体会 (32)

201121111x 班-xx 号-xx ——电磁场与微波技术实验报告 实验二 分支线匹配器 实验目的 1.熟悉支节匹配器的匹配原理 2.了解微带线的工作原理和实际应用 3.掌握Smith 图解法设计微带线匹配网络 实验原理 支节匹配器是在主传输线上并联适当的电纳(或者串联适当的电抗),用附加的反射来抵消主传输线上原来的反射波,以达到匹配的目的。 单支节匹配器,调谐时主要有两个可调参量:距离d 和由并联开路或短路短截线提供的电纳。匹配的基本思想是选择d ,使其在距离负载d 处向主线看去的导纳Y 是Y0+jB 形式。然后,此短截线的电纳选择为-jB ,根据该电纳值确定分支短截线的长度,这样就达到匹配条件。 双支节匹配器,通过增加一个支节,改进了单支节匹配器需要调节支节位置的不足,只需调节两个分支线长度,就能够达到匹配(但是双支节匹配不是对任意负载阻抗都能匹配的,即存在一个不能得到匹配的禁区)。 微带线是有介质εr (εr >1)和空气混合填充,基片上方是空气,导体带条和接地板之间是介质εr ,可以近似等效为均匀介质填充的传输线,等效介质电常数为 εe ,介于1和εr 之间,依赖于基片厚度H 和导体宽度W 。而微带线的特性阻抗与其等效介质电常数为εe 、基片厚度H 和导体宽度W 有关。 实验内容 已知:输入阻抗Z 75in ,负载阻抗Z (6435)l j ,特性阻抗0Z 75 ,介质基片 2.55r ,1H mm 。 假定负载在2GHz 时实现匹配,利用图解法设计微带线单支节和双支节匹配网络,假设双支节网络分支线与负载的距离114d ,两分支线之间的距离为21 8 d 。画出几种可能的电路图并且比较输入端反射系数幅度从1.8GHz 至2.2GHz 的变化。 实验步骤 1.根据已知计算出各参量,确定项目频率。 2.将归一化阻抗和负载阻抗所在位置分别标在Smith 圆上。 3.设计单枝节匹配网络,在图上确定分支线与负载的距离以及分支线的长度,根据给定的介质基片、特性阻抗和频率用TXLINE 计算微带线物理长度和宽度。此处应该注意电长度和实际长度的联系。 4.画出原理图,在用微带线画出基本的原理图时,注意还要把衬底添加到图中,将各部分的参数填入。注意微带 分支线处的不均匀性所引起的影响,选择适当的模型。 5.负载阻抗选择电阻和电感串联的形式,连接各端口,完成原理图,并且将项目的频率改为1.8—2.2GHz 。 6.添加矩形图,添加测量,点击分析,测量输入端的反射系数幅值。 7.同理设计双枝节匹配网络,重复上面的步骤。

北邮微机原理中断程序报告

北京邮电大学实验报告 题目:微机原理软件实验 学院:信息与通信工程 专业:信息工程______ 中断实验报告 一、实验目的 1、初步掌握中断程序的设计方法; 2、初步掌握修改 DOS 系统中断,以适应实际使用的方法。

二:实验要求 编一程序,在显示器上显示时、分、秒。 1:借用计数器8253的Timer0作为中断源,通过8259A下向CPU发中断,每10ms 产生一次中断。 2:在中断服务程序中管理刷新时、分、秒。 3:输入文件名(如:CLK)后清屏显示 Current time is XX:XX:XX(时分秒键盘输入) 打回车,时、分、秒开始计时,时钟不停的刷新。 4:当键入CTRL+C时,停止计时,返回系统,且系统正常运行不死机。 提示: 1、8253的初始化程序段可借用。 2、口地址为40H、41H、42H、43H,控制字为36H=00110110B 3、时间常数TC=11932:1.1932MHz/11932=100Hz,输出方波频率为100Hz,其周期为1000/100=10ms 三:设计思路 这个实验需要用到中断控制器8259A和计数器8253。我们先初始化8253的工作方式,利用工作方式3来计数时间,让其分频后产生100hz的方波,每100个周期即为1s,将这个方波作为中断源,通过8259A每10ms向CPU发出一次中断。然后我们将子程序Timer0的地址(CS以及IP)设置为中断向量,每次中断即执行这个子程序,在这个之程序中编写相应代码,看时间是否到1S,没到则跳出中断,等待下一次(1ms之后)中断到来,到1S则让时间+1并且重置计数值,再加上相应的时间显示程序,这样即可实现时间的自动增加与显示,可以当做一个计时器来用,这即是这个工程的主体部分。 除此之外,还需要一部分程序来实现键盘输入相应时间,这里要注意时间的每一位都有取值方面的要求,这里就要通过一系列的CMP/JMP指令的组合来达到正确输入的效果,将顺序输入的时间存储起来,配合Timer0子程序即可输出当前设置的时间并且实现时间刷新。当然,如果选择不输入时间直接回车的话,程序可以从0开始计时,可以当成一个秒表。 还有一些细节的设计如在计时过程中输入S可以重新设置时间,Ctrl+C可以退出这些也是利用CMP/JMP组合来实现。最后整个程序可以实现以下功能:可以设置开始时间然后自动计时,也可以当做秒表来使用,可以正常退出。 四:实验流程

微波仿真实验报告(北邮)

北京邮电大学 微波仿真实验报告实验名称:微波仿真实验

姓名:刘梦颉 班级:2011211203 学号:2011210960 班内序号:11 日期:2012年12月20日 一、实验目的 1、熟悉支节匹配的匹配原理。 2、了解微带线的工作原理和实际应用。 3、掌握Smith图解法设计微带线匹配网络。 4、掌握ADS,通过SmithChart和Momentum设计电路并仿真出结果。 二、实验要求 1、使用软件:ADS 2、实验通用参数: FR4基片:介电常数为4.4,厚度为1.6mm,损耗角正切为0.02 特性阻抗:50欧姆 3、根据题目要求完成仿真,每题截取1~3张截图。

三、实验过程及结果 第一、二次实验 实验一: 1、实验内容 Linecal的使用(工作频率1GHz) a)计算FR4基片的50欧姆微带线的宽度 b)计算FR4基片的50欧姆共面波导(CPW)的横截面尺寸(中心信号线 宽度与接地板之间的距离) 2、相关截图 (a)根据实验要求设置相应参数

(b)根据实验要求设置相应参数 实验二 1、实验内容 了解ADS Schematic的使用和设置2、相关截图:

打开ADS软件,新建工程,新建Schematic窗口。 在Schematic中的tools中打开lineCalc,可以计算微带线的参数。 3、实验分析 通过在不同的库中可以找到想要的器件,比如理想传输线和微带线器件。在完成电路图后需要先保存电路图,然后仿真。在仿真弹出的图形窗口中,可以绘制Smith图和S参数曲线图。

实验三 1、实验内容 分别用理想传输线和微带传输线在FR4基片上,仿真一段特性阻抗为50欧姆四分之波长开路线的性能参数,工作频率为1GHz。观察Smith圆图变化。 2、相关截图 (1)理想传输线

微机原理实验报告软件实验1-4

微机原理实验报告 学院:算机科学与软件教育学院 1. 掌握存储器读写方法 2. 了解存储器的块操作方法 二、实验原理 存储器读写和块操作 三、实验设备仪器及材料 计算机,WA VE 6000软件 四、实验过程 S1.asm 代码流程图 data segment Block db 256 dup(55h) data ends code segment assume cs:code, ds:data start proc near mov ax, data mov ds, ax mov bx, offset Block ; 起始地址 mov cx, 256 ; 清256 字节Again: mov [bx], byte ptr 0 inc bx ; 地址+1 Loop Again ; 记数减一jmp $ ;死循环code ends end start

五、实验步骤 (1) 进入Wave6000,输入程序并检查,保存程序。 (2) “编译”程序。 (3) “全速执行”程序。 (4) “暂停”程序运行,在“数据窗口(MEMOREY)”查看0400H起始的单元内容,并记录。 (5) 在指令“jmp $”处设断点。“全速执行”程序。 (6) 在“数据窗口(MEMOREY)”查看0400H起始的单元内容,记录并分析实验结果。 六、实验结果及总结 运行前:运行后: 2、调试:如何将存储器块的内容置成某固定值(例全填充为0FFH)? 总结:通过本实验,我了解到单片机读写存储器的读写方法,同时也了解到单片机编程,调试方法。学会内存的移动方法,也加深对存储器读写的认识。

微机原理实验报告 学院:算机科学与软件教育学院 实验 课程 名 微机原理实验成绩实验 项目名称实验二、二进制到BCD码转换 指导老 师 1. 了解BCD值和ASCII值的区别。 2. 了解如何将BCD值转换成ASCII值。 3. 了解如何查表进行数值转换及快速计算。 二、实验原理 ASCII码表 三、实验设备仪器及材料 计算机,WA VE 6000软件 data segment Result db 3 dup(?) data ends code segment assume cs:code, ds:data start proc near mov ax, data mov ds, ax mov ax, 123 mov cl, 100 div cl mov Result, al ; 除以 100, 得百位数 mov al, ah mov ah, 0 mov cl, 10 div cl mov Result+1, al ; 余数除以 10, 得十位数 mov Result+2, ah ; 余数为个位 数 jmp $ code ends end start 代码流程图

北邮《微机原理与接口技术》阶段作业汇总

《微机原理与接口技术》作业汇总 1.若欲使RESET有效,只要A即可。 A.接通电源或按RESET键 2.8086微处理器中的ES是D寄存器 D.附加数据段 3.8086 微处理器中BP 寄存器是A A.基址指针寄存器 4.8086/8088 微处理器中的BX是A A.基址寄存器 5.8086/8088微处理器顺序执行程序时,当遇到C指令时, 指令队列会自动复位,BIU会接着往指令队列中装入新的程序段指令。 C.JCXZ 6.8086微处理器读总线周期中地址信号AD15~AD0在A 期间处于高阻。A.T2 7.8086/8088 微处理器引脚中B信号线能够反映标志寄 存器中断允许标志IF的当前值。 B.S5 8.访问I/O端口可用地址线有B条。B.16 9.8086/8088 微处理器可访问内存储器地址为A A.00000~FFFFFH 10.字符串操作时目标串逻辑地址只能由B提供 B.ES、DI 11.8086/8088微处理器中堆栈段SS作为段基址,则偏移 量为B。 B.SP 12.若有两个带有符号数ABH和FFH相加,其结果使F 中CF和OF位为C。 C.1;0 13.8086微处理器内部通用寄存器中的指针类寄存器是B。 B.BP 14.8086/8088微处理器内部能够计算出访问内存储器的20位物理地址的附加机构是。B.BIU中的地址加法器15.当标志寄存器TF=1时,微处理器内部每执行完一条 指令便自动进行一次B。 B.内部中断 16.8086/8088微处理器内部寄存器中的累加器是A寄存 器。 A.16位数据寄存器 17.8086微处理器中的BIU和EU是处于B的工作状态 B.并行 18.8086中指令队列和堆栈特点分别是C C.先进先出;后进先出 19.微型计算机各部件之间是用A连接起来的。 A.系统总线 20.若把组成计算机中的运算器和控制器集成在一块芯 片上称为C。 C.微处理器 21.相联存储器是指按C进行寻址的存储器。 C.内容指定方式 22.单地址指令中为了完成两个数的算术运算,除地址码 指明的一个操作数外,另一个数常需采用D。 D.隐含寻址方式23.某存储器芯片的存储容量为8K×12位,则它的地址 线为C。 C.13 24.下列8086指令中,格式错误的是C。 C.MOV CS,2000H 25.寄存器间接寻址方式中,操作数处在C。C.主存单元 26.某计算机字长16位,其存储容量为2MB,若按半字 编址,它的寻址范围是C。 C.2M 27.某一RAM 芯片,其容量为1024×8位,其数据线和 地址线分别为C。 C.8,10 28.CPU在执行OUT DX,AL指令时,A寄存器的内容 送到数据总线上。 A.AL 29.计算机的存储器系统是指D。 D.cache,主存储器和外存储器 30.指令MOV AX, [3070H]中源操作数的寻址方式为C C.直接寻址 31.EPROM是指D D.光擦可编程的只读存储器 32.指令的寻址方式有顺序和跳跃两种方式,采用跳跃寻 址方式,可以实现D.程序的条件转移成无条件转移33.8086 CPU对存贮器操作的总线周期的T1状态, AD0~AD15引脚上出现的信号是A。A.地址信号 34.堆栈是按D组织的存储区域。D.先进后出原则 35.8086/8088中源变址寄存器是A。A.SI 36.8086/8088中SP是D寄存器。D.堆栈指针寄存器 37.8086/8088中FR是A寄存器。A.标志寄存器 38.8086/8088中IP是C寄存器。C.指令指针寄存器 39.假设AL寄存器的内容是ASCII码表示的一个英文字 母,若为大写字母,将其转换为小写字母,否则不变。 试问,下面哪一条指令可以实现此功能A。 A.ADD AL, 20H 40.逻辑右移指令执行的操作是A。 A.符号位填0,并 顺次右移1位,最低位移至进位标志位 41.假设数据段定义如下: DSEG SEGMENT DAT DW 1,2,3,4,5,6,7,8,9,10 CNT EQU ($-DA T)/2 DSEG ENDS 执行指令MOV CX,CNT后,寄存器CX的内 容是D D.4 42.在下列段寄存器中,代码寄存器是B。B.CS 43.在执行POP[BX]指令,寻找目的操作数时,段地 址和偏移地址分别是B。 B.在DS和BX中 44.设DS=5788H,偏移地址为94H,该字节的物理地址 是B。B.57914H

北京邮电大学微机原理硬件实验报告

北京邮电大学微机原理硬件实验报告

实验报告一:I/0地址译码和简单并行接口 ——实验一&实验二 一、实验目的 掌握I/O地址译码电路的工作原理;掌握简单并行接口的工作原理及使用方法。 二、实验原理及内容 a) I/0地址译码 1、实验电路如图1-1所示,其中74LS74为D触发器,可直接使用实验台上数 字电路实验区的D触发器,74LS138为地址译码器。译码输出端Y0~Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:280H~ 287H,Y1:288H~28FH,……当CPU执行I/O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。 例如:执行下面两条指令 MOV DX,2A0H OUT DX,AL(或IN AL,DX) Y4输出一个负脉冲,执行下面两条指令 MOV DX,2A8H OUT DX,AL(或IN AL,DX) Y5输出一个负脉冲。 利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔经过软件延时实现。 2、接线: Y4/IO地址接 CLK/D触发器

Y5/IO地址接 CD/D触发器 D/D触发器接 SD/D触发器接 +5V Q/D触发器接L7(LED灯)或逻辑笔 b) 简单并行接口 1、按下面图4-2-1简单并行输出接口电路图连接线路(74LS273插通 用插座,74LS32用实验台上的“或门”)。74LS273为八D触发器, 8个D输入端分别接数据总线D0~D7,8个Q输出端接LED显示电 路L0~L7。 2、编程从键盘输入一个字符或数字,将其ASCⅡ码经过这 个输出接口输出,根据8个发光二极管发光情况验证正确 性。 3、按下面图4-2-2简单并行输入接口电路图连接电路 (74LS244插通用插座,74LS32用实验台上的“或门”)。 74LS244为八缓冲器,8个数据输入端分别接逻辑电平开关 输出K0~K7,8个数据输出端分别接数据总线D0~D7。 4、用逻辑电平开关预置某个字母的ASCⅡ码,编程输入这 个ASCⅡ码,并将其对应字母在屏幕上显示出来。 5、接线:1)输出 按图4-2-1接线(图中虚线为实验所需接线,74LS32为实验 台逻辑或门) 2)输入 按图4-2-2接线(图中虚线为实验所需接线,74LS32为实 验台逻辑或门) 三、硬件连线图 1、I/O地址译码

计算机组成原理微程序控制单元实验报告

姓名 学号 班级 ******************年级 指导教师 《计算机组成原理》实验报告 实验名称微程序控制单元实验、指令部件模块实验、时序与启停实验 实验室实验日期 实验七微程序控制单元实验 一、实验目的 ⒈ 掌握时序产生器的组成方式。 ⒉ 熟悉微程序控制器的原理。 ⒊ 掌握微程序编制及微指令格式。 二、实验原理 图 7- 7- 1

图 7-7-4 微地址控制原理图 微程序控制单元实验原理就是人为的给出一条微指令的地址,人为的去打开测试开关,观察机器怎么运行,打个比方就是我要你执行我下的某条命令,我先告诉你命令写在哪页纸上, 你找到纸后,分析命令是什么之后再去执行。 观察机器微程序控制器的组成见图7-1-1 ,微地址的打入操作就是由操作者给出一条微指令 的地址(同上面的例子就是仅仅告诉你我让你跑的这条命令写在哪页纸上,而没有告诉你 命令的具体内容),不需要做测试去判断这是什么指令,所以由图7-7-1 ,其中微命令寄存器 32 位,用三片 8D 触发器 (273) 和一片 4D(175) 触发器组成。它们的清零端由CLR来控制微控制器的清零。它们的触发端CK接 T2,不做测试时 T2 发出时钟信号,将微程序的内容 打入微控制寄存器(含下一条微指令地址)。打入了微指令的地址(即告诉你命令在哪页纸上,此时你需要先找到这页纸并判断命令是叫你做什么,然后执行),进行测试,T4 发出时钟信号,转移逻辑满足条件后输出的负脉冲通过置位端将某一触发器输出端置为“1”状态,按图 7-7-4 所示,微地址锁存器的置位端R 受 SE5~SE0控制,当测试信号 SE5~SE0输出负脉冲时,通过锁存器置位端R将某一锁存器的输出端强行置“1”,实现微地址的修改与转移,此时的地址指的是指令的操作码的地址(即你已经知道命令是跑,此时做的是跑的行为)。再由数据开关置入微地址的值,再做测试,再跳到指令的操作码的地址准备开始执行 指令,这就是微程序控制单元实验的原理。

北邮微原答案

答: 2 =1048576=1MB 第 1 章 微型计算机系统概述 习 题 1-1.微型计算机包括哪几个主要组成部分,各部分的基本功能是什么? 答: 微型计算机由 CPU 、存储器、输入/输出接口及系统总线组成。 CPU 是微型计算机的核心部件,一般具有下列功能:进行算术和逻辑运算。暂存少量 数据。对指令译码并执行指令所规定的操作。与存储器和外设进行数据交换的能力。提供整 个系统所需要的定时和控制信号。响应其他部件发出的中断请求;总线是计算机系统各功能 模块间传递信息的公共通道,一般由总线控制器、总线发送器、总线接收器以及一组导线组 成;存储器是用来存储数据、程序的部件;I/O 接口是微型计算机的重要组成部件,在CPU 和外设之间起适配作用。 1-2.CPU 执行指令的工作过程。 答: 取指令、执行指令。 指令执行的基本过程: (1)开始执行程序时,程序计数器中保存第一条指令的地址,指明当前将要执行的指令 存放在存储器的哪个单元。 (2)控制器:将程序计数器中的地址送至地址寄存器MAR ,并发出读命令。存储器根 据此地址取出一条指令,经过数据总线进入指令寄存器IR 。 (3)指令译码器译码,控制逻辑阵列发操作命令,执行指令操作码规定的操作。 (4)修改程序计数器的内容。 1-3.果微处理器的地址总线为 20 位,它的最大寻址空间为多少? 20 1-4.处理器、微型计算机和微型计算机系统之间有什么关系? 答: 微处理器是微型计算机的核心部件。微处理器配上存储器、输入/输出接口及相应的外 设构成完整的微型计算机。以微型计算机为主体,配上系统软件和外部设备以后,就构成了 完整的微型计算机系统。 1-5.下面十进制数分别转换为二进制、八进制和十六进制数: 128,65535,1024 答: 128,二进制:10000000B ,八进制:200O ,十六进制:80H 65535,二进制:1111111111111111B ,八进制:177777O ,十六进制:FFFFH 1024, 二进制:10000000000B ,八进制:2000O ,十六进制:400H 1-6.下面二进制数分别转换为十进制及十六进制数: 1011.1010B ,1111101.11 B 答: 1011.1010B ,十进制:11.625,十六进制:B.AH

北邮微机原理软件实验报告

微机原理软件实验报告

实验二分支,循环程序设计 一、预习题: 1.十进制数0 -- 9 所对应的ASCII 码是什么? 如何将十进制数0 -- 9 在屏幕上显示出来? 答:要屏显0-9的数码,可以调用02h中断,然后将要显示的数码的ASCII码存进DL 里,然后执行INT 21H就可以打印字符。当然,若不只一个数,调用09h中断(显示字符串)更好,但要将DS:DXZ指向要显示的数字在内存中的首地址,并要求以$结束。 2.如何检验一个数为正,为负或为零? 你能举出多少种不同的方法? 答:CMP X,0 检验标志位CF CF=1,X为负数 CF=0接着检验ZF:ZF=1,X为零,ZF=0,X为正数 二、实验目的: 1.开始独立进行汇编语言程序设计; 2.掌握基本分支,循环程序设计; 3.掌握最简单的DOS 功能调用. 三、实验内容: 1.安排一个数据区,内存有若干个正数,负数和零.每类数的个数都不超过9. 2.编写一个程序统计数据区中正数,负数和零的个数. 四、实验源代码 assume cs:code,ds:data data segment buff db 1,2,3,4,5,-1,-2,-3,0,0 ;安排的数据区 string db '>0:' plus db 0 ;用变量plus来存储正数的个数 db 0ah,0dh string1 db '=0:' zero db 0 ;用变量zero来存储零的个数 db 0ah,0dh string2 db '<0:' minus db 0 ;用变量minus来存储负数的个数 db '$' data ends code segment start:movax,data movds,ax mov cx,10 ;初始化,并将CX赋为10,因为共有10个数 mov dx,0 ;将计数器dx,ah初始化为0 mov ah,0 lea bx,buff compare:cmp byte ptr [bx],0 ;取出一个数与0进行比较 jgeplu ;大于等于0,跳至plu执行 inc ah ;小于0,用ah暂存小于0的个数,ah+1 jmp next ;比完后进行下一个数的比较

北邮电磁场与微波实验天线部分实验报告二

北邮电磁场与微波实验天线部分实验报告二

信息与通信工程学院电磁场与微波实验报告

实验二网络分析仪测试八木天线方向图 一、实验目的 1.掌握网络分析仪辅助测试方法; 2.学习测量八木天线方向图方法; 3.研究在不同频率下的八木天线方向图特性。 注:重点观察不同频率下的方向图形状,如:主瓣、副瓣、后瓣、零点、前后比等; 二、实验步骤: (1) 调整分析仪到轨迹(方向图)模式; (2) 调整云台起点位置270°; (3) 寻找归一化点(最大值点); (4) 旋转云台一周并读取图形参数; (5) 坐标变换、变换频率(f600Mhz、900MHz、1200MHz),分析八木天线方向图特性; 三、实验测量图 不同频率下的测量图如下: 600MHz:

900MHz:

1200MHz:

四、结果分析 在实验中,分别对八木天线在600MHz、900MHz、1200MHz频率下的辐射圆图进行了测量,发现频率是900MHz的时候效果是最好的,圆图边沿的毛刺比较少,方向性比较好,主瓣的面积比较大。 当频率为600 MHz的时候,圆图四周的毛刺现象比较严重,当频率上升到1200MHz时,辐射圆图开始变得不规则,在某些角度时出现了很大的衰减,由对称转向了非对称,圆图边缘的毛刺现象就非常明显了,甚至在某些角度下衰减到了最小值。 从整体来看,八木天线由于测量的是无线信号,因此受周围环境的影响还是比较大的,因此在测量的时候周围的人应该避免走动,以减小对天线电磁波的反射从而减小测量带来的误差使得圆图更接近真实情况。 由实验结果分析可知:最大辐射方向基本在90°和270°这条直线上,图中旁瓣均较小,及大部分能量集中在主瓣。 八木天线由于测量的是无线信号,因此受周围环境的影响还是比较大的,因此在测量的时候应当尽量保持周边环境参数一定,以减小对天线电磁波的反射从而减小测量带来的误差使得圆图更接近真实情况。 五、实验总结

8086软硬件实验报告(微机原理与接口技术上机实验)

实验一实验环境熟悉与简单程序设计 实验目的 (1)掌握DEBUG调试程序的使用方法。 (2)掌握简单程序的设计方法。 实验内容 编程将BH中的数分成高半字节和低半字节两部分,把其中的高半字节放到DH中的低4位(高4位补零),把其中的低半字节放到DL中的低4位(高4位补零)。如: BH=10110010B 则运行程序后 DH=00001011B DL=00000010B 实验准备 (1)熟练掌握所学过的指令。 (2)根据实验内容,要求预先编好程序。 实验步骤 (1)利用DEBUG程序输入、调试程序。 (2)按下表要求不断地修改BH的内容,然后记录下DX的内容。 实验报告 (1)给出程序清单。 (2)详细说明程序调试过程。

程序: CODE SEGMENT START : MOV BH,00111111B MOV AL,BH MOV CL,4 SHR AL,CL MOV DH,AL MOV AL,BH AND AL,00001111B MOV DL,AL MOV CL,0 CODE ENDS END START

实验二简单程序设计 实验目的 (3)掌握DEBUG调试程序的使用方法。 (4)掌握简单程序的设计方法。 实验内容 试编写一个汇编语言程序,要求实现功能:在屏幕上显示:Hello world My name is Li Jianguo 参考程序如下:(有错) data segment out1 db 'Hello world' ax db 'My name is Li Jianguo' data ens code segment assume cs:code;ds:data lea dx,out1 mov ah,2 int 21h mov dl,0ah mov ah,2

北邮微原软件实验报告

2013年微机原理软件实验报告 学院:信息与通信工程学院 班级:2011211104 姓名:

实验二分支,循环程序设计 一.实验目的: 1.开始独立进行汇编语言程序设计; 2.掌握基本分支,循环程序设计; 3.掌握最简单的DOS 功能调用 二.实验内容: 1.安排一个数据区,内存有若干个正数,负数和零.每类数的个数都不超过9. 2.编写一个程序统计数据区中正数,负数和零的个数. 3.将统计结果在屏幕上显示. 三.预习题 1.十进制数0 -- 9 所对应的ASCII 码是什么? 如何将十进制数0 -- 9 在屏幕上显示出来? 0-9的ACSII码为,30h,31h,32h,34h,35h,36h,37h,38h,39h, 将要显示的数加上30h,得到该数的ACSII码,再利用DOS功能调用显示单个字符 2.如何检验一个数为正,为负或为零? 你能举出多少种不同的方法? 利用cmp指令,利用TEST指令,将该数与0相与,将该数与0相减,观察标志位。

四.程序流程图

五.源程序 DATA SEGMENT ;数据段 NUM DB 1,2,-2,3,-3,5,2,4,-6,-11,100,0,0,34,-55,-33,0 ;待处理数据COUNT EQU $-NUM ;数据个数 MINUS DB 0 ;小于零的个数 ZERO DB 0 ;等于零的个数 PLUS DB 0 ;大于零的个数 RESULT DB 'NEGNUM=',?,0AH,0DH,'ZERONUM=',?,0AH,0DH,'POSNUM=',?,0AH,0DH,'$' ;结果显示字符串 DATA ENDS STACK SEGMENT STACK 'STACK' ;堆栈段 DW 50 DUP(?) STACK ENDS CODE SEGMENT ;代码段 ASSUME CS:CODE,DS:DATA,SS:STACK START: MOV AX,DATA MOV DS,AX MOV CX,COUNT MOV SI,OFFSET NUM AGAIN: MOV AL,[SI] ;循环比较 CMP AL,0 JGE NEXT1 INC MINUS JMP DONE NEXT1: JZ NEXT2 INC PLUS JMP DONE NEXT2: INC ZERO DONE: INC SI LOOP AGAIN ;返回结果 MOV DI,OFFSET RESULT MOV AL,MINUS ADD AL,30H MOV BYTE PTR[DI+7],AL MOV AL,ZERO ADD AL,30H MOV BYTE PTR[DI+18],AL MOV AL,PLUS ADD AL,30H MOV BYTE PTR[DI+28],AL

北邮微波实验报告

信息与通信工程学院电磁场与微波技术实验报告 班级学号班序号亚东2011211116 2011210466 22

实验二微带分支线匹配器 实验目的 1.熟悉支节匹配器的匹配原理 2.了解微带线的工作原理和实际应用 3.掌握Smith图解法设计微带线匹配网络 实验原理 1.支节匹配器 支节匹配器是在主传输线上并联适当的电纳(或者串联适当的电抗),用附加的反射来抵消主传输线上原来的反射波,以达到匹配的目的。 单支节匹配器:调谐时,主要有两个可调参量:距离d和分支线的长度l。匹配的基本思想是选择d,使其在距离负载d处向主线看去的导纳Y是Y0+YY形式,即Y=Y0+YY,其中Y0=1/Y0 。并联开路或短路分支线的作用是抵消Y的电纳部分,使总电纳为Y0 ,实现匹配,因此,并联开路或短路分支线提供的电纳为?YY,根据该电纳值确定并联开路或短路分支线的长度l,这样就达到匹配条件。 双支节匹配器:通过增加一支节,改进了单支节匹配器需要调节支节位置的不足,只需调节两个分支线长度,就能够达到匹配(注意双支节匹配不是对任意负载阻抗都能匹配的,即存在一个不能得到匹配的禁区)。 2.微带线 微带线是有介质Y Y(Y Y>1) 和空气混合填充,基片上方是空气,导体带条和接地板之间是介质Y Y,可以近似等效为均匀介质填充的传输线,等效介质电常数为Y Y,介于1和Y Y之间,依赖于基片厚度H和导体宽度W。而微带线的特性阻抗与其等效介质电常数为Y Y、基片厚度H和导体宽度W有关。 实验容 已知:输入阻抗Zin=75Ω 负载阻抗Zl=(64+j35)Ω 特性阻抗Z0=75Ω 介质基片εr=2.55,H=1mm 假定负载在2GHz时实现匹配,利用图解法设计微带线单支节和双支节匹配网络,假设双支节网络分支线与负载的距离d1=1/4λ,两分支线之间的距离为d2=1/8λ。画出几种可能的电路图并且比较输入端反射系数幅度从1.8GHz至2.2GHz的变化。 实验步骤 1.根据已知计算出各参量,确定项目频率。

北邮—微机原理与接口技术(1)

微机原理与接口技术硬件实验报告

目录 1.实验一微机实验平台介绍及IO的使用 (3) 1.1.实验目的 (3) 1.2.实验内容及要求 (3) 1.3.实验环境及背景 (3) 1.4.实验步骤 (4) 1.4.1.使用debug的I、O命令读写端口 (4) 1.4.2.使用文本编辑器edit和编译器masm (5) 1.5.思考题 (11) 1.6.心得体会 (11) 参考资料 (12) 声明与致谢 (12)

1.实验一微机实验平台介绍及IO的使用 1.1.实验目的 1.1.1通过实验了解和熟悉实验台的结构,功能及使用方法; 1.1.2通过实验掌握直接使用debug的I、O命令来读写IO端口; 1.1.3学会debug的使用及编写汇编程序。 1.2.实验内容及要求 1.2.1学习使用debug命令,并用I、O命令直接对端口进行读写操作, 1.2.2用汇编语言编写跑马灯程序。(可以使用EDIT编辑工具。)要求实现以下两个功能:A.通过读入端口状态(ON为低电平),选择工作模式(灯的闪烁方式、速度等);B.通过输出端口控制灯的工作状态(低电平灯亮)。 1.2.3使用时要注意,电源打开时不得插拔电缆及各种器件,一定要在断电的情况下连接电路,否则可能会烧坏整个实验系统。 1.3.实验环境及背景 我们使用PCI_IDE50扁平电缆将PC机与实验扩展模块连接起来。在扩展实验平台上,有八个发光二极管、八个拨码开关。读取拨码开关和写发光二极管的端口地址已经被做成了0E8E0h。连接的PC机上安装有DOS操作系统,并有MASM5开发工具。

图1扩展实验模块 1.4.实验步骤 1.4.1.使用debug的I、O命令读写端口 进入DOS,在命令行模式下输入命令debug,用-a选项写入下列程序:CODE (debug mode) MOV DX, E8E0 MOV AL, FE OUT DX, AL MOV AH, 0B INT 21 OR AL, AL JZ 0100 INT 20 输入结束后,直接输入回车即可推出-a。然后,用-g选项运行程序,查看结果。发现最右边的LED亮,其他不亮。修改输出内容,再运行查看结果,可以发现:当输出位对应为1时,灯灭;输出为0时,灯亮。 下面,我们来分析一下以下这段程序的作用。

相关文档
最新文档