计算机接口实验报告

计算机接口实验报告
计算机接口实验报告

计算机接口技术

实验报告

学号:

姓名:

提交日期:

成绩:

东北大学秦皇岛分校

实验一可编程定时计数器8253

1、计数器

一、实验目的

掌握8253的基本工作原理和编程方法。

二、实验内容

按图16虚线连接电路,将计数器0设置为方式0,计数器初值为N(N≤0FH),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察OUT0电平变化(当输入N+1个脉冲后OUT0变高电平)。

三、编程提示

8253控制寄存器地址 283H

计数器0地址 280H

计数器1地址 281H

CLK0连接时钟1MHZ

四、实验原理图

图16

五、连线

计数器0的CLK0端接实验箱单脉冲的高电平

计数器0的GATE0端接+5V的电源

计数器0的OUT0端接逻辑笔

六、源程序代码

ASM程序:

ioport equ 0d400h-0280h

io8253a equ ioport+283h

io8253b equ ioport+280h

code segment

assume cs:code

start: mov al,14h ;设置8253通道0为工作方式2,二进制计数

mov dx,io8253a

out dx,al

mov dx,io8253b ;送计数初值为0FH

mov al,0fh

out dx,al

lll: in al,dx ;读计数初值

call disp ;调显示子程序

push dx

mov ah,06h

mov dl,0ffh

int 21h

pop dx

jz lll

mov ah,4ch ;退出

int 21h

disp proc near ;显示子程序

push dx

and al,0fh ;首先取低四位

mov dl,al

cmp dl,9 ;判断是否<=9

jle num ;若是则为'0'-'9',ASCII码加30H

add dl,7 ;否则为'A'-'F',ASCII码加37H

num: add dl,30h

mov ah,02h ;显示

int 21h

mov dl,0dh ;加回车符

int 21h

mov dl,0ah ;加换行符

int 21h

pop dx

ret ;子程序返回

disp endp

code ends

end start

在此程序中,芯片8253的初始化程序片段是:

mov al,14h ;设置8253通道0为工作方式2,二进制计数

mov dx,io8253a

out dx,al

mov dx,io8253b ;送计数初值为0FH

mov al,0fh

out dx,al

七、源程序运行结果

屏幕依次显示1~f,16个二进制数,且每按一次单脉冲二进制数减一。当从f减到1时,逻辑笔的信号灯的红灯亮;当从2减到1时,逻辑笔的信号灯由红灯变更为绿灯。

2、计数器二

一、实验原理图:

按图17连接电路,将计数器0、计数器1分别设置为方式3,计数初值设为1000,用逻辑笔观察OUT1输出电平的变化(频率1HZ)

图17 二、源程序代码

ASM程序:

ioport equ 0d400h-0280h

io8253a equ ioport+280h

io8253b equ ioport+281h

io8253c equ ioport+283h

code segment

assume cs:code

start:mov dx,io8253c ;向8253写控制字mov al,36h ;使0通道为工作方式3

out dx,al

mov ax,1000 ;写入循环计数初值1000

mov dx,io8253a

out dx,al ;先写入低字节

mov al,ah

out dx,al ;后写入高字节

mov dx,io8253c

mov al,76h ;设8253通道1工作方式2

out dx,al

mov ax,1000 ;写入循环计数初值1000

mov dx,io8253b

out dx,al ;先写低字节

mov al,ah

out dx,al ;后写高字节

mov ah,4ch ;程序退出

int 21h

code ends

end start

三、运行结果

逻辑笔处的红绿灯交替闪亮

实验二模数转换器

1、电压转十六进制数

一、实验目的

了解模/数转换的基本原理,掌握ADC0809的使用方法。

二、实验内容

1、实验电路原理图如图18。通过实验台左下角电位器RW1输出0~5V直流电压送入ADC0809通道0(IN0),利用debug的输出命令启动A/D转换器,输入命令读取转换结果,验证输入电压与转换后数字的关系。

启动IN0开始转换: Out 0298 0

读取转换结果: In 0298

2、编程采集IN0输入的电压,在屏幕上显示出转换后的数据(用16进制数)。

三、实验提示

1、ADC0809的IN0口地址为298H,IN1口地址为299H。

2、IN0单极性输入电压与转换后数字的关系为:N=Ui/(Uref/256)

其中Ui为输入电压,UREF为参考电压,这里的参考电压为PC机的+5V电源。

3、一次A/D转换的程序可以为

MOV DX,口地址

OUT DX,AL ;启动转换

;延时

IN AL,DX ;读取转换结果放在AL中

四、实验原理图

图18

五、实验连线

ACD0809的ION电压输入端接RW1

ACD0809的CS接298H

多用电压表的正表笔接RW1

多用电压表的负表笔接地

六、源程序代码

ASM程序:

Ioport equ 0d400h-0280h

io0809a equ ioport+298h

code segment

assume cs:code

start:mov dx,io0809a ;启动A/D转换器

out dx,al

mov cx,0ffh ;延时

delay:loop delay

in al,dx ;从A/D转换器输入数据

mov bl,al ;将AL保存到BL

mov cl,4

shr al,cl ;将AL右移四位

call disp ;调显示子程序显示其高四位

mov al,bl

and al,0fh

call disp ;调显示子程序显示其低四位

mov ah,02

mov dl,20h ;加回车符

int 21h

mov dl,20h

int 21h

push dx

mov ah,06h ;判断是否有键按下

mov dl,0ffh

int 21h

pop dx

je start ;若没有转START

mov ah,4ch ;退出

int 21h

disp proc near ;显示子程序

mov dl,al

cmp dl,9 ;比较DL是否>9

jle ddd ;若不大于则为'0'-'9',加30h为其ASCII码add dl,7 ;否则为'A'-'F',再加7

ddd: add dl,30h ;显示

mov ah,02

int 21h

ret

disp endp

code ends

end start

七、实验运行结果

电压与十六进制数的对应关系如下:

5V——————FF

4V——————C4

3V——————8D

2V——————57

1V——————1C

0V——————00

2、波形显示

一、实验内容

将JP3的1、2短接,使IN2处于双极性工作方式,并给IN1输入一个低频交流信号(幅度为±5V),编程采集这个信号数据并在屏幕上显示波形。

二、实验原理图

三、实验源代码

ASM程序:

Ioport equ 0a400h-0280h

io0809b equ ioport+299h

code segment

assume cs:code

start: mov ax,0012h ;设屏幕显示方式为VGA 640X480模示

int 10h

and cx,0 ;cx为横坐标

draw: mov dx,io0809b ;启动A/D转换器通道1

out dx,al

mov bx,500 ;延时

delay: dec bx

jnz delay

in al,dx ;读入数据

mov ah,0

mov dx,368 ;dx为纵坐标

sub dx,ax

mov al,0ah ;设置颜色

mov ah,0ch ;画点

int 10h

cmp cx,639 ;一行是否满

jz start ;是则转start

inc cx ;继续画点

push dx

mov ah,06h ;是否有键按下

mov dl,0ffh

int 21h

pop dx

je draw ;无,则继续画点

mov ax,0003 ;有恢复屏幕为字符方式

int 10h

mov ah,4ch ;返回DOS

int 21h

code ends

end start

四、试验运行结果:

实验三七段数码管

1、七段数码管动态显示

一、实验目的

掌握数码管显示数字的原理

二、实验内容

动态显示:按图19连接好电路,将8255的A口PA0~PA6分别与七段数码管的段码驱动输入端a~g相连,位码驱动输入端S1接+5V(选中),S0、dp接地(关闭)。编程从键盘输入一位十进制数字(0~9),在七段数码管上显示出来。

三、编程提示

实验台上的七段数码管为共阴型,段码采用同相驱动,输入端加高电平,选中的数码管亮,位码加反相驱动器,位码输入端高电平选中。

四、实验原理图:

图19

五、实验源代码

ASM程序:

data segment

ioport equ 0d400h-0280h

io8255a equ ioport+288h

io8255b equ ioport+28bh

led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh

mesg1 db 0dh,0ah,'Input a num (0--9h):',0dh,0ah,'$'

data ends

code segment

assume cs:code,ds:data

start: mov ax,data

mov ds,ax

mov dx,io8255b ;使8255的A口为输出方式

mov ax,80h

out dx,al

sss: mov dx,offset mesg1 ;显示提示信息

mov ah,09h

int 21h

mov ah,01 ;从键盘接收字符

int 21h

cmp al,'0' ;是否小于0

jl exit ;若是则退出

cmp al,'9' ;是否大于9

jg exit ;若是则退出

sub al,30h ;将所得字符的ASCII码减30H

mov bx,offset led ;bx为数码表的起始地址

xlat ;求出相应的段码

mov dx,io8255a ;从8255的A口输出

out dx,al

jmp sss ;转SSS

exit: mov ah,4ch ;返回DOS

int 21h

code ends

六、实验运行结果

当从键盘上输入0-9十个数字中的任意一个可以在数码管上显示出来

2、七段数码管静态显示

一、实验内容

动态显示:按图20连接好电路,七段数码管段码连接不变,位码驱动输入端S1,S0接8255 C口的PC1,PC0。编程在两个数码管上显示“56”。

二、实验原理图

图20

三、实验源程序代码

ASM代码:

data segment

ioport equ 0d400h-0280h

io8255a equ ioport+28ah

io8255b equ ioport+28bh

io8255c equ ioport+288h

led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh ;段码buffer1 db 5,6 ;存放要显示的个位和十位

bz dw ? ;位码

data ends

code segment

assume cs:code,ds:data

start: mov ax,data

mov ds,ax

mov dx,io8255b ;将8255设为A口输出

mov al,80h

out dx,al

mov di,offset buffer1 ;设di为显示缓冲区

loop2: mov bh,02

lll: mov byte ptr bz,bh

push di

dec di

add di, bz

mov bl,[di] ;bl为要显示的数

pop di

mov al,0

mov dx,io8255a

out dx,al

mov bh,0

mov si,offset led ;置led数码表偏移地址为SI

add si,bx ;求出对应的led数码

mov al,byte ptr [si]

mov dx,io8255c ;自8255A的口输出

out dx,al

mov al,byte ptr bz ;使相应的数码管亮

mov dx,io8255a

out dx,al

mov cx,3000

delay: loop delay ;延时

mov bh,byte ptr bz

shr bh,1

jnz lll

mov dx,0ffh

mov ah,06

int 21h

je loop2 ;有键按下则退出

mov dx,io8255a

mov al,0 ;关掉数码管显示

out dx,al

mov ah,4ch ;返回

int 21h

code ends

end start

四、实验运行结果

数码管显示56并保持不变。

实验四交通灯控制实验

一.实验目的

通过并行接口8255实现十字路口交通灯的模拟控制,进一步掌握对并行口的使用。

二.实验内容

如图-29,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。编程使六个灯按交通灯变化规律亮灭。

三.编程提示:

十字路口交通灯的变化规律要求:

(1)南北路口的绿灯、东西路口的红灯同时亮30秒左右。

(2)南北路口的黄灯闪烁若干次,同时东西路口的红灯继续亮。

(3)南北路口的红灯、东西路口的绿灯同时亮30秒左右。

(4)南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁若干次。

(5)转(1)重复。

四.实验原理图

五.源程序代码

ASM程序:

;***********************************;

;* 十字路口红绿灯模拟演示程序 *;

;* 端口各灯的设置: *;

;* 1红 1黄 1绿 0 0 2红 2黄 2绿 *;

;***********************************;

io8255a equ 28ah-0280h

io8255b equ 28bh-0280h

io_port_addre equ 0cf8h ;32位配置地址端口

io_port_data equ 0cfch ;32位配置数据端口

io_plx_id equ 0540610b5h ;TPC卡设备及厂商ID

data segment

portc1 db 24h,44h,04h,44h,04h,44h,04h ;六个灯可能

db 81h,82h,80h,82h,80h,82h,80h ;的状态数据

db 0ffh ;结束标志

io_9054base_address db 4 DUP(0);TPC卡9054芯片I/O基地址暂存空间

io_base_address db 4 DUP(0) ;TPC卡I/O基地址暂存空间

memory_base_address db 4 DUP(0) ;TPC卡MEMORY基地址暂存空间

interrupt_line db 2 DUP(0) ;TPC卡中断号暂存空间

pcicardnotfind db 0dh,0ah,'TPC pci card not find or address/interrupt error !!!',0dh,0ah,'$'

io9054baseaddress db 0dh,0ah,'TPC pci card 9054 Chip I/O Base Address : ','$' iobaseaddress db 0dh,0ah,'TPC pci card I/O Base Address : ','$'

memorybaseaddress db 0dh,0ah,'TPC pci card Memory Base Address : ','$'

intnumber db 0dh,0ah,'TPC pci card Interrupt Line : ','$'

enter_return db 0dh,0ah,'$'

data ends

stacks segment

db 100 dup(?)

stacks ends

code segment

assume cs:code,ds:data,SS:STACKS,es:data

.386 ;386模式编译

start:

mov ax,data

mov ds,ax

mov es,ax

mov ax,stacks

mov ss,ax

call findtpc1 ;查找TPC卡资源并显示

mov dx,word ptr io_base_address

add dx,io8255b

mov al,90h

out dx,al ;设置8255为C口输出

mov dx,word ptr io_base_address

add dx,io8255a

re_on: mov bx,0

on: mov al,portc1[bx]

cmp al,0ffh

jz re_on

out dx,al ;点亮相应的灯

inc bx

mov cx,20 ;参数赋初值

test al,21h ;是否有绿灯亮

jz de1 ;没有,短延时

mov cx,2000 ;有,长延时

de1: mov di,9000 ;di赋初值5000

de0: dec di ;减1计数

jnz de0 ;di不为0

loop de1

push dx

mov ah,06h

mov dl,0ffh

int 21h

pop dx

jz on ;没有,转到on

exit: mov ah,4ch ;返回DOS int 21h

findtpc1 proc near ;查找TPC卡资源并显示

pushad

pushfd

mov ebx,080000000h

findtpc1_next:

add ebx,100h

cmp ebx,081000000h

jnz findtpc1_continue

mov dx,offset pcicardnotfind ;显示未找到tpc卡提示信息mov ah,09h

int 21h

mov ah,4ch

int 21h ;退出

findtpc1_continue:

mov dx,io_port_addre

mov eax,ebx

out dx,eax ;写地址口

mov dx,io_port_data

in eax,dx ;读数据口

cmp eax,io_plx_id

jnz findtpc1_next ;检查是否发现tpc卡

mov dx,io_port_addre

mov eax,ebx

add eax,14h

out dx,eax ;写地址口

mov dx,io_port_data

in eax,dx ;读数据口

mov dword ptr io_9054base_address,eax

and eax,1

jz findtpc1_next ;检查是否为i/o基址信息

mov eax,dword ptr io_9054base_address

and eax,0fffffffeh

mov dword ptr io_9054base_address,eax ;去除i/o指示位并保存

mov dx,io_port_addre

mov eax,ebx

add eax,18h

out dx,eax ;写地址口

mov dx,io_port_data

in eax,dx ;读数据口

mov dword ptr io_base_address,eax

and eax,1

jz findtpc1_next ;检查是否为i/o基址信息

mov eax,dword ptr io_base_address

and eax,0fffffffeh

mov dword ptr io_base_address,eax ;去除i/o指示位并保存

mov dx,io_port_addre

mov eax,ebx

add eax,1ch

out dx,eax ;写地址口

mov dx,io_port_data

in eax,dx ;读数据口

mov dword ptr memory_base_address,eax

and eax,1h

jnz findtpc1_next ;检查是否为memory基址信息

mov eax,dword ptr memory_base_address

and eax,0fffffff0h

mov dword ptr memory_base_address,eax ;去除memory指示位并保存

mov dx,io_port_addre

mov eax,ebx

add eax,3ch

out dx,eax ;写地址口

mov dx,io_port_data

in eax,dx ;读数据口

and eax,0ffh

mov word ptr interrupt_line,ax ;去除interrupt其它指示位并保存

mov dx,offset io9054baseaddress ;显示i/o提示信息

mov ah,09h

int 21h

mov ax,word ptr io_9054base_address

call findtpc1_disp ;显示i/o基地址

mov dx,offset iobaseaddress ;显示i/o提示信息

mov ah,09h

int 21h

mov ax,word ptr io_base_address

call findtpc1_disp ;显示i/o基地址

mov dx,offset memorybaseaddress ;显示memory提示信息

mov ah,09h

int 21h

mov ax,word ptr memory_base_address+2

call findtpc1_disp ;显示memory基地址高16位

mov ax,word ptr memory_base_address

shr ax,16

call findtpc1_disp ;显示memory基地址低16位

mov dx,offset intnumber ;显示interrupt提示信息

mov ah,09h

int 21h

mov ax,word ptr interrupt_line

call findtpc1_disp ;显示interrupt号

mov dx,offset enter_return ;加回车符,换行符

mov ah,09h

int 21h

popfd

popad

ret

findtpc1 endp

findtpc1_disp proc near ;显示子程序

push dx

push cx

push bx

mov cx,4

mov bx,16

findtpc1_disp_loop1:

push ax

push cx

sub bx,4

mov cx,bx

shr ax,cl

and al,0fh ;首先取低四位

mov dl,al

cmp dl,9 ;判断是否<=9

jle findtpc1_disp_num ;若是则为'0'-'9',ASCII码加30H

add dl,7 ;否则为'A'-'F',ASCII码加37H

findtpc1_disp_num:

add dl,30h

mov ah,02h ;显示

int 21h

pop cx

pop ax

loop findtpc1_disp_loop1

pop bx

pop cx

pop dx

ret ;子程序返回

findtpc1_disp endp

code ends

end start

芯片8255的初始化程序片段是:

mov dx,word ptr io_base_address

add dx,io8255b

mov al,90h

out dx,al ;设置8255为C口输出

mov dx,word ptr io_base_address

add dx,io8255a

re_on: mov bx,0

on: mov al,portc1[bx]

cmp al,0ffh

jz re_on

out dx,al

六、试验运行结果:

修改程序第53、56和57行的cx、cx、di的值,可以改变红黄绿等的点亮时间,具体如下:1)cx=6000、cx=40000、di=50000时,东西向的绿灯和黄灯依次分别点亮1秒,红灯灭,此时南北向的红灯点亮2秒,绿灯和黄灯灭;接着南北向的绿灯和黄灯依次分别点亮1秒,红灯灭,此时东西向的红灯点亮2秒,绿灯和黄灯灭。并依次循环。

2)cx=7000、cx=50000、di=60000时,东西向的绿灯和黄灯依次分别点亮2秒,红灯灭,此时南北向的红灯点亮4秒,绿灯和黄灯灭;接着南北向的绿灯和黄灯依次分别点亮2秒,红灯灭,此时东西向的红灯点亮4秒,绿灯和黄灯灭。并依次循环。

3)cx=8000、cx=65535、di=65535时,东西向的绿灯和黄灯依次分别点亮2.5秒,红灯灭,此时南北向的红灯点亮5秒,绿灯和黄灯灭;接着南北向的绿灯和黄灯依次分别点亮2.5秒,红灯灭,此时东西向的红灯点亮5秒,绿灯和黄灯灭。并依次循环。

4)cx=65535、cx=65535、di=65535时,东西向的绿灯点亮2.5秒,黄灯点亮12.5秒,同时黄灯闪烁的频率变慢,红灯灭,此时南北向的红灯点亮,15秒,绿灯和黄灯灭;接着南北向的绿灯点亮2.5秒,黄灯点亮12.5秒,同时黄灯闪烁的频率变慢,红灯灭,此时东西向的红灯点亮15秒,绿灯和黄灯灭。并依次循环。

华科_计算机系统实验报告

课程实验报告课程名称:计算机系统基础 专业班级: 学号: 姓名: 指导教师: 报告日期:年月日 计算机科学与技术学院

目录 实验1: (1) 实验2: (7) 实验3: (24) 实验总结 (34)

实验1:数据表示 1.1 实验概述 实验目的:更好地熟悉和掌握计算机中整数和浮点数的二进制编码表示。 实验目标:加深对数据二进制编码表示的了解。 实验要求:使用有限类型和数量的运算操作实现一组给定功能的函数。 实验语言:c。 实验环境:linux 1.2 实验内容 需要完成bits.c中下列函数功能,具体分为三大类:位操作、补码运算和浮点数操作。 1)位操作 表1列出了bits.c中一组操作和测试位组的函数。其中,“级别”栏指出各函数的难度等级(对应于该函数的实验分值),“功能”栏给出函数应实现的输出(即功能),“约束条件”栏指出你的函数实现必须满足的编码规则(具体请查看bits.c中相应函数注释),“最多操作符数量”指出你的函数实现中允许使用的操作符的最大数量。 你也可参考tests.c中对应的测试函数来了解所需实现的功能,但是注意这些测试函数并不满足目标函数必须遵循的编码约束条件,只能用做关于目标函数正确行为的参考。 表1 位操作题目列表

2)补码运算 表2列出了bits.c中一组使用整数的补码表示的函数。可参考bits.c中注释说明和tests.c中对应的测试函数了解其更多具体信息。 表2 补码运算题目列表 3)浮点数操作 表3列出了bits.c中一组浮点数二进制表示的操作函数。可参考bits.c中注释说明和tests.c中对应的测试函数了解其更多具体信息。注意float_abs的输入参数和返回结果(以及float_f2i函数的输入参数)均为unsigned int类型,但应作为单精度浮点数解释其32 bit二进制表示对应的值。 表3 浮点数操作题目列表

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

微机原理与接口技术实验报告 班级:自动化(铁道信号) 姓名: ***** 学号: 1121**** 授课教师:福恩

目录 1.实验一 (3) 2. 实验二 (8) 3.实验三 (13) 4.实验四 (22) 5.实验五 (26) 6.实验六 (33) 7.参考文献 (38)

实验一交通灯控制实验 一.实验目的 通过应用接口技术设计十字路口、复杂路口交通灯控制系统,学会应用“微机原理与接口技术”课程所学的X86汇编语言和接口技术掌握可编程并行接口芯片的硬件设计、软件编程,实现十字路口交通灯的模拟控制并思考计算机如何应用在各种控制系统中。 (1)掌握利用X86汇编语言技巧 (2)掌握X86微处理器与可编程并行接口芯片8255A硬件电路设计 (3)熟悉模拟交通灯控制的实现方法并思考如何应用在实际中。 二.实验容 设计一个交通控制系统,该控制系统工作后,交通灯按照如下规律变化: (1)南北路口的绿灯、东西路口的红灯同时亮3秒左右。 (2)南北路口的黄灯闪烁若干次,同时东西路口的红灯继续亮。 (3)南北路口的红、东西路口的绿灯同时亮3秒。 (4)南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁若干次。 (5)返回(1)依次循环。 三.实验电路 如下图,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。编程使六个灯按交通灯变化规律燃灭。 8255动态分配地址: 控制寄存器:0EC0BH A口地址: 0EC08H C口地址: 0EC0AH

红黄绿红黄绿 图1-1 交通灯实验电路图四.程序流程图 五.源程序 CODE SEGMENT ASSUME CS:CODE ;********************************** 工作状态控制字设置 START: MOV DX,0EC0BH ;写控制端口,地址0EC0BH MOV AL,10010000B ;C口方式0输出 OUT DX,AL

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

新疆农业大学机械交通学院 实习(实验)报告纸 班级:机制072 学号: 073731234 姓名:唐伟 课程名称:微机原理及接口技术实习(实验)名称: DEBUG软件的使用 实验时间: 6.22 指导教师签字:成绩: —、实验目的 1.学习DEBUG软件的基本使用方法。 2.掌握8088/8086的寻址方式。 3.掌握数据传送、算术运算逻辑运算等类指令的基本操作。 二、实验内容与步骤 实验内容: 修改并调试以下程序,使之完成30000H开始的内存单元中存入31个先自然递增然后有自然递减的数据(00H~0F~00H)的功能。程序从CS:0100H开始存放。调试完成后程序命名为PCS.EXE并存盘。 实验步骤: (1)用A命令输入程序; (2)用反汇编U命令显示程序及目标码; 存盘程序命令为PCS1.EXE;

三、思考题 1.EXE文件程序的第一条可执行指令的IP等于多少? 答:EXE文件程序的第一条可执行指令的IP等于0010 。 2.在DEBUG环境下显示的程序和数字是什么形式?标号又是什么形式? 答: DEBUG把所有数据都作为字节序列处理。因此它可以读任何类型的文件。DEB UG可以识别两种数据: 十六进制数据和ASCⅡ码字符。它的显示格式是各个字节的十六进制值以及值在32与126之间的字节的相应ASCⅡ码字符。DEBUG总是用四位十六进制数表示地址。用两位数表示十六进制数据。不支持标号。 3.试述本次实验中你学会的DEBUG命令? 答:本次试验我学会了汇编命令(A命令)、.反汇编命令(U命令)、显示当前环境和寄存器内容(R命令、以十六进制和ASCII码形式显示内存单元内容(D命令)

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

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

2

3

实验一:数据传送 实验学时:2 实验类型:验证 实验要求:必修 一.实验目的 1.学习程序设计的基本方法和技能,掌握用汇编语言设计、编写、调试和运行程序的方法; 学习用全屏幕编辑软件QEDIT.EXE建立源程序(.ASM文件); 学习用汇编软件MASM.EXE对源文件汇编产生目标文件(.OBJ文件); 学习用连接程序LINK.EXE对目标文件产生可执行文件(.EXE文件); 学习用调试软件TD.EXE调试可执行文件; 2.掌握各种寻址方法以及简单指令的执行过程。 二.实验器材 PC机 三.实验组织运行要求 1.利用堆栈实现AX的内容与BX的内容进行交换。堆栈指针SP=2000H,AX=3000H,BX=5000H; 2.汇编、调试、观察、记录结果; ⑴用QEDIT.EXE软件输入汇编语言源程序,以.ASM格式文件存盘; ⑵用MASM对源程序进行汇编产生二进制目标文件(.OBJ文件),再用连接程序LINK产生可执行文件(.EXE文件); ⑶用调试软件TD调试、运行程序,观察、记录结果。 四.实验步骤 1.进入子目录E:>\SY86后,利用QEDIT.EXE(简称Q)送入以下汇编语言源程序,并以M1.ASM文件存盘 ⑴汇编语言程序的上机过程 ①进入\SY86子目录 E:>CD\SY86 E:\SY86> ②进入QEDIT.EXE 编辑界面 E:\SY86> Q ③输入文件名*.ASM(如M1.ASM)后,输入源程序 源程序 DATA SEGMENT PARA PUBLIC’DATA’ ;数据段定义 DB 512 DUP(0) DATA ENDS STACK SEGMENT PARA STACK’STACK’ ;堆栈段定义 DB 512 DUP( ?) 4

微机原理及接口技术实验报告

实验一 DEBUG命令及其基本操作 一.实验目的: 1.熟练掌握DEBUG的常用命令,学会用DEBUG来调试程序。 2.深入了解数据在存储器中的存取方法,了解堆栈中数据的压入与弹出方法。 3.掌握各种寻址方法,了解简单指令的执行过程。 二、实验容: 1.打开计算机,在WINXP操作系统下,点击“开始”,选择“运行”,在“打开”一栏中输入“debug”,运行DEBUG应用程序,将出现DEBUG的提示符“-”。 2.在DEBUG提示符后键入字母“-a100”,回车后,屏幕上就会出现下面类似的容: (具体到每个计算机所产生的段地址和偏移地址可能有所不同) 这表示在地址1383:0100处,DEBUG等待用户键入程序助记符,下面键入程序: 3.在DEBUG的提示符后键入G,这是执行程序的命令,然后回车,就可以看到结果了。 4.现在让我们用“d”命令来看一下存储器 在100H~107H这8个单元,程序覆盖了原来的容,右边的字符是组成程序的ASCII码等价字符,圆点表示不可显示字符。 5.下面我们用反汇编命令来查看一下所键入的程序。“U”命令的格式是“U起始地址,终止地址”,即把起始地址到终止地址之间的十六进制码反汇编成汇编语言助记符语句。键入: 大家在屏幕上不仅可以看到地址和助记符,而且还可以看到与汇编语言等价的机器语言。6.现在我们修改存储单元的容,看看显示情况和变化。 我们看到显示的结果发生了变化,这是因为DOS的2号功能调用是显示输入数据的ASCII 码字符。 7.下面我们给程序命名并存盘。在键入“n”后紧跟程序名及扩展名

因为文件的字节数必须事先放在BX和CX中,其中BX保存高16位,CX保存低16位,整个32位的数保存文件的字节数,一般来说,BX设置为0,因为CX可存放的字节数为64K,对于一般的程序已足够了。 8.结束后可用Q命令退出DEBUG程序。 三、实验习题 1.写出完成下列功能的指令序列 (1)传送20H到AL寄存器 (2)将(AL)*2 (3)传送25H到BL寄存器 (4)(AL)*(BL) 问最后的结果(AX)=? 单步执行结果: 2.分别写出完成下列指令要求的指令: (1)将BX的低4位清零; (2)将AX的高4位置1; (3)将DX的低4位取反; (4)将CX的中间八位清零; (5)将AX中与BX中的对应位不相同的位均置1.

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

大学计算机实验报告

《大学计算机基础Ⅰ》课程 实验报告 (以上由学生填写) 西南大学计算机与信息科学学院 计算机基础教育系 2017年12月8日 实验成绩记载 课程Array实验报告一 一、实验题目:Win7得基本操作、文件管理与控制面板得使用 二、实验目得: 1.掌握“计算机"(资源管理器)得使用。 2.掌握文件与文件夹得基本操作。 3.了解显示属性得相关内容,掌握显示属性得设置。 4.掌握鼠标、键盘得属性设置。 5.掌握应用程序得添加/删除功能。 6.掌握输入法得设置方法.

7.掌握系统属性得设置方法。 8.掌握计算机名或域得查瞧及更改方法。 三、实验主要内容及过程(实验主要内容得介绍、主要得操作步骤) (列出实验主要内容通过截屏显示出操作过程以及实验结果) (一)文件与文件夹得管理 1、双击桌面上“计算机"→选择D盘→空白处右击选择“新建”重命名 文件夹→改名为“windows练习”→双击“windows练习"→右击空白处分别新建三个文件夹为“LX1”、“LX2”、“LX3”. 2、双击“C盘”打开→搜索框搜索“*、wmf”单击搜索按钮→选择任 意三个图片文件→右击→选择“复制”→粘贴至“LX1"文件夹中→并对三个文件分别重命名为“图片1、wmf”、“图片2、wmf”、“图片3、wmf”。 3、打开“LX1”文件夹→右击图片“1、wmf”→剪切→打开“LX2” 文件夹→右击空白处点击“粘贴”→选中剩下得两个文件→复制→打开“LX3”文件夹→右击选择“粘贴”→右击“LX2”选择“剪切” →打开“LX1”文件夹→右击选择“粘贴”

4、右击“LX3”文件夹→选择“属性”→选择“常规”属性卡→勾选“隐 藏”→右击“LX2"文件夹→选择“常规"属性卡→勾选“已读"

微机接口实验二(实验报告)

实验二 循环和分支程序设计 学号 201316122 姓名 黄成楠 专业 通信工程 成绩 【实验目的】 (1) 熟悉上机实验流程、调试及查看实验结果。 (2) 熟悉汇编语言编程环境,DOS 调用应用; (3) 编写循环和分支程序,并调试; 【实验内容及步骤】 1、 实验要求: 从键盘输入一系列字符, 以回车符结束,编程统计其中数字字符的个数(不超过100个) 提示: 程序首先调用DOS 功能的1号功能,从键盘输入字符。为得到字符串,可以采用循环结构,连续输入。在输入的过程中通过判断是否是回车来结束输入。其中回车的ASII 码(0DH )。数字的0的ASII 码(30H )9的(39H ) 流程图: Next1函数: Next 函数:

Exit函数: 2、实验内容: DSEG SEGMENT DATA1 DB 100 DUP(?) DATA2 DB 'please input:','$' DSEG ENDS CSEG SEGMENT ASSUME CS:CSEG, DS:DSEG START: MOV AX, DSEG MOV DS, AX MOV BX,0 LEA DX,DATA2 MOV AH,09H INT 21H NEXT2: MOV AH,1 INT 21H CMP AL,0DH JE EXIT CMP AL,30H JAE NEXT3 JMP NEXT2 NEXT3: CMP AL,39H JBE NEXT4 JMP NEXT2 NEXT4: INC BX JMP NEXT2 EXIT: MOV AX,BX MOV CL,10 DIV CL

大学计算机实验报告2

《大学计算机基础Ⅰ》课程 实验报告手册 \ 实验教师(签字) 西南大学计算机与信息科学学院 计算机基础教育系 年月日

一、实验说明 本课程实验分为一般性实验(验证和简单设计)和综合性实验(课程设计)两部分。从第3周开始参考实验任务书(本报告中的五部分)完成每周规定的实验,并根据进度按要求认真填写本实验报告中的六、七部分,此实验报告将作为实验成绩评定的依据之一。 本课程实验从开课学期第3周开始实习,每周2学时,16周结束,共28学时。除统一安排的时间外,学生还可根据自己的实际适当安排课余时间上机。上机内容参见本报告中的“五、实验任务书”部分。 二、实验目的 通过本实验,让学生掌握计算机的基本操作和基本技能,能够学会知识的运用与积累,能够举一反三,具备一定的独立解决问题的能力和信心,培养学生熟练地使用常用软件的能力及严肃认真的科学作风,为今后的学习和工作打下良好的基础。 三、实验要求 1、每次实验课将考勤,并作为实验成绩的重要依据。 2、每次实验前学生必须充分准备每次的实验内容,以保证每次上机实验的效果。实验过程中必须独立完成。 3、学期结束时,每位同学应将自己的《实验报告》交各专业班长或学习委员,由班长或学习委员以专业为单位、按学号从小到大排列好统一交给实验指导老师,否则无实验成绩。 四、实验报告要求 一共要求填写3个阶段性实验报告、1个综合性实验报告和1份学期总结,与每份实验报告对应产生的电子文档交由实验老师指定的位置,该电子文档也将作为实验成绩评定的依据之一。 五、实验任务书 教材:《大学计算机基础》第五版高等教育出版社 实验参考书:《大学计算机基础实践教程》高等教育出版社 实验一:指法练习、汉字录入 实验目的: 1.掌握鼠标和键盘的使用及正确的操作指法。 2.掌握微型计算机的打开和关闭操作 3.熟悉键盘指法和文字录入 4.了解中英文切换,全半角的切换 实验任务: 1.参见实验参考书中的实验1-1-1中的[任务1](7页) 2.参见实验参考书中的实验1-1-1中的[任务3](7页) 实验二:Windows的基本操作和文件管理操作 实验目的: 1.掌握Windows的基本知识和基本操作 2.掌握“Windows资源管理器”和“我的电脑”的使用 实验任务: 1.参见实验参考书中的实验1-2-1中的全部任务(14页) 2.参见实验参考书中的实验1-2-2中的全部任务(18页)

微机原理与接口实验报告1

微机原理与接口实验报告计算机与信息工程学院11级通信工程20111105438 李楠 2.4 分支程序设计实验 一、实验目的 1. 掌握分支程序的结构。 2. 掌握分支程序的设计、调试方法。 二、实验设备 PC机一台,TD-PITE实验装置或TD-PITC实验装置一套。 三、实验内容 设计一数据块间的搬移程序。设计思想:程序要求把内存中一数据区(称为源数据块)传送到另一存储区(成为目的数据块)。源数据块和目的数据块在存储中可能有三种情况. 实验程序清单(例程文件名为:A4-1.ASM) SSTACK SEGMENT STACK DW 64 DUP(?) SSTACK ENDS CODE SEGMENT ASSUME CS:CODE START: MOV CX, 0010H MOV SI, 3100H MOV DI, 3200H CMP SI, DI JA A2 ADD SI, CX ADD DI, CX DEC SI DEC DI A1: MOV AL, [SI]

MOV [DI], AL DEC SI DEC DI DEC CX JNE A1 JMP A3 A2: MOV AL, [SI] MOV [DI], AL INC SI INC DI DEC CX JNE A2 A3: MOV AX,4C00H INT 21H ;程序终止 CODE ENDS END START 四、实验步骤 1. 按流程图编写实验程序,经编译、链接无误后装入系统。 2. 用E命令在以SI为起始地址的单元中填入16个数。 3. 运行程序,待程序运行停止。 4. 通过D命令查看DI为起始地址的单元中的数据是否与SI单元中数据相同。 5. 通过改变SI、DI的值,观察在三种不同的数据块情况下程序的运行情况,并验证程序的功能。

华中科技大学计算机操作系统实验报告

实验目的 掌握Linux操作系统的使用方法; 了解Linux系统内核代码结构; 掌握实例操作系统的实现方法。 一、实验要求 1、掌握Linux操作系统的使用方法,包括键盘命令、系统调用;掌握在Linux 下的编程环境。 ●编一个C程序,其内容为实现文件拷贝的功能; ●编一个C程序,其内容为分窗口同时显示三个并发进程的运行结 果。要求用到Linux下的图形库。 2、掌握系统调用的实现过程,通过编译内核方法,增加一个新的系统调用。 另编写一个应用程序,调用新增加的系统调用。 实现的功能是:文件拷贝; 3、掌握增加设备驱动程序的方法。通过模块方法,增加一个新的设备驱动 程序,其功能可以简单。 实现字符设备的驱动; 4、了解和掌握/proc文件系统的特点和使用方法 ●了解/proc文件的特点和使用方法 ●监控系统状态,显示系统中若干部件使用情况 ●用图形界面实现系统监控状态。 5、设计并实现一个模拟的文件系统(选作) 二、实验一 1、编一个C程序,其内容为实现文件拷贝的功能 要实现文件拷贝功能,主要用到的函数是fopen、fputc、fgetc。 主要用到的头文件: #include #include 设计思路:由scanf函数获取2个文件名,根据其文件名和路径分别打开该2个文件,设置一个循环,从源文件复制1个字节到目 的文件,直到源文件指针到文件尾,最后关闭2个文件。 在可能出错的地方需要加上相应的报错代码,并输出错误信息,以方便调试。 理清楚设计思路后,首先搭建linux下编程环境。 安装gcc:sudo apt-get install build-essential 安装codeblocks:sudo apt-get install codeblocks 在集成开发环境Code::Blocks IDE下根据需求写出相应的源代码copy.c,将程序编译并生成exe可执行文件。 然后手动创建一个测试文件test.txt ,运行copy.exe文件,并输入

微机原理与接口技术_课程设计实验报告

课程设计实验报告 课程:现代微机原理与接口技术题目:键盘扫描实验

班级:数字媒体 1004 学号: 0305100417 学生:海洋 指导老师:天天 日期: 2012.6.18 一、实验目的 (1)掌握键盘扫描的应用及编程 (2)掌握LED的应用 二、实验设备 PC计算机一台,TD-PIT + 实验系统一套。 三、实验原理 (1)8255芯片:8255具有3个带锁存或缓冲的数据端口,它的并行数据宽度为8位。可与外设并行进行数据交换。A口和B口具有中断控制逻辑,在外设与CPU之间可用中断方式进行信息交换。把8255并口和键盘,组成一个键盘装置。通过cpu对8255的控制最总达到键扫的目的。每一个键对应一个ASCII 码字符,通过8255的输入和输出,最终显示在屏幕上。 (2)LED数码显示原理:数码管的 7 个段及小数点都是由 LED 块组成的,显示方式分为静态显示和动态显示两种。数码管在静态显示方式时,其共阳管的位选信号均为低电平,四个数码管的共用段选线 a、b、c、d、e、f、g、dp 分别与单片机的 8 根 I/O 口线相连,显示数字时只要给相应的段选线送低电平。数码管在动态显示方式时,在某一时刻只能有一个数码管被点亮显示数字,其余的处于非选通状态,位选码端口的信号改变时,段选码端口的信号也要做相应的改变,每位显示字符停留显示的时间一般为1-5ms,利用人眼睛的视觉惯性,在数码管上就能看到相当稳定的数字显示。 (3)键盘扫描原理:第一步,使行线为编程的输入线,列线是输出线,拉低所有的列线,判断行线的变化,如果有按键按下,按键按下的对应行线被拉低,否则所有的行

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

第一篇软件实验 实验一存储器块操作实验 一、实验目的 1. 熟悉KEIL集成调试环境和汇编程序的调试方法。 2. 掌握存储器读写方法; 3. 了解内存块的移动方法; 二、实验说明 实验1 指定某存储器的其实地址和长度,要求能将其内容赋值。通过该实验学生可以了解单片机读写存储器的方法,同时也可以了解单片机编程、调试方法。 块移动是单片机常用操作之一,多用于大量的数据复制和图像操作。例程2给出起始地址,用地址加1方法移动块,将指定源地址和长度的存储块移到指定目标为起始地址的单元中去。移动3000H起始的256个字节到4000H起始的256个字节。 三、实验内容 1. 试编程将片内RAM中的数据依次复制到片外RAM。假设源数据区的首地址为40H,目的数据区的首地址为1000H,数据块长度为10H。 流程图: 程序:

运行结果: Memory显示,片内RAM中40H开始数据为03 00 29 00 00 00 71 00 AB 00 00 00 1E 00 00 FF,说明测试数据已经成功输入片内RAM。从片外RAM中1000H位置开始记录为03 00 29 00 00 00 71 00 AB 00 00 00 1E 00 00 FF,说明片内RAM从40H开始的数据已经成功复制到片外从1000H开始的地址。 2. 两个16位无符号二进制数分别存放在片外RAM首址为2000H和2002H单元内,将它们相加,结果存入RAM 30H(低8位)、31H(高8位)。 程序(以0506H+CDEFH为例):

0506H和CDEFH已存入片外单元,运算结果D2F5已存入30H和31H中。 四、思考题 1. 如何将存储块的内容置成某固定值(例全填充为0FFH)?请用户修改程序,完成此操作。答:将源程序中的MOV A, #01H 改为MOV A,#0FFH即可。 2. 若源块地址和目标地址有重叠,该如何避免? 答:先执行一次数据转移操作将源块地址中的数据先暂存入一块地址与目标地址和源块地址均不重叠的存储区,再执行一次数据转移操作将暂存区的数据移入目标地址区域。 五、心得体会 本次实验我学会了数据块的移动和赋值。片内数据的移动和计算比较简便,涉及到片外数据的计算时要增加移动到片内的步骤。当数据需要进行保护时可以设定数据暂存区。 本实验微机原理的第一个实验,刚开始编程时有一点困难。我体会到了汇编语言的特点。与其他语言相比,它不仅要求良好的逻辑能力,而且要求编程者有较好的硬件知识。比如本次实验中,一开始我的编译一直报错,原来是将MOVX A,@DPTR指令错写成了MOV A,@DPTR。MOV指令用于内部RAM数据传送,而MOV用于外部数据传送。我体会到只有充分了解单片机的硬件结构,才能使用正确的指令,让编程正确无误的进行。这也是我今后要加强学习的重点。 实验二数值转换实验 一、实验目的

大学生计算机实验报告(完整版)

《大学计算机基础》实验3.1 文件和文件夹的管理 实验报告 专业班级:经贸1103 姓名——- 学号201118910315 指导教师:———完成时间:2011.10 一、实验题目 文件和文件夹的管理 二、实验目的 1.熟悉Windows XP的文件系统。 2.掌握资源管理器的使用方法。 3.熟练掌握在Windows XP资源管理器下,对文件(夹)的选择、新建、移动、复制、删除、重命名的操作方法。 三、实验内容 1.启动资源管理器并利用资源管理器浏览文件。 2.在D盘创建文件夹 3.在所创建文件夹中创建Word文件。 4.对所创建文件或文件夹执行复制、移动、重命名、删除、恢复、创建快捷方式及设置共享等操作。 四、实验步骤 (一)文件与文件夹管理 1.展开与折叠文件夹。右击开始,打开资源管理器,在左窗格中点击“+”展开,点击“—”折叠 2.改变文件显示方式。打开资源管理器/查看,选择缩略、列表,排列图标等

3.建立树状目录。在D盘空白处右击,选择新建/文件夹,输入经济贸易学院,依次在新建文件夹中建立经济类1103班/王帅、王鹏 4..创建Word并保存。打开开始/程序/word,输入内容。选择文件/另存为,查找D盘/经济贸易学院/1103班/王帅,单击保存 5.复制、移动文件夹 6.重命名、删除、恢复。右击文件夹,选择重命名,输入新名字;选择删除,删除文件 7.创建文件的快捷方式。右击王帅文件夹,选择发送到/桌面快捷方式

8.设置共享文件。右击王帅,选择属性/共享/在网络上共享这个文件/确定 9.显示扩展名。打开资源管理器/工具/文件夹选项/查看/高级设置,撤销隐藏已知文件的扩展名 (二)控制面板的设置。 1.设置显示属性。右击打开显示属性/桌面、屏幕保护程序 2.设置鼠标。打开控制面板/鼠标/按钮(调整滑块,感受速度)、指针 3.设置键盘。打开控制面板/键盘/速度(调整滑块,感受速度)、硬件 4.设置日期和时间打开控制面板/日期和时间 5.设置输入法。打开控制面板/区域与语言选项/详细信息/文字服务与输入语言

实验报告计算机操作系统-windows7

实验报告计算机操作系统-Windows 7 班级 178 学号姓名 【实验目的】 1. 掌握Windows 7的基本操作; 2. 熟练掌握资源管理器、文件与文件夹的管理方法 3. Windows 7控制面板的使用 【实验内容和步骤】 一.Windows7基本操作和文件管理 完成实践教程第18页中的实验并回答下列问题。 1.如何新建文件或文件夹 在桌面空白处单击鼠标右键,选择“新建”--“文件夹”,键入新文件夹的名称,然后按 ENTER 键。 2.如何选定多个相邻文件或文件夹如何选定多个不相邻文件和文件夹如何选中全部文件和文件夹 选定多个相邻文件的操作是:单击第一个文件,然后按住Shift 键,再单击最后一个文件 Shift 键,就是Ctrl 键上面那个。 选定多个不相邻文件操作是:单击第一个文件,然后按住Ctrl 键的同时,单击其他待选定的文件 Ctrl 键,就是键盘最左下角那个。 如何选中全部文件和文件夹:ctrl+A 3.试列举对文件/文件夹进行复制和移动的方法

第一种方法:可以用鼠标右键进行操作。 第二种:可用ctrl+c 进行复制;ctrl+x 进行移动(也就是剪切)ctrl+v进行粘贴 4.如何对已删除的文件进行“还原” 如果没清空回收站,在回收站里还原就行。 5.如何对按照修改日期搜索文件或文件夹 我的电脑右键选搜索,打开搜索界面,在搜索选项里按日期,选中并输入日期 6.如何“隐藏”文件/文件夹如何显示被“隐藏”起来的文件/文件夹图标 把想隐藏文件的文件夹或文件,打开文件夹属性,隐藏打钩或去掉即可以选择这个文件是否隐藏或显示打开任意的文件夹的工具选项卡的文件夹选项——查看选项卡——隐藏文件和文件夹上面有2个选择,选择显示隐藏文件夹即可看到隐藏文件 二.Windows7系统设置 完成实践教程第23页中的实验并回答下列问题。 1.如何改变桌面的背景、屏幕的分辨率并设置屏幕保护程序。 开始—控制面板—外观和个性化—个性化,然后进行桌面背景、窗口颜色、屏幕保护调整。

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

微机原理与接口技术 实验报告 学院:计算机与通信工程学院 专业:计算机科学与技术 班级: 学号: 姓名:

实验一8259中断控制器应用实验 一、实验目的 1.掌握PC机中断处理系统的基本原理。 2. 掌握可编程中断控制器8259的应用编程方法。 二、实验内容 1.PC机内中断实验。使用单次脉冲模拟中断产生。验证中断处理程序,在显示器屏幕上显示一行预设定的字符串。 2.PC机内中断嵌套实验。使用单次脉冲模拟两个中断源的中断产生,填写中断处理程序,体会中断嵌套的过程。 3.扩展多中断源查询方式应用实验。利用实验平台上8259控制器作为中断扩展源,编写程序对8259控制器的中断请求进行处理。 三、实验步骤 1.实验1-1:PC机内中断应用实验 (1)按接线图连好接线,调用程序源代码8259-1.asm,观察实验现象,屏幕显示结果截图如下: (2)自设计实验。改变接线方式,将单次脉冲连到USB核心板上的IRQ10插孔上,参考本实验代码,编程实现IRQ10中断。(注意:考虑PC机内中断级联的方式,参看前面的原理说明),代码如下: DA TA SEGMENT MESS DB 'IRQ10 ',0DH,0AH, '$' DA TA ENDS

CODE SEGMENT ASSUME CS:CODE, DS:DA TA START: MOV AX, CS MOV DS, AX MOV DX,OFFSET INT10 MOV AX,2572H ;设置IRQ10对应的中断向量 INT 21H IN AL,21H ;读取中断屏蔽寄存器 AND AL,0F3H ;开放IRQ3中断和从片 OUT 21H,AL IN AL,0A1H ;从片的中断屏蔽寄存器 AND AL,0FBH ;开放IRQ10中断 OUT 0A1H,AL MOV CX,10 STI WAIT: JMP W AIT INT10: MOV AX, DATA ;中断服务程序 MOV DS, AX MOV DX, OFFSET MESS MOV AH, 09 ;在屏幕上显示每次中断的提示信息 INT 21H MOV AL, 20H ; 发出EOI结束中断到PC内主片的地址20H OUT 20H, AL LOOP NEXT IN AL, 21H ;读中断屏蔽寄存器,获取中断屏蔽字 OR AL, 08H ;关闭IRQ3中断 OUT 21H, AL ;将中断屏蔽字送到中断屏蔽寄存器 STI ;置中断标志位 MOV AH, 4CH ;返回DOS INT 21H NEXT: IRET ;中断返回 CODE ENDS END START 调用程序代码,观察实验现象,屏幕显示截图如下:

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

微原硬件实验报告 班级:07118 班 学号:070547 班内序号:26 姓名:杨帆

实验一熟悉实验环境及IO的使用 一,实验目的 1. 通过实验了解和熟悉实验台的结构,功能及使用方法。 2. 通过实验掌握直接使用Debug 的I、O 命令来读写IO 端口。 3. 学会Debug 的使用及编写汇编程序 二,实验内容 1. 学习使用Debug 命令,并用I、O 命令直接对端口进行读写操作, 2.用汇编语言编写跑马灯程序。(使用EDIT 编辑工具)实现功能 A.通过读入端口状态(ON 为低电平),选择工作模式(灯的闪烁方式、速度 等)。 B.通过输出端口控制灯的工作状态(低电平灯亮) 三,实验步骤 1.实验板的IO 端口地址为EEE0H 在Debug 下, I 是读命令。(即读输入端口的状态---拨码开关的状态) O 是写命令。(即向端口输出数据---通过发光管来查看) 进入Debug 后, 读端口拨动实验台上八位拨码开关 输入I 端口地址回车 屏幕显示xx 表示从端口读出的内容,即八位开关的状态ON 是0,OFF 是 1 写端口 输入O 端口地址xx (xx 表示要向端口输出的内容)回车 查看实验台上的发光二极管状态,0 是灯亮,1 是灯灭。 2. 在Debug 环境下,用a 命令录入程序,用g 命令运行 C>Debug -a mov dx, 端口地址 mov al,输出内容 out dx, al

mov ah, 0bh int 21h or al, al jz 0100 int 20h -g 运行查看结果,修改输出内容 再运行查看结果 分析 mov ah, 0bh int 21h or al, al jz 0100 int 20h 该段程序的作用 3.利用EDIT 工具编写汇编写跑马灯程序程序 实现功能 A.通过读入端口状态(ON 为低电平),选择工作模式(灯的闪烁方式、速度等)。 B.通过输出端口控制灯的工作状态(低电平灯亮) C>EDIT 文件名.asm 录入程序 按Alt 键打开菜单进行存盘或退出 编译文件 C>MASM 文件名.asm 连接文件 C>LINK 文件名.obj 运行文件或用Debug 进行调试。 四,程序流程图

《大学计算机基础》上机实验报告

《大学计算机基础》 上机实验报告 班级: 姓名: 学号: 授课教师: 日期:年月日

目录 一、Windows操作系统基本操作 ............................. - 1 - 二、Word文字处理基本操作 ................................ - 4 - 三、Excel电子表格基本操作 ............................... - 6 - 四、PowerPoint幻灯片基本操作 ............................ - 8 - 五、网页设计基本操作..................................... - 9 - 六、Access数据库基本操作 ............................... - 10 - 上机实验作业要求: ○1在实验报告纸上手写并粘贴实验结果; ○2每人将所有作业装订在一起(要包封面); ○3全部上机实验结束后全班统一上交; ○4作业内容不得重复、输入的数据需要有差别。

实验名称一、Windows操作系统基本操作 实验目的1、掌握Windows的基本操作方法。 2、学会使用“画图”和PrntScr快捷键。 3、学会使用“计算器”和Word基本操作。 实验内容 1、日历标注 利用“画图”和Word软件,截取计算机上日历的图片并用文字、颜色、图框等标注出近期的节假日及其名称,并将结果显示保存在下面(参考下面样图)。 运行结果是: 主要操作步骤是: 2、科学计算 利用“计算器”和Word软件,计算下列题目,并将结果截图保存在下面(参考样图)。 ○1使用科学型计算器,求8!、sin(8)、90、74、20、67、39、400、50.23、ln(785)的平均值、和值,并用科学计数法显示。 运行结果是: ②将以下十、八、十六进制数转换为二进制数:(894.8125)10、(37.5)8、(2C.4B)16 运行结果是:(需要下载使用“唯美计算器”) ○3计算下列二进制数的加法与乘法:101.1+11.11;1101*1011 运行结果是:(参考样图) 写出主要操作步骤: 3、实验心得体会

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

江南大学物联网工程学院 《计算机控制系统》 实验报告 实验名称实验三积分分离PID控制仿真实验 实验时间2017.11.2 专业自动化班级1503 姓名汪涛学号1070415333 指导教师陈珺实验成绩

一、实验目的与要求 1、学会PID 三个系数的选取。 2、了解积分分离值的模拟实验选取。 3、掌握SIMULINK 的仿真方法。 二、仿真软硬件环境 PC 机,MATLAB R2012b 。 三、实验原理 如图,R 为输入,C 为输出。计算机不断采人误差E ,进行积分判别与PID 运算,然后判结果是否溢出(若溢出则取最大或最小值),最后将控制量输送给系统。 四、PID 算法 PID 控制规律为:? ++ =t D I p dt t de T dt t e T t e K t U 0 ]) ()(1)([)( 其中:e(t)为控制器输入;u(t)为控制器输出。对上式进行零初始条件下的拉氏变换,得PID 控制器的传递函数: )1 1()()()(S T S T K S E S U S D D I P ++== 五、整定调节参数与系统开环增益 用临界比例带法整定参数。设采样周期为50ms ,先去掉微分与积分作用,只保留比例控制,增大K P ,直至系统等幅振荡,记下振荡周期T u 和振荡时所用比例值K pu ,按以下公式整定参数(比例、积分、微分调节): T=0.167Tu ,K p =0.27/K pu ,T I =0.4T u ,T D =0.22T u

六、SIMULINK仿真结构图 七、自定义函数设计 实现积分分离功能的自定义函数设计(文件名jffl): function y=jffl(x)y=x; EI=5(或2);else y=0;if abs(x)<=EI end

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

微机原理与接口技术课程设计报告题目:继电器控制实验设计 学院电子与信息工程学院 专业通信工程年级 10级 学生姓名 xx 学号 _ xxxxxxxx 指导教师 xx 完成时间 2012/11/9 二O一二年十一月

目录 摘要 (3) 一.实验目的 (4) 二.实验原理 (4) 1 实验基本原理 (4) 2.1继电器结构原理图 (5) 2.2继电器工作原理 (5) 3.1 8255A组成 (6) 3.2 8255A结构框图 (7) 3.3 8255A工作方式 (7) 三.实验内容 (11) 四.程序设计 (12) 4.1程序流程图 (12) 4.2程序代码 (12) 五.实验小结........................................................ 错误!未定义书签。 六.参考文献 ......................................................... 错误!未定义书签。

摘要 现代自动控制设备中,都存在一个电子电路与电气电路的互相连接问题,一方面要使电子电路的控制信号能够控制电气电路的执行元件,另一方面又要为电子线路的电气电路提供良好的电气隔离,以保护电子电路和人身的安全。继电器便能完成这一桥梁作用。 本课程设计主要采用了控制继电器和8255A芯片来完成。电路的控制端为高电平时,继电器工作常开触点吸合,连触点的LED灯被点亮。当控制端为低电平时,继电器不工作。执行时,对应的LED将随继电器的开关而亮灭。 关键词:控制继电器 8255A芯片

一.实验目的 1、进一步熟悉汇编语言的设计编写 2、掌握继电器控制的基本原理 3、掌握继电器控制编程方法 4、掌握8255芯片的应用 二.实验原理 1、利用8255A PA0输出高低电平,控制继电器的开合,以实现对外部装置的控制。 硬件线路原理图接线如下: 2、继电器 在现代工业中,人员和电子电路安全保障一直是首要考虑的问题,尤其在一些高危恶劣环境下,如高温高压等,如何在保障操作人员和电子电路安全的前提下对电路进行良好地控制便成为了工业进步不可回避的问题。一方面要使电子电路的控制信号能够控制电气电路的执行元件,另一方面又要为电子线路的电气电路提供良好的电气隔离,以保护电子电路和人身的安全,符合这种需求的元件便是继电器。 控制继电器是一种自动电子控制器件,它适用于远距离接通和分断交、直流小容量控制电路, 它具有控制系统和被控制系统,通常应用于自动控制电路中,

计算机接口技术实验报告

实验一无条件输出端口的构成与地址译码 【地址译码电路】 【实验板的线路接法】 将电路图上的A1-A7端口依次PIN到PIN_3、PIN_4、PIN_7、PIN_8 、PIN_9、PIN_24、PIN_25,再用八股导线连接到实验箱中的XA1-XA7上; 将电路图上的IOW端口PIN到PIN_17,通过转换单元连接到实验箱上的IOW端口; 将电路图上的D1-D8端口依次PIN到PIN_27、PIN_28、PIN_30、PIN_31 、PIN_32、PIN_40、PIN_41、PIN_42,再用八股导线连接到实验箱中的XD1-XD7上; 将电路图上的OUT1-OUT8端口依次PIN到PIN_43、PIN_44、PIN_45、PIN_47 、PIN_48、PIN_51、PIN_52、PIN_53,再用八股导线连接到实验板上二极管对应的的D0-D7上。 最后,给实验板接上电源线和地线。 【输出数据至端口的程序段】 #include #include #include #include #include #include void main() { outp( 0x3000, 0x00 ); } 【Led规律性变化的程序段】 #include #include #include #include #include #include void main()

相关文档
最新文档