- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验三DOS和BIOS中断功能调用
?、实验口的
掌握DOS系统提供的DOS和BIOS功能调用方法。
巩固汇编语言程序编写方法。
二、实验任务
在屏幕上建立一个10行20列的小窗口,先清窗口,然后在窗口的授后一行行首输入 字符串“You are welcome!,向上滚一行,重复此过程,直到整个窗口显示完毕。
程序代码:
.model smal1
.stack
.code
Esc_key equ lbh ;退出程序
win_ulc equ 30 ;屏幕左上角的列数
win_ulr equ 8 ;屏幕左上角的行数
win_lrc equ 50 ;屏幕右下角的列数
win_lrr equ 17 ;屏幕右下角的行数
main proc far
mov
ah, 6
;清屏功能
mov
al,0
mov
bh, 7
mov
ch, 0
mov
cl,0
mov
dh, 24
mov
dl,79
int
lOh
mov
dx, 0
;光标设置功能
mov ah, 2
int lOh
locate:
mov ah, 2
;将光标设为最下血一行的左端
mov dh, win_lrr
mov dl, win_ulc
mov bh, 0
int lOh
mov ex, 16d
;循环15次输入时上滚
get_char: ;输入字符
mov ah, 1 ;当输入you are welcome!”时,即15个字符时上滚
int 21h
cmp al, Esc_key ;输入esc时退出程序
jz exit
loop get_char
mov ah, 6 ;屏幕上港功能
mov al, 1
mov ch, win_ulr
mov cl, win ulc
mov dh, win lrr
mov dl, win_lrc
mov bh, 7
int lOh
jmp locate
exit: ;退出程序
mov ax,4c00h
int 21h
main endp end main
程序运行截图:
C:\cd masn
C: \jnasnn?asn? 6 .asm
Microsoft R Macro Assembler Uersion 5.00
Copyright C Microsoft Corp 1981-1985, 1987? All rights reserved.
Object filename [6.OBJ]:
Source listing [NUL.LST]:
Cross-reference [NUL.CRF]:
50564 + 415356 Bytes symbol space free
0 Warning Errors
0 Severe Errors
C:\nasnlink 6
Microsoft R Overlay Linker Uersion 3.60
Copyright C Microsoft Corp 1983-1987. All rights reserved.
Bun File [6.EXEJ:
List File [NUL.MAPJ:
Libraries [.LIBJ:
C: \jnasn6 .exe
完成DOS系统time命令功能,先将当前时间(时值:分值)显示出來,再提示输入更 改的时间(时值:分值),并完成新时间的设置。
程序代码:
CODE
SEGMENT
ASSUME CS:CODE, DS:CODE, ES:CODE
ORG 100H
9
BEGTN:
JMP START
T1MESTR
HOUR
MTN
DB 00:00,$
DB OOH
DB OOH
NOW_STR
INPUT_STR
DB ODH, OAH,5 Current time is ,
DB ODH, OAH, Enter new time (hh:mm):
ERRMSG
OKMSG
DB ODH, OAH, Cannot set new time. ,
DB ODH, OAH, OK.,
NEW_LINE
DB ODH, OAH, $
9
;主程序开始
START:
MOV AX, CS
MOV DS, AX
;设置DS与CS相同。(数据段与代码段相同)
CALL GET_T1ME_TO_BUFE
CALL NUM_TO_STR
;取系统时间到HOUR和MIN
;转换数值HOIK和MIN到ASCII
码形式TIMESTRo
CALL DTSP_TTME_STR
;显示当前时间
TIMESTRo
CALL INPUT_TTME_STR
;接收键盘输入新的时间到
HOUR 和 MINo
CALL STR_TO_NUM
;转换人$门1码形式TIMESTR到数值
CALL SET_TIME
;CALL GET_TTME_TO_BUFF
;按HOUR和MI
您可能关注的文档
最近下载
- 10万吨有色冶炼废物资源综合利用项目环境影响报告书(重新报批).pdf VIP
- 2.4《最后一片叶子》-【中职专用】高一语文(高教版2023·基础模块上册).pptx VIP
- 军事历史(空军工程大学)网课章节测试答案.pdf
- 案例25-李娟利等与张波集资房买卖的合同 纠纷上诉案.docx VIP
- MAYA灯光材质渲染.ppt VIP
- 中西文化对比提升学生视野教学研究课题报告.docx
- 《材质与灯光渲染》教学大纲.docx VIP
- 《角色绑定与动画》教学大纲.docx VIP
- 高标准农田建设项目复核审计服务115页.docx VIP
- 临床输血操作技术规范、输血制度(2025版).pptx VIP
原创力文档


文档评论(0)