文档库 最新最全的文档下载
当前位置:文档库 › 《8086实验指导书》

《8086实验指导书》

《8086实验指导书》
《8086实验指导书》

8086实验指导书

微机原理实验室

实验一、简单I/O口扩展实验

一、实验目的:

1、认识简单输入输出接口的工作原理。

2、掌握D触发器(74LS273)和缓冲器(74LS244)的引脚及使用方法。

二、实验内容:

1、熟悉74LS273、74LS244的应用接口方法。

2、熟悉用锁存器、三态门扩展简单并行输入、输出口的方法。

用逻辑电平开关作为74LS244的输入,用发光二极管作为74LS273的输出,编写程

序使得电平开关的输入状态从发光二极管上显示出来。逻辑电平开关拨上时为5V,发

光二极管输入“1”为亮、“0”为灭。

三、实验原理图UVuv

四、实验步骤

1、连线:将74LS244(IC25)的输入SI0~SI7分别与逻辑电平开关的K1~K8相连,从I/O地址片选信号中选择CS0与74LS244的片选信号(CSU10\)相连(例如CS0\)。将74LS273

(IC24)的输出与SO0~SO7分别与发光二极管电路的L1\~L8\相连,从I/O地址片选信号选择CS1与74LS273的片选信号相连。

2、编写程序,单步运行,调试程序。

3、观察实验现象,并编写实验报告。

五、实验说明

用逻辑电平开关作为74LS244(IC25)的输入,用发光二极管作为74LS273(IC24)的输出,编写程序,使得逻辑电平开关的输入状态从发光二极管上显示出来。逻辑电平开关拨上时为5V,拨下时为0V。发光二极管输入‘1’为亮,‘0’为灭。从74LS244读入的数据应求反后从输出口输出。

六、实验程序框图

七、实验程序举例

assume cs:code

code segment public

org 100h

start: mov dx,04a0h

in al,dx

mov dx,04b0h

out dx,al

jmp start

code ends

end start

实验二、8255A并行口实验

一、实验目的:

(1)掌握通过8255A实现并行接口实验。

(2)掌握8255A的编程方法。

二、实验内容:

1、掌握8255A的编程原理

2、熟悉计算机并行接口的使用方法

将8255A的A端口作为输入用,B端口作为输出用,用逻辑电平开关作为A端口的输入,用发光二极管作为B端口的输出,编写程序使得电平开关的输入状态从发光二极管上显示出来。逻辑电平开关拨上时为5V,发光二极管输入“1”为亮、“0”为灭。

三、实验原理图

四、实验步骤:

1、在实验系统上连接线路:将8255A(IC37)的PA0~PA7分别与逻辑电平开关的K1~K8相连;PB0~PB7与发光二极管的L1~L8相连。从I/O地址片选信号中选择CS0与8255A的片选(CS8255)端相连。

2、编辑程序,单步运行,调试程序。

3、程序调试通过后,全速运行,观察试验结果,并编写实验报告。

五、实验说明

逻辑电平开关拨上时5V,拨下时0V;发光二极管输入为‘1’时亮,输入为‘0’时灭。拨动开关,观察发光二极管的变化。当开关某位拨上时,对应的发光二极管点亮,拨下时灭。

六、实验程序框图

七、实验程序举例

assume cs:code

code segment public

org 100h

start: mov dx,04a6h

mov ax,90h

out dx,ax

start1: mov dx,04a0h

in ax,dx

mov dx,04a2h

out dx,ax

mov dx,04a4h

out dx,ax

jmp start1

code ends

end start

实验三8253定时器/计数器接口试验

一、实验目的

掌握8253定时器的编程原理,用示波器或A/D、D/A卡观察不同模式下的输出波形。

二、实验内容

编程将计数器0,1,2设置为模式2(分频方式),并观察其输出波形。

三、实验原理图

四、实验步骤

1、连线:从CS0\~CS7中任选一个(如CS0\)于8253的片选信号(CS8253)相连,8253的OUTO

与CLK2相连,OUT2与发光二极管L1相连,OUT1接示波器。有A/D、D/A卡的输出与实验箱的j2相连。在软件DB86种打开波形观察窗口可观察波形。

2、编写并调试程序,通过后全速运行,观察实验结果,并编写实验报告。

五、实验说明

8253的时钟端CLK0,CLK1均为1M/8。CLK2的时钟由OUT来控制。

六、实验程序框图

七、实验程序举例assume cs:code

code segment public

org 100h

start:

mov dx,04a6h

mov ax,36h

out dx,ax

mov dx,04a0h

mov ax,24h

out dx,ax

mov ax,0f4h

out dx,ax

mov dx,04a6h

mov ax,76h

out dx,ax

mov dx,04a2h

mov ax,0ah

out dx,ax

mov ax,0

out dx,ax

mov dx,04a6h

mov ax,0b6h

out dx,ax

mov dx,04a4h

mov ax,20h

out dx,ax

mov ax,0

out dx,ax

loop: mov dx,04b0h

mov ax,34h

out dx,ax

mov dx,04c0h

mov bp,1h;modify

lay1: dec bp

cmp bp,0

jne lay1

wait1: in ax,dx

and ax,1

cmp ax,1

jne wait1

mov dx,04b0h

in ax,dx

and ax,0ffh

nop

jmp loop

code ends ;end of code segment

end start ;end assembly

实验四A/D实验

一、实验目的

熟悉A/D转换的基本原理,掌握ADC0809的使用方法。

二、实验内容

按查询方式采样三路A/D转换数据,用简单输入口(74LS244)查询EOC信号。每循环一次0,1,2通道个采样一次。采样结果是0通道放入CX中,CL有效,1通道放入BX中,BL有效,2通道放入AX中,AL有效。

三、实验原理图

四、实验步骤

1、连线:将可变电位器KB1,KB2,KB3分别与ADC0809的IN0,IN1,IN2相连,从CS0\~CS3

中任选一个(如CS0\)与ADC0809的片选(CS0809)端相连。将ADC0809的EOC与

IC25(74LS244)的SI0相连,从CS0~CS7中任选一个(如CS1\)与IC25的片选(CSU10\)

端相连。

2、编写并调试程序,通过后设置断点全速运行,观察实验结果,并编写实验报告。

五、实验说明

实验电路中启动信号START与地址锁存信好相连,所以启动A/D转换的方法为:MOV,DX,PADC ;PADC是ADC0809的端口地址

OUT,AL,DX ;发片选及IOW信号,这是0通道

;启动1通道时,DX应加1

六、实验程序框图

七、实验程序举例

assume cs:code

code segment public

org 100h

start: mov dx,04a0h

mov ax,34h

out dx,ax

mov dx,04b0h

mov bp,1000h lay1: dec bp

cmp bp,0

jne lay1

wait1: in ax,dx

and ax,1

cmp ax,1

jne wait1

mov dx,04a0h

in ax,dx

and ax,0ffh

mov cx,ax

mov dx,04a2h

mov ax,34h

out dx,ax

mov bp,1000h lay2: dec bp

cmp bp,0

jne lay2

mov dx,04b0h wait2: in ax,dx

and ax,1

cmp ax,1

jne wait2

mov dx,04a2h

in ax,dx

and ax,0ffh

mov bx,ax

mov dx,04a4h

mov ax,34h

out dx,ax

mov bp,1000h lay3: dec bp

cmp bp,0

jne lay3

mov dx,04b0h wait3: in ax,dx

and ax,1

cmp ax,1

jne wait3

mov dx,04a4h

in ax,dx

and ax,0ffh

nop

jmp start

code ends ;end of code segment

end start ;end assembly

实验五D/A实验

一、实验目的

熟悉数模转换的基本原理,掌握DAC0832的使用方法。

二、实验内容

看懂接口电路后连好硬件线路,编写程序已产生以下两种波形并用示波器观察。1、锯齿波形

3、三角波形

三、实验原理图

四、实验步骤

1、连线:从CS0\~CS7\中任选一个(如CS0\)与DAC0832的片选(CS0832)端相连。将示波器接至DAC0832的输出端OUT。具体连接方法与实验三相同。

2、编写并调试程序,通过后全速运行,产生不同波形。观察实验结果,并编写实验报告。

五、实验说明

DAC0832再上图所示的接口电路中,KB6调节参考电压VREF,KB5调节DA的零点,KB4调节DA的瞒偏,DAC0832工作在双缓冲接口方式下。当A1=0时可锁存输入数据,当A1=1时,可启动转换输出。

六、实验程序框图

七、实验程序举例

1、产生锯齿波程序

assume cs:code

code segment public

org 100h

start:

mov dx,04a0h

up1: mov bx,0

up2: mov ax,bx

out dx,ax

mov dx,04a2h

out dx,ax

mov dx,04a0h

inc bx

cmp bx,0ffh

jne up2

jmp up1

code ends ;end of code segment end start ;end assembly

2、产生三角波程序

assume cs:code

code segment public

org 100h

start:

mov dx,04a0h

up1: mov bx,0

up2: mov ax,bx

out dx,ax

mov dx,04a2h

out dx,ax

inc bx

mov dx,04a0h

cmp bx,0ffh

jne up2

up3: mov ax,bx

out dx,ax

mov dx,04a2h

out dx,ax

dec bx

mov dx,04a0h

cmp bx,0

jne up3

jmp up1

code ends ;end of code segment

end start ;end assembly

实验六 8250串口实验

一、实验目的

1、熟悉串行通信的一般原理和8250的工作原理;

2、了解RS—232串行接口标准及连接方法;

3、掌握8250芯片的编程方法。

二、实验内容

在实验箱与PC机(上位机)之间实行串行通信,按下面流程图编写程序,主机每下传一个字符,如通讯正确,则下位机返回一个同样的字符;如果不正确,则无返回或返回值不相同。

三、实验原理图

四、实验步骤

1、用通信电缆连接实验箱与PC机;

2、编写程序(8250各引脚线路均已接好);

3、在主机上运行DB86,下载实验程序T6.asm,并全速运行;

4、主机退出DB86,启动实验六的上位机驱动程序T6UP.EXE,首先选择串行口,然后输入ASCII

码,看是否有返回。若要退出T6UP.EXE,按回车键。

五、实验说明

上下机波特率均选用9600Bit。上下机均用查询方式。8250的端口地址为0480起始的偶地址单元。8250的时钟为1.8432MHz。

六、实验程序框图

七、实验程序举例

1、下位机程序

;******************************************* code segment ;define data segment

assume cs:code

org 0100h

start:

mov bx,0480h

mov dx,bx

add dx,6

mov ax,80h

out dx,ax

mov dx,bx

mov ax,0ch ;000ch---9600 ,clk=4.77MHZ/4

; AL=4770000/16/9600/4=8

out dx,ax

add dx,2

mov ax,0h

out dx,ax

add dx,4 ; mov dx,3fbh

mov ax,07 ;no pe,8 bit, 1 stop

out dx,ax

mov dx,bx

add dx,2 ;mov dx,3f9h ;no interupt mov ax,0

out dx,ax

add dx,8h ;mov dx,3fdh

in ax,dx

mov dx,bx ;mov dx,3f8h

in ax,dx

crd: call recv

call send

jmp crd

send: push ax

mov bx,0480h

mov dx,bx

add dx,0ah ;mov dx,3fdh

in ax,dx

test ax,20h

jnz recv2

pop ax

jmp send

recv2: pop ax

mov dx,bx ;mov dx,3f8h

out dx,ax

ret

recv: mov bx,0480h

mov dx,bx

add dx,0ah ;mov dx,3fdh

in ax,dx

test ax,01h

jnz recv1

jmp recv

recv1: mov dx,bx ;mov dx,3f8h

in ax,dx

ret

code ends ;end of code segment end start ;end assembly

2、上位机程序

;******************************************* data segment ;define data segment ttt dw 0

ttt1 dw 0

com dw 0

messag1 db 'Please key in com(1,2):','$'

messag2 db 'send: ','$'

rcvstr db 255 dup (?)

messag3 db 'receive: ','$'

data ends

code segment ;define data segment

assume cs:code,ds:data

main proc far ;main part of program

start:

push ds

sub ax,ax

push ax

;set DS to current data segment

mov ax,data

mov ds,ax

;set ES tp current extra segment ;main part of the program following

main0:

mov ah,0

mov al,3

int 10h ;clear the screen 80x25 color mode mov ah,5

mov al,15

lea dx,messag1

call displ ;display message2 string

;please wait for a string to be received!

;should change to wait for receive data

;if the data is '>' stop receive

wkey: mov ah,1

int 21h

cmp al,31h

je com1

cmp al,32h

je com2

jmp wkey

com1: mov si,offset com

mov word ptr [si],03f8h

jmp intcom

com2: mov si,offset com

mov word ptr [si],02f8h

intcom: mov si,offset com

mov bx,[si]

mov dx,bx

add dx,3

mov al,80h

out dx,al

mov dx,bx

mov al,0ch ;000ch---9600 ,clk=4.77MHZ/4

; AL=4770000/16/9600/4=8

out dx,al

inc dx

mov al,0h

out dx,al

add dx,2 ; mov dx,3fbh

mov al,07 ;no pe,8 bit, 1 stop

out dx,al

mov dx,bx

inc dx ;mov dx,3f9h ;no interupt mov al,0

out dx,al

add dx,4 ;mov dx,3fdh

in al,dx

mov dx,bx ;mov dx,3f8h

in al,dx

mov ax,0a15h

lea dx,messag3

call displ

mov bh,0

mov ah,3

int 10h

mov si,offset ttt1

mov word ptr [si],dx

mov ax,815h

lea dx,messag2

call displ ;display message2 string

crd: mov ah,1

int 21h

cmp al,0dh

je exit

push ax

mov bh,0

mov ah,3

int 10h

mov si,offset ttt

mov word ptr [si],dx

pop ax

call send

call recv

push ax

mov si,offset ttt1

mov dx,[si]

mov bh,0

mov ah,2

int 10h

pop ax

mov ah,2

mov dl,al

int 21h

mov bh,0

mov ah,3

int 10h

mov si,offset ttt1

mov word ptr [si],dx

mov si,offset ttt

mov dx,[si]

mov bh,0

mov ah,2

int 10h

jmp crd

exit: mov ah,4ch

int 21h

;get send letter

main endp ;end of main part program

send proc near

srss: push ax

mov si,offset com

mov bx,[si]

mov dx,bx

add dx,5 ;mov dx,3fdh

in al,dx

test al,20h

jnz recv2

push bx

mov ah,1

int 16h

pop bx

jz sret1

pop ax

jmp srss

recv2: mov dx,bx ;mov dx,3f8h

pop ax

out dx,al

ret

sret1: pop ax

ret

send endp

recv proc near

mov cx,1000h

rss: mov si,offset com

mov bx,[si]

mov dx,bx

add dx,5 ;mov dx,3fdh

in al,dx

test al,01h

jnz recv1

dec cx

cmp cx,0

jne rss

mov al,0

jmp ret1

recv1: mov dx,bx ;mov dx,3f8h

in al,dx

ret1: ret

recv endp

;clear screen first

;then display the string(ds:dx) in specified position

;ah=line no al=column no

displ proc near

push dx

mov dh,ah

mov dl,al

mov ah,2

mov bh,0

int 10h ;move cursor to ah line,al column

pop dx

mov ah,9

int 21h

ret

displ endp

code ends ;end of code segment

end start ;end assembly

实验七、RAM实验

一、实验目的:

(1)掌握PC机外存扩展的方法。

(2)掌握8086十六位数据存储方法。

(3)掌握6264芯片的接口方法。

二、实验内容:

向02000至02100单元的偶地址送入AAH,奇地址送入55H。

三、实验原理图

8086接口实验

接口实验部分 实验1 简单I/O口扩展实验 一、实验目的 1、熟悉74LS273,74LS244的应用接口方法。 2、掌握用锁存器、三态门扩展简单并行输入、输出口的方法。 二、实验设备 CPU挂箱、8086CPU模块。 三、实验内容 逻辑电平开关的状态输入74LS244,然后通过74LS273锁存输出,利用LED显示电路作为输出的状态显示。 四、实验原理介绍 本实验用到两部分电路:开关量输入输出电路,简单I/O口扩展电路。 五、实验步骤 1、实验接线:(?表示相互连接) CS0 ?CS244; CS1?CS273;平推开关的输出K1~K8 ? IN0~IN7(对应连接); O0~O7?LED1~LED8。 2、编辑程序,单步运行,调试程序 3、调试通过后,全速运行程序,观看实验结果。 4、编写实验报告。 六、实验提示 74LS244或74LS273的片选信号可以改变,例如连接CS2,此时应同时修改程序中相应的地址。 七、实验结果 程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。例如: K2置于L位置,则对应的LED2应该点亮。 八、程序框图(实验程序名: T244273.ASM)

九、程序源代码清单 assume cs:code code segment public org 100h start: mov dx,04a0h ;74LS244地址 in al,dx ;读输入开关量 mov dx,04b0h ;74LS273地址 out dx,al ;输出至LED jmp start code ends end start

实验2 存储器读写实验 一、实验目的 1.掌握PC机外存扩展的方法。 2.熟悉6264芯片的接口方法。 3.掌握8086十六位数据存储的方法。 二、实验设备 CPU挂箱、8086CPU模块。 三、实验内容 向02000~020FFH单元的偶地址送入AAH,奇地址送入55H。 四、实验原理介绍 本实验用到存储器电路 五、实验步骤 1、实验接线:本实验无需接线。 2、编写调试程序 3、运行实验程序,可采取单步、设置断点方式,打开内存窗口可看到内存区的变化。 六、实验提示 1、RAM区的地址为02000H,编程时可将地址设为01000H,则偏移地址为1000H。 2、如果按字节进行存储,则AL为55H或AAH;如果按字进行存储,则AX应为55AAH。 3、626 4、62256等是计算机系统扩展中经常用到的随机存储器芯片(RAM),主要用作数据存储器扩展。本实验所进行的内存置数在程序中经常用到。计算机系统运行中会频繁地进行内存与外设或者内存与内存之间的数据传输,所以本实验虽然简单但对理解系统程序的运行很关键,望学习和实验时认真对待。 七、实验结果 在断点1处内存区02000H~020FFH单元为00H;在断点2处偶地址为AAH,奇地址为55H 八、程序框图(实验程序名:RAM.ASM)

微机原理实验指导书

微型计算机原理与应用实验指导书 上海大学通信学院

2010 年4 月 PC微机原理实验一 一、目的:掌握PC机DEBUG调试程序有关命令的操作及8086各类指令的 功能。 要求:在PC机上完成下列程序的调试运行,并写出运行结果。二、1.DEBUG的基本操作:(详细内容请参阅教材“程序的调试,P173”和“附录F 调试程序DEUBG的使用,P499”) (1)从WINDOWS进入DOS之后,输入命令启动DEBUG: C:>DEBUG 回车 (2)输入R命令,查看和记录CPU各个寄存器的内容: -R回车 看到什么 (3)输入A命令,汇编下面的字符“WINDOWS”显示程序: -A100 ;从偏移地址是0100H处开始写指令 MOV AH,2 MOV DL, 57 ;57H 是“W ”的ASCII码 INT 21 ;INT 21是DOS 功能调用,AH=2代表2号功能 ;这3句合起来的功能是:显示DL中的字符 MOV DL, 49 INT 2 1 MOV DL, 4E INT 21 MOV DL, 44 INT 2 1 MOV DL, 4F INT 2 1 MOV DL, 57 INT 2 1 MOV DL, 53 INT 2 1 INT 3 ;功能是产生一个断点,不要省略 (4)输入U 命令反汇编上面的程序: -U 100 问:这里100代表什么 (5)输入G命令连续运行上面的程序,记录运行结果:

-G=100 ,57,53依次分别改为574F4E57 (6)输入E命令把上面程序中的数据,49,,44,,45:,,45,4C43,4F4D,-E 103 回车(以下同) -E 107 10B-E -E 10F 113-E 117-E 11B-E (7)输入D命令查看程序机器码的存放情况: -D 100 11E ;看从100开始到11E的机器码 (8)输入G命令再连续运行程序,并记录运行结果: -G=100 (9)依次输入下面的T命令(单步执行)和G命令(设置断点并启动运行),记录各 命令的运行结果: -T=100 回车 -G=100 106 回车 -G=100 10A 回车 -G=100 10E 回车 -G=100 11E 回车 注意: 下面第2—第8段程序是7个实用的小程序,若不小心打错指令,可以这样修改: 例如:CS:0100 B300 MOV BL,0 0102 53 PUSH BX 0103 B220 LP1: MOV DL,20 要修改“PUSH BX”,因为这条指令的IP是0102,所以按以下操作: -A 0102 回车,然后把正确的指令打入,“-A ”是汇编指令。 如果要查看0100以后的指令及相应的机器代码,可以 -U 0100 回车,能够看到CS:0100开始的指令及相应的机器代码。“-U ”是反汇编 若发现有误用,用“-A XXXX 回车”,重打这条指令即可 2.编制一个能在CRT上连续显示A,B,C,D······Z大写英文字符的源程序,并在源程序下汇编调试机运行。

汇编语言程序设计实验篇emu

1.汇编语言程序设计实验篇 1.1.汇编系统软件简介 Emu8086-Microprocessor Emulator是集源代码编辑器、汇编/反汇编工具以及debug 的模拟器。它能模拟一台"虚拟"的电脑运行程序,拥有独立的“硬件”,避免访问真实硬件。该软件兼容Intel的下一代处理器,包括PentiumII、Pentium4。利用该软件提供的调试工具,能够单步跟踪程序,观察程序执行过程中寄存器、标志位、堆栈和内存单元的内容。 1.1.1创建程序 https://www.wendangku.net/doc/079649099.html, TEMPLATE程序 本章与指令相关的实验都是用COM TEMPLATE类型的程序完成的。打开emu8086,在“welcome…”对话框中,单击按钮,创建文件。 在“choose code template”对话框中,选择“COM template-simple and tiny executable file format, pure machine code.”后,单击按钮。

在如所示的编辑界面中,在“;add your code here”部分输入相应的指令,第一条指令默认的偏移地址为100h。 输入全部指令后,单击按钮,保存相应的程序段。 2.EXE TEMPLATE程序 本章与DOS功能调用和汇编源程序相关的实验都是用EXE TEMPLATE程序完成的。打开emu8086,在“welcome…”对话框中,单击按钮,创建文件。

在“choose code template”对话框中,选择“EXE template-advanced executable file.header: relocation, checksum.”后,单击按钮。 在如图所示的编辑界面中,已经可以给出了源程序的框架,包含数据段、堆栈段和代码段的定义以及必要的功能调用等,在“add your data here”和“;add your code here”部分可以分别输入相应的变量定义和指令。

微机原理实验指导书

微机原理实验指导书汕头大学机电系摘录

实验一P1口实验及延时子程序设计 1.实验目的 利用单片机的P1口作为I/O口进行实验验证,掌握利用P1口作为输入口和输出口的编程方法,理解并掌握延时子程序的设计方法。 2.实验设备及器件 IBM PC机一台 DP-51PRO单片机综合仿真实验仪一台 3.实验内容 (1)编写一段程序,用P1口作为控制端口,使D1区的LED轮流点亮。 (2)编写一段程序,用P1.0~P1.6口控制LED,P1.7控制LED的亮和灭(P1.7接按键,按下时LED 亮,不按时LED灭)。 图 1 4.实验要求 学会使用单片机的P1口作I/O口。如果时间充裕,也可以考虑利用P3口作I/O口来做该实验。 5.实验步骤 ①用导线把A2区的J61接口与D1区的J52接口相连。原理如图1所示。 ②先编写一个延时程序。 ③将LED轮流点亮的程序编写完整并调试运行。 ④使用导线把A2区J61接口的P1.0~P1.6与D1区J52接口的LED1~LED7相连,另外A2区J61接口的P1.7与D1区J53的KEY1相连。原理如图3.2(b)所示。 ⑤编写P1.7控制LED的程序,并调试运行(按下K1看是否全亮)。 ⑥A2区J61接口P1.7与D1区J54的SW1相连,然后再运行程序,拨动开关SW1查看结果。

6.实验预习要求 阅读附录内容,理解实验的硬件结构。可以先把程序编好,然后在Keil C51环境下进行软件仿真。 7.实验参考程序 程序1: ORG 8000H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0000H LJMP M ain ORG 8100H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0100H Main: MOV A,#0FFH CLR C MainLoop: CALL Delay RLC A MOV P1,A ;把A的值输出到P1口 SJMP MainLoop Delay: MOV R7, #0 ;延时 Loop: MOV R6, #0 DJNZ R6, $ DJNZ R6, $ DJNZ R6, $ DJNZ R7, Loop RET ; END 程序2: ORG 8000H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0000H LJMP Main ORG 8100H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0100H Main:JB P1.7,SETLED ;按键没有按下时,跳转到SETLED CLRLED: CLR P1.0 CLR P1.1 CLR P1.2 CLR P1.3 CLR P1.4 CLR P1.5 CLR P1.6 SJMP Main SETLED: SETB P1.0 SETB P1.1

8086实验报告

在EMU8086下环境单步调试程序实验报告 1.实验时间:2013年4月23日 2.实验地点:图书馆 3.实验名称:在EMU8086下环境单步调试程序 4. 实验目的:(1)熟悉EMU8086仿真环境 (2)在EMU8086环境下单步调试给出的程序,加深对重要指令的理解5.实验所用设备与软件:硬件:PC机一台;软件:EMU8086 6.实验方法、过程与实验结果的分析 完整代码如下(已补充,已修改) org 100h ; set location counter to 100h ;mov指令 mov CL,23H mov CH,45H ;(cx)=4523H mov AX,1234H ;(AX)=1234H mov WORD ptr[300H],0180H ;( 300H)=0180H mov bx,[300H] ;(bx)=0180H mov [300H],cx ;(300H)=4523H mov ax,ds ;(ax)=0700H mov ds,bx ;(ds)=0180H mov es,[300H] ;(es)=0000H mov [300H],ss ;(ss)=0700 mov bx,cs ;(bx)=0700 mov [300H],cs ;(300H)=0700 目的操作数不允许为CS段寄存器;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;XCHG指令 MOV AX,1234H ;(AX)=1234H MOV BX,3456H ;(BX)=3456H XCHG AX,BX ;(AX)=3456H,(BX)=1234H MOV AX,1234H ;(AX)=1234H MOV WORD ptr[300H],0100H;( 300H)=0100H XCHG AX,[300H] ;(AX)=0100H,( 300H)=1234H ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MOV BX,OFFSET TABLE MOV AL,15 XLAT ;(AL)=225H ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;堆栈指令 MOV AX,1234H ;(AX)=1234H PUSH AX

微机接口(8086)基本实验指导书

目录 实验须知 (2) 实验一系统介绍 (3) 一.系统特点 (3) 二、8086系统概述 (3) 三、系统电源 (5) 四、硬件介绍 (5) 实验二简单I/O口扩展实验 (9) 实验三存储器读写实验 (11) 实验四I/O口扩展和存储器扩展设计实验 (14) 实验五8255并行口实验 (17) 实验六8253定时器/计数器接口实验 (19) 实验七LCD显示实验 (22)

实验须知 一、预习要求 1.实验前认真阅读实验教程中有关内容,明确实验目的和实验任务。 2.每次实验前应有预习报告,未预习者不允许参加实验。 预习报告中:对软件实验,要求画出程序流程图,编好上机程序;对硬件实验,要求画出实验线路图,拟定实验步骤,画出程序流程图,编好上机程序。 二、实验要求 1.实验是学习“汇编语言程序设计”和“微机原理与接口技术”这两门课程的重要环节,实验课请勿迟到,缺席。 2.爱护设备,保持清洁,不随意更换设备。 3.认真完成实验任务,实验结果经教师检查,教师对实验内容提问,对完成者做记录。 4.做硬件实验时,注意断电操作,即所有的接线、改线及拆线操作均应在不带电的状态下进行,严禁带电操作,并注意防止导线堵塞插孔。 5.发生事故,应立即切断电源,并马上向教师报告,检查原因,吸取教训。 6.实验完毕,请整理实验设备,再离开实验室。 三、报告要求 每次实验后,应递交一份实验报告,报告中应包括下列内容: 1.实验名称、实验人姓名、学号、班级、所用的设备号。 2.实验目的、任务。 3.各任务程序流程图、程序清单(应加适量注释)。 4.硬件实验应画出各任务的完整电路图,包括PC总线与实验用到芯片间全部电路。 5.记录和分析实验结果。 6.据实验目的认真做小结。

8086实验讲义

实验一微机实验系统上机过程 一、实验目的 ⑴熟悉微机汇编语言。 ⑵熟悉微机实验系统的上机过程。 二、实验内容 选一个Intel 8086汇编语言程序fuli1.asm(教材P97页例题4.14),在实验环境中进行调试,观察运行结果。 了解汇编语言的工作环境和上机步骤和过程。 三、实验原理与方法 硬件环境:本实验对硬件环境没有要求 软件环境:1、操作系统:DOS 2、编辑程序:EDIT 3、汇编程序:MASM 4、连接程序:LINK 5、调试程序:DEBUG 先使用EDIT编写一个汇编语言源程序:fuli1.asm 然后用MASM汇编成目标程序fuli1.obj 最后使用LINK连接成目标程序fuli1.exe 四、实验设备 1、EL型微机教学实验系统 2、PC机1台 五、实验步骤 1、实验接线 本实验无需接线。 2、编写调试程序 (1)打开微机系统,进入WINDOWS界面,点击任务栏“开始”、“程序”、“附件”、“命令提示符”。进入DOS实验操作环境。 (2)输入命令CD\ 回车。 (3)用EDIT编辑源程序文件fuli1.asm。命令格式:eidt fuli1.asm (4)用MASM对源程序fuli1.asm进行汇编成机器语言程序,直到无错误为止。命令格式:masm fuli1;。 (5)用LINK 对机器语言目标程序进行连接成可执行文件。 命令格式:link fuli1;。

3、运行实验程序。命令格式:fuli1 让程序中运行,观察结果。改变X的值,观察不同结果。 六、实验记录与结论 程序源代码清单(fuli1.asm) DATA SEGMENT TABLE DW 0,1,4,9,16,25,36,49 X DB 6 RESU DW ? DATA ENDS CODE SEGMENT ASSUME DS:DATA,CS:CODE START:MOV AX,DATA MOV DS,AX MOV BX,OFFSET TABLE MOV AL,X MOV AH,0 SHL AX,1 ADD BX,AX MOV DL,[BX] MOV DH,[BX+1] MOV RESU,DX MOV CL,4 SHR DL,CL ADD DL,30H MOV AH,2 INT 21H MOV DX,RESU AND DL,0FH ADD DL,30H MOV AH,2 INT 21H MOV DL,48H MOV AH,2 INT 21H MOV AH,4CH INT 21H CODE ENDS END START 小结:谈谈对汇编语言及C语言上机过程的认识(相同之处和不同之处)。

微机原理与接口技术实验指导书1_[1]...

微机原理与接口技术实验指导书 编者:王亭岭 华北水利水电学院 电气学院自动化教研室 二零一二年三月

目录 实验一标志寄存器应用 (1) 实验二指令寻址方式练习 (4) 实验三分支结构程序设计 (6) 实验四循环结构程序设计 (7) 实验五子程序结构程序设计 (8) 实验六DOS系统功能调用程序设计 (10) 实验七BIOS中断调用程序设计 (12) 实验八定时器中断程序设计 (14)

实验一标志寄存器应用 一、实验目的与要求 1.掌握汇编程序的编译过程; 2.掌握8086的标志寄存器的特点。 二、实验内容 微型计算机(80x86系列)。 四、实验参考程序 DATA SEGMENT A DW 123 B DW 456 SUM DW ? DATA ENDS CODE SEGMENT ASSUME CS:CODE , DS:DATA START: MOV AX , DATA MOV DS , AX MOV AX , A SUB AX , B MOV SUM , AX MOV AH,4CH INT 21H CODE ENDS END START 五、实验步骤 步骤一、用鼠标单击开始菜单,单击运行。如下图所示:

步骤二、在运行窗口中键入cmd,回车进入命令提示符。如下图所示: 步骤三、在命令提示符中编译汇编源程序并连接*.obj文件。如下图所示:1.C:\>D: 回车 2.D:\ >CD MASM 回车 3.D:\MASM>MASM SY1.ASM 回车 4.D:\MASM>LINK SY1.OBJ 回车

步骤四、在命令提示行中运行并调试汇编程序。如下图所示:1.D:\MASM>SY1.EXE 回车 2.D:\MASM>DEBUG SY1.EXE 回车 六、实验结论 1.程序运行后变量SUM的值是多少? 2.程序运行前后标志寄存器的各标志位有何变化? 3.分析实验结果及所遇到的问题,并说明解决的方法。

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

8086汇编语言程序设计实验指导书

汇编语言上机实验指导书 一、概述 上机实验总学时为16学时,其中综合性实验为2学时。实验共有6项暂定为8次,每次2学时。 1.实验辅导的主要内容 实验辅导的内容包括每个实验的实验目的;实验内容;对实验的算法及实验方法的必要说明;实验准备;实验步骤;实验报告要求;实验程序及参考框图。开始的实验介绍较细,后面的实验简要介绍。 2.实验的软硬件要求 关于汇编语言程序设计的硬件要求不高,有IBM-PC/XT即可,但应有彩色显示器以便进行图形实验。软件方面应有MASM.EXE5.0版(包括LINK.EXE),与MS-DOS版本配套的DEBUG程序和EDIT.EXE编辑软件(其它编辑软件也可以)。 3.加强实践能力的培养 实验目的不光是为了验证书本理论,更重要的是对实践能力的培养。其中包括: 实际调试程序的能力,例如修改程序参数的能力,查看结果的能力,设置断点调试运行的能力等; 开发汇编语言应用程序的能力,例如应用有关汇编软件的能力,进行系统调用和BIOS功能调用的能力,进行模块程序设计的能力等。 对某一问题用不同的程序实现的能力,例如我们为每个实验提供了参考程序(或程序段),目的是让每个实验者参照样板程序将实验成功地实现,在掌握其方法后,自己改变程序或自己编制程序加以实现。 实验一汇编语言运行环境及方法、简单程序设计(2学时、验证性) 1.实验目的: (1) 熟悉汇编语言运行环境和方法 (2)了解如何使用汇编语言编制程序 (3) 熟悉DEBUG有关命令的使用方法 (4) 利用DEBUG掌握有关指令的功能 (5) 利用DEBUG运行简单的程序段 2.实验内容 (1)学会输入、编辑汇编语言程序 (2)学会对汇编语言程序进行汇编、连接和运行 (3)进入和退出DEBUG程序 (4)学会DEBUG中的D命令、E命令、R命令、T命令、A命令、G命令等的使用。对于U命令、N命令、W命令等,也应试一下。 3.实验准备 (1)仔细阅读有关汇编语言环境的内容,事先准备好使用的例子。 (2)准备好源程序清单、设计好调试步骤、测试方法、对运行结果的分析。 (3) 编写一个程序:比较2个字符串所含的字符是否相同。若相同则显示’Match.’,否则显示’No match!’;(1)仔细阅读有关DEBUG 命令的内容,对有关命令,都要事先准备好使用的例子。 4.实验步骤 (1)在DOS提示符下,进入MASM目录。 (2)在MASM目录下启动EDIT编辑程序,输入源程序,并对其进行汇编、连接和运行。 ①调用edit输入、编辑源程序并保存在指定的目录中;例:edit abc.asm ②用汇编程序masm对源程序汇编产生目标文件obj。例:masm abc 不断修改错误,直至汇编通过为止。 ③用连接程序link产生执行文件exe.例:link abc ④执行程序 可直接从DOS执行程序,即在DOS环境中,输入文件名即可。 (3)详细记录每一步所用的命令,以及查看结果的方法和具体结果。 5.实验报告要求 (1)源程序清单。 (2) 如何启动和退出EDIT程序。 (3) 如何对源程序进行汇编及编辑。 (4)如何启动和退出DEBUG程序。

《微机原理实验指导书》2015

微机原理汇编及接口实验讲义电子信息工程系微机实验组 2015年3月

目录 实验一寻址方式和汇编语言程序上机调试步骤 (1) 实验二循环程序设计 (2) 实验三子程序调用程序设计 (3) 实验四 DOS系统功能调用 (4) 实验五接口实验预备知识 (5) 实验六简单的输出接口 (9) 实验七简单的输入接口 (11) 实验八数码管动态显示实验 (13) 实验九可编程并行接口8255实验 (15) 实验十可编程计数/定时器8253实验 (16) 实验十一可编程中断控制器8259实验 (17) 实验十二微机接口综合实验(上机测验) 集成电路内部原理及管脚图 (21)

实验一寻址方式和汇编语言程序上机调试步骤 一、实验目的 1、掌握在HQFC环境下8086的寻址方式。 2、掌握在HQFC环境下汇编语言程序上机步骤及调试过程。 3、掌握连续执行、单步执行、跳过执行及设置断点的方法。 4、掌握连续执行、单步执行过程中如何查寄存器、存储器、堆栈中的数据。 二、实验内容 1、在HQFC环境下单步执行下列指令,查看每条指令的执行过程,随时查看寄存器、存储器、 堆栈及反汇编窗口并记录执行结果,查看、记录每条指令的操作码和操作数,查看、记录所有指令的反汇编结果。 code segment assume cs:code start: mov ax,1234h mov bx,4321h add ax,bx mov cx,ax push cx pop dx loop: jmp loop code ends end start 将3、4语句1234h、4321h改为1234、4321后再执行程序,观察结果寄存器窗口,说明变化原因。在语句PUSH CX设置断点,连续执行后查看结果,说明设置断点对程序调试有何作用? 2、在数据段X单元存放有数据42,Y单元存放有数据-43,编程求这两数之和,并把结果 存放到S单元,编写出完整程序,上机调试,查看、记录执行结果。 3、已知数据段X单元存放的数据为10H,编程将该数据左移四位后存放到Y单元,编写出 完整程序,上机调试,查看、记录执行结果。 三、实验预习 1、8086的寻址方式,理解什么是操作码和操作数。 2、了解汇编语言程序上机(编辑→编译→链接→执行)过程。 3、学习利用汇编语言编写简单的源程序。 4、什么是反汇编,反汇编的作用?

微机原理实验指导书

实验一数据传送 实验目的: 1. 熟悉8086 指令系统的数据传送指令及8086 的寻址方式。 2. 利用Turbo Debugger 调试工具来调试汇编语言程序。 实验任务: 1.通过下述程序段的输入和执行来熟悉Turbo Debugger 的使用,并通过显示器屏幕观察程序的执行情况。练习程序段如下: MOV BL,08H MOV CL,BL MOV AX,03FFH MOV BX,AX MOV DS : [0020H] ,BX 2.用以下程序段将一组数据压入(PUSH )堆栈区,然后通过不同的出栈顺序出栈,观察出栈后数据的变化情况。压栈程序段如下: MOV AX,0102H MOV BX,0304H MOV CX,0506H MOV DX,0708H PUSH AX PUSH BX PUSH CX PUSH DX 出栈程序段请自行编写(用不同的出栈顺序) 3. 指出下列指令的错误并加以改正,上机验证之

(1) MOV [BX] ,[SI] (2) MOV AH ,BX (3) MOV AX ,[SI][DI] (4) MOV BYTE PTR[BX] ,2000H (5) MOV CS ,AX (6) MOV DS ,2000H 4. 设置各寄存器及存储单元的内容如下: (BX) = 0010H , (SI) = 0001H (10010H) = 12H , (10011H) = 34H , (10012H) = 56H , (10013H) = 78H (10120H) = 0ABH , (10121H) = 0CDH , (10122H) = 0EFH 说明下列各条指令执行完后AX 寄存器中的内容,并上机验证。 (1) MOV AX ,1200H (2) MOV AX ,BX (3) MOV AX ,[0120H] (4) MOV AX ,[BX] (5) MOV AX ,0110H[BX] (6) MOV AX ,[BX][SI] (7) MOV AX ,0110H[BX][SI] 5. 将DS : 1000H 字节存储单元中的内容送到DS : 2020H 单元中存放。试分别用8086 的直接寻址、寄存器间接寻址、变址寻址、寄存器相对寻址传送指令编写程序段,并上机验证结果。 6. 设AX 寄存器中的内容为1111H ,BX 寄存器中的内容为2222H ,DS : 0010H 单元中的内容为3333H 。将AX 寄存器中的内容与BX 寄存器中的内容交换,然后再将BX 寄存器中的内容与DS : 0010H 单元中的内容进行交换。试编写程序段,并上机验证结果。 7. 设(DS) = 1000H , (ES) = 2000H,有关存储器的内容如图1.5 所示。要求将DS 段的内容传送到AX寄存器,ES段的内容传送到BX寄存器,试编写程序段。

微机接口8086实验项目(更新)

实验1 简单IO扩展程序 一、实验目的 1、熟悉74LS273,74LS244的应用接口方法。 2、掌握用锁存器、三态门扩展简单并行输入、输出口的方法。 二、实验内容 逻辑电平开关的状态输入74LS244,然后通过74LS273锁存输出,利用LED显示电路作为输出的状态显示。 三、实验原理介绍 本实验用到两部分电路:开关量输入输出电路,简单I/O口扩展电路。 四、实验步骤 1、实验接线:(?表示相互连接) CS0?CS244 CS1?CS273 K1~K8?IN0~IN7(对应连接) LED1~LED8?OUT0~OUT7 2、编辑程序,单步运行,调试程序 3、调试通过后,全速运行程序,观看实验结果。 4、编写实验报告。 五、实验提示 74LS244或74LS273的片选信号可以改变,例如分别连接CS2、CS3,此时应同时修改程序中相应的地址。 问题1:锁存控制的不可靠性,如何改进? 问题2:请图示本实验的硬件连接。注意,LED1~LED8的连接回路,要对应“例如:K2臵于L位臵,则对应的LED2应该点亮”。 问题3:由以下程序代码,分析CS0、CS1的译码生成逻辑。 六、实验结果 程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。例如:K2臵于L 位臵,则对应的LED2应该点亮。 七、程序框图(实验程序名: T244273.ASM) 八、程序源代码清单 Assume cs:code code segment public org 100h start: mov dx,04a0h ;74LS244地址 in al,dx ;读输入开关量 mov dx,04b0h ;74LS273地址 out dx,al ;输出至LED jmp start code ends end start 实验2 存储器读写实验 一、实验目的 1.掌握PC机外存扩展的方法。 2.熟悉6264芯片的接口方法。 3.掌握8086十六位数据存储的方法。 二、实验内容 向02000~020FFH单元的偶地址送入AAH,奇地址送入55H。 三、实验原理介绍 本实验用到存储器电路,见硬件说明。 四、实验步骤 1、实验接线 本实验无需接线。 2、编写调试程序 3、运行实验程序,可采取单步、设臵断点方式,打开内存窗口可看到内存区的变化。 五、实验提示 1、RAM区的地址为02000H,编程时可段地址设为01000H,则偏移地址为1000H。 2、如果按字节进行存储,则AL为55H或AAH;如果按字进行存储,则AX应为55AAH。 3、626 4、62256等是计算机系统扩展中经常用到的随机存储器芯片(RAM),主要用作数据存储器扩展。本实验所进行的内存臵数在程序中经常用到。计算机系统运行中会频繁地进行内存与外设或者内存与内存之间的数据传输,所以本实验虽然简单但对理解系统程序的运行很关键,望学习和实验时认真对待。 六、实验结果 在断点1处内存区02000H~020FFH单元为00H;在断点2处偶地址为AAH,奇地址为55H。 问题1:请图示程序的运行结果。 问题2:请用串处理指令完成相同功能,并应用其他的串处理操作。 问题3:请图示本实验的硬件连接,即“8086十六位数据存储的方法”;涉及BHE(-)和A0的片选控制。已知: 6264 系统RAM,地址范围0~03FFF,奇地址有效 62256 系统RAM,地址范围0~03FFF,偶地址有效 问题4:借用8279的LED数码管显示程序,实现“循环显示内存区02000H~020FFH 单元内容”的实验。 问题5:若再借用8279的键盘接口功能,则可实现“键盘控制的内存内容显示”。七、程序框图(实验程序名: RAM.ASM)

微机原理实验指导书

实验一数据传送 实验目的 : 1、熟悉 8086 指令系统的数据传送指令及 8086 的寻址方式。 2、利用 Turbo Debugger 调试工具来调试汇编语言程序。 实验任务 : 1.通过下述程序段的输入与执行来熟悉 Turbo Debugger 的使用,并通过显示器屏幕观察程序的执行情况。练习程序段如下: MOV BL , 08H MOV CL , BL MOV AX , 03FFH MOV BX , AX MOV DS : [0020H] , BX 2.用以下程序段将一组数据压入( PUSH )堆栈区,然后通过不同的出栈顺序出栈,观察出栈后数据的变化情况。压栈程序段如下: MOV AX , 0102H MOV BX , 0304H MOV CX , 0506H MOV DX , 0708H PUSH AX PUSH BX PUSH CX PUSH DX 出栈程序段请自行编写(用不同的出栈顺序)。 3、指出下列指令的错误并加以改正,上机验证之。

(1) MOV [BX] , [SI] (2) MOV AH , BX (3) MOV AX , [SI][DI] (4) MOV BYTE PTR[BX] , 2000H (5) MOV CS , AX (6) MOV DS , 2000H 4、设置各寄存器及存储单元的内容如下: (BX) = 0010H , (SI) = 0001H (10010H) = 12H , (10011H) = 34H , (10012H) = 56H , (10013H) = 78H (10120H) = 0ABH , (10121H) = 0CDH , (10122H) = 0EFH 说明下列各条指令执行完后 AX 寄存器中的内容,并上机验证。 (1) MOV AX , 1200H (2) MOV AX , BX (3) MOV AX , [0120H] (4) MOV AX , [BX] (5) MOV AX , 0110H[BX] (6) MOV AX , [BX][SI] (7) MOV AX , 0110H[BX][SI] 5、将 DS : 1000H 字节存储单元中的内容送到 DS : 2020H 单元中存放。试分别用 8086 的直接寻址、寄存器间接寻址、变址寻址、寄存器相对寻址传送指令编写程序段,并上机验证结果。 6、设 AX 寄存器中的内容为 1111H , BX 寄存器中的内容为 2222H , DS : 0010H 单元中的内容为 3333H 。将 AX 寄存器中的内容与 BX 寄存器中的内容交换, 然后再将 BX 寄存器中的内容与 DS : 0010H 单元中的内容进行交换。试编写程序段,并上机验证结果。

8086微机原理及接口技术实验教程(2017)

8086微机原理及接口技术 实验教程 合肥工业大学电气与自动化系

1 实验一 系统认识与存储器扩展实验 1.1 TD-PITE 实验装置简介 1.1 TD-PITE 功能特点 系统以具有PC104总线接口的i386EX 单板机和一个开放的微机接口教学实验平台,通过PC104总线组合插接方式构成的高性能80x86微机原理与接口技术教学实验系统,全面支持80x86实模式和保护模式的16/32位微机原理及接口技术的实验教学。开放的80386系统总线,不仅可以进行各种接口实验的学习,还可以进行基于386微处理器的嵌入式应用开发。I386EX 是一款嵌入式微处理器,其在Intel 386SX 微处理器的基础上集成了丰富的外围接口(如8259、8254、16C450和8237等),内部为32位总线,外部为16位数据总线,具有64MB 的寻址能力,保持与标准的32位80386CPU 相同的指令系统,可完全支持80X86微机原理及接口技术课程的教学,使教学内容与主流技术相一致,达到学以致用的目的。 系统提供开放的386系统总线,使用户可以充分学习并掌握系统总线的特点及操作方法。实验平台上提供丰富的实验单元,如中断控制器8259、DMA 控制器8237、定时/计数器8254、并行接口8255、串行通信接口8251、SRAM 、ADC0809、DAC0832、单次脉冲、键盘扫描及数码管显示、开关输入及发光管显示、电子发声器、点阵LED 显示、图形LCD 显示、步进电机、直流电机及温度控制单元电路。 1.2 TD-PITE 系统构成 TD-PITE 是一套80X86微机原理及接口技术实验教学系统,其主要系统构成如表1.1 所示。 表1.1 TD-PITE 系统构成

8086汇编语言程序设计实验指导书x

8086汇编语言程序设计 实 验 指 导 书 计算机科学与技术学院计算机科学与技术系 二〇一一年九月

目录 第一部分实验方法 ............................................................................. - 1 - 1.1 实验目的与要求 ...................................................................... - 1 - 1.2 实验方法 .................................................................................. - 2 - 第二部分实验内容 ............................................................................. - 7 - 实验1 简单汇编语言程序设计 .................................................. - 7 - 实验2 分支循环及程序设计 ...................................................... - 8 - 实验3 子程序程序设计 .............................................................. - 9 - 实验4 综合程序设计 ................................................................ - 10 - 附录.................................................................................................. - 11 - 附录1 常用DOS命令 ................................................................ - 11 - 附录2 DEBUG主要命令............................................................. - 13 - 附录3 汇编程序出错信息 .......................................................... - 16 - 附录4 常用字符ASCII码值...................................................... - 20 - 附录5 8088/8086指令系统 ...................................................... - 21 - 附录6 IBM PC/A T中断功能表................................................ - 25 - 附录7 常用DOS功能调用(INT 21H).................................. - 27 - 附录8 BIOS功能调用 ................................................................. - 30 -

微机原理实验实验指导书2015

微型计算机原理与应用 实验指导书 上海大学通信学院 2015 年 3 月

实验一8051单片机简单编程与调试 一、实验目的 通过简单小程序的输入和调试,熟悉并掌握Keil 的使用。学会Proteus与Keil的整合调试。 二、实验基本要求 建立三个项目,分别输入存储块清零、二进制BCD码及二进制ASCII码转换的汇编源程序,并进行仿真调试。画出实验程序的流程框图。 三、实验步骤 采用Keil Cx51 开发8051单片机应用程序一般需要经过下面几个步骤: 1、在 Vision2集成开发环境中创建一个新项目(Project),并为该项目选定合适的单片机CPU器件。 在菜单栏中选择“Project” →“New Project”,弹出“Create New Project”对话框,选择目标路径,在“文件名”栏中输入项目名后,单击“保存(S)”按钮,弹出“Selecte Device for Target”对话窗口。在此对话窗口的“Data base”栏中,单击“Atmel”前面的“+”号,或者直接双击“Atmel”,在其子类中选择“AT89C51”,确定CPU类型。如图所示。

点击“确定”按钮后,弹出如下的对话框 如果是进行汇编语言编程选择“否”。 2、利用μVision2的文件编辑器编写C语言(或汇编语言)源程序文件,并将文件添加到项目中去。一个项目可以包含多个文件,除源程序文件外还可以有库文件或文本说明文件。 在μVision2的菜单栏中选择“File”→“New”命令,新建文档,然后在菜单栏中选择“File” →“Save”命令,保存此文档,这时会弹出“Save As”对话窗口,在“文件名(N)”一栏中,为此文本命名,注意要填写扩展名“.asm”。单击“保存(S)”按钮,这样在编写汇编代码时,Keil会自动识别汇编语言的关键字,并以不同的颜色显示,以减少输入代码时出现的语法错误。程序编写完后,再次保存。 在Keil中“Project Workspace”子窗口中,单击“Target 1”前面的“+”号,展开此目录。在“Source Group 1”文件夹上单击鼠标右键,在右键菜单中选择“Add File to ‘Group Source 1’”,弹出“Add File to Group”对话窗口,在此对话窗口的“文件类型”栏中,选择“Asm Source File”,并找到刚才编写的.asm文件,双击此文件,将其添加到Source Group中,此时“Project Workspace”子窗口如图所示。

相关文档
相关文档 最新文档