欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    汇编语言实现实时时钟显示.docx

    • 资源ID:3613310       资源大小:37.67KB        全文页数:5页
    • 资源格式: DOCX        下载积分:6.99金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要6.99金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    汇编语言实现实时时钟显示.docx

    汇编语言实现实时时钟显示汇编语言实现实时时钟显示 data segment msg db 'Current time is: ' hours db ?,? db ':' minutes db ?,? db ':' seconds db ?,?,0 oldint1c dd ? ;旧的入口参数 position dw 0 ;时间显示位置 color db 07h data ends code segment ;代码段 assume cs:code,ds:code start: mov ax,data mov ds,ax jmp run newint1c: push ax push bx push cx push dx push si push di push es mov ax,data mov ds,ax mov ax,0200h ;获取系统时间,chhours clminutes DHseconds,均为BCD码格式 int 1ah ;时钟服务 mov al,ch lea si,hours ;时 call BCD mov al,cl lea si,minutes ;分 call BCD mov al,dh lea si,seconds ;秒 call BCD mov ax,0b800h ;显存地址 ,采用直接写显存的方法输出字符 mov es,ax ;es:di 指向显存地址 lea si,position ;设置时间显示位置 mov di,si lea si,msg disp: mov al,si inc si or al,al jz exit cld stosb inc di jmp disp exit: pop es pop di pop si pop dx pop cx pop bx pop ax jmp ds:oldint1c ;执行旧的中断服务程序 BCD proc push ax ;用于将BCD码转换为ASCII码 入口 al-BCD码 mov ah,al ;出口 shr ah,1 shr ah,1 shr ah,1 shr ah,1 and al,0fh add ax,'00' ;加上0的ASCII码 xchg ah,al mov si,ax pop ax ret BCD endp run: mov ax,data mov ds,ax mov ax,351ch ;获取原1ch的入口参数 int 21h mov word ptr ds:oldint1c,bx ;保存旧的入口参数 mov word ptr ds:oldint1c+2,es push ds push cs pop ds lea dx,newint1c mov ax,251ch ;设置新1ch的入口参数 int 21h pop ds mov dx,offset run + 10h ;1节=16字节 mov cl,4 shr dx,cl ;相当于除以16以计算节大小 call Control ;调用控制子程序 call flash mov ah,31h ;结束并驻留, DX:保留的长度 int 21h Control proc push ax push cx push bx call HideCursor ;隐藏光标 xor bx,bx ;置0,时间显示位置 getkey: mov ah,0 ;获取键盘扫描码 int 16h cmp ax,011bh ;esc-011bh jz return cmp ax,4800h ;up-4800h jz up cmp ax,5000h ;down-5000h jz down cmp ax,4b00h ;left-4b00h jz left cmp ax,4d00h ;right-4d00h jz right jmp changeColor ; up: cmp bx,160 jc getkey sub bx,160 jmp changePos down: add bx,160 jmp changePos left: cmp bx,0 jz getkey sub bx,2 jmp changePos right: add bx,2 changePos: call flash mov ds:position , bx jmp getkey changeColor: ;sub al,30h mov ds:color,ah call flash jmp getkey return: pop bx pop cx pop ax ret Control endp flash proc push ax push bx push cx push dx mov ah,06h ;AH使用显示服务的向上卷屏功能 mov al,00h ;AL滚动行数,0为整个窗口 mov bh,ds:color ;BH显示页面 mov ch,0 mov cl,0 ;CH,CL窗口左上角坐标 mov dh,24 mov dl,79 ;DH,DL窗口右下角坐标,因为清全屏所以为 int 10h ;调用中断 pop dx pop cx pop bx pop ax ret flash endp HideCursor proc push ax push dx push bx mov ah,02 mov dh,24 mov dl,00 mov bh,00 int 10H pop bx pop dx pop ax ret HideCursor endp code ends end start

    注意事项

    本文(汇编语言实现实时时钟显示.docx)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开