zoukankan      html  css  js  c++  java
  • 汇编语言(王爽)-实验十四(20130909)

    assume cs:code,ds:data,es:info_num
    data segment
        db '11/11/11 11:11:11$'        ;预设字符串
    data ends
    info_num segment
        db 9,8,7,4,2,0        ;端口时间地址列表
    info_num ends
    code segment
    start:
        mov ax,data
        mov ds,ax
        mov si,0        ;初始指向字符串首
        mov ax,info_num
        mov es,ax
        mov bp,0        ;指向端口时间地址列表首
        mov cx,6
    s:
        push cx
        mov al,es:[bp]
        out 70h,al
        in al,71h
        mov ah,al        ;暂存al
        mov cl,4
        shr ah,cl        ;获取BCD码高四位
        and al,00001111B    ;获取BCD码低四位
        add al,30h
        add ah,30h
        mov ds:[si],ah
        mov ds:[si+1],al    ;将时间信息写入字符串指定位置
        add si,3        ;指向字符串下一写入位置
        inc bp            ;指向端口时间地址列表下一位置
        pop cx
        loop s
    
        mov ah,2
        mov bh,0
        mov dh,12
        mov dl,50
        int 10h            ;调用系统BIOS中断例程设置光标位置
    
        mov ah,9
        mov dx,0        ;指向字符串首
        int 21h            ;调用DOS中断例程显示字符串
    
        mov ah,2
        mov bh,0
        mov dh,24
        mov dl,0
        int 10h            ;开始没有这一段,其他并没有问题,就是发现调用21h例程后光标位置直接在字符串的下一行
                    ;通过这一段重置光标位置
    
        mov ax,4c00h
        int 21h
    code ends
    end start
  • 相关阅读:
    C++中简单使用HPSocket time
    error: cannot lock ref ‘refs/remotes/origin/[branch]’

    linux 挂载移动硬盘
    音频读写
    无法连接NVIDIA驱动
    nodejs
    read the docs
    用 scp 在 linux 之间传输文件
    配置 frp 常用功能
  • 原文地址:https://www.cnblogs.com/tsembrace/p/3309327.html
Copyright © 2011-2022 走看看