计算机综合实践.docx

上传人:b****7 文档编号:9635922 上传时间:2023-02-05 格式:DOCX 页数:10 大小:26.92KB
下载 相关 举报
计算机综合实践.docx_第1页
第1页 / 共10页
计算机综合实践.docx_第2页
第2页 / 共10页
计算机综合实践.docx_第3页
第3页 / 共10页
计算机综合实践.docx_第4页
第4页 / 共10页
计算机综合实践.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

计算机综合实践.docx

《计算机综合实践.docx》由会员分享,可在线阅读,更多相关《计算机综合实践.docx(10页珍藏版)》请在冰豆网上搜索。

计算机综合实践.docx

计算机综合实践

 

计算机综合实践

报告

 

专业电气工程及其自动化

班级1103

姓名王学妮

学号aDH1111t0044

实验1实时时钟程序设计

一、实验目的

1.加深对课堂讲授内容的理解,掌握编程语言的语法规则。

2.熟悉所用的计算机系统的操作方法,了解和熟悉程序开发环境。

3.学习上机调试程序的方法和技巧,提高编程能力。

二、实验内容

设计一个时钟显示程序,要求利用定时器0的定时中断记录时间。

三、基本设备与器材配置

通用微型计算机一台。

软件环境:

1.操作系统:

DOS、Windowsxp

2.语言环境:

Debug调试程序、MASM宏汇编。

四、程序清单

assumecs:

code

codesegment

start:

;清屏

movah,6;

moval,0;

movch,0

movcl,0;

movdh,24

movdl,79

movbh,7

int10h

l:

;年

moval,9

movsi,0

calls

movbyteptres:

[160*12+2*40+4],'/'

;月

moval,8

movsi,6

calls

movbyteptres:

[160*12+2*40+10],'/'

;日

moval,7

movsi,12

calls

movbyteptres:

[160*12+2*40+16],''

;取时数并送入显存

moval,4

movsi,18

calls

movbyteptres:

[160*12+2*40+22],':

'

;取分数并送入显存

moval,2

movsi,24

calls

movbyteptres:

[160*12+2*40+28],':

'

;取秒数并送入显存

moval,0

movsi,30

calls

jmpl

movax,4c00h

int21h

;*******************子程序******************

;名称:

s

;作用:

取出BCD码并送入显存

;入参:

al为单元数,si为显存偏移地址变址

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

s:

pushax

pushbx

pushsi

out70h,al

inal,71h

movcl,4

movah,al

shrah,cl

andal,00001111b

addal,30h

addah,30h

movbx,0b800h

moves,bx

movbx,160*12+2*40

moves:

[bx+si],ah

moves:

[bx+si+2],al

popsi

popbx

popax

ret

codeends

endstart

四、程序运行结果

实验28255并行接口键盘程序设计

一、实验目的

1.加深对课堂讲授内容的理解,掌握编程语言的语法规则。

2.熟悉所用的计算机系统的操作方法,了解和熟悉程序开发环境。

3.学习上机调试程序的方法和技巧,提高编程能力。

二、实验内容

利用09H型中断设计一个自己的键盘中断服务程序,程序设计应考虑在退出时不破坏原有的设置。

三、基本设备与器材配置

通用微型计算机一台。

软件环境:

1.操作系统:

DOS、Windowsxp

2.语言环境:

Debug调试程序、MASM宏汇编。

四、程序清单

dsegsegment

addr_pointdw?

countdw?

bufferdb20hdup('')

promptdb'Pleaseenterthecharacters:

'

db0dh,0ah,'$'

messagedb'bufferoverflow',0dh,0ah

save_ip9dw?

save_cs9dw?

dsegends

csegsegment

assumecs:

cseg,ds:

dseg

mainprocfar

start:

pushdx

subax,ax

pushax

movax,dseg

movds,ax

movax,offsetbuffer

movaddr_point,ax

movcount,0

moval,09h

movah,35h

int21h;saveinterruptvectoroftype09h

movsave_ip9,bx

movsave_cs9,es

movdx,offsetkbint

pushds

movax,segkbint

movds,ax

moval,09h

movah,25h

int21h

popds;setinterruptvectorof9

inal,21h

andal,0fdh

out21h,al

sti

jmp$

 

ret

mainendp

;keyboardinterruptserver

kbintprocnear

pushax

pushbx

cld

inal,60h;readinthechar

pushax

inal,61h

movah,al

oral,80h

out61h,al

xchgah,al

out61h,al

popax

testal,80h;ispressorreleasecode?

jnzcont

movbx,addr_point

mov[bx],al

calldisp

incbx

inccount

movaddr_point,bx

check:

cmpcount,32

jbcont

inal,21h

oral,02h

cont:

cli

moval,20h

out20h,al

popbx

popax

iret

kbintendp

;diplaycharcode

dispprocnear

pushax

pushcx

pushdx

movch,2

movcl,4

nextb:

rolal,cl

pushax

movdl,al

anddl,0fh

ordl,30h

cmpdl,3ah

jldispit

adddl,7h

dispit:

movah,2

int21h

popax

decch

jnznextb

movah,2

movdl,','

int21h

popdx

popcx

popax

ret

dispendp

csegends

endstart

三、程序运行结果

程序运行后,将会修改09H中断

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > IT认证

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1