+ -
当前位置:首页 → 问答吧 → 新手求助,十六进制屏幕输出

新手求助,十六进制屏幕输出

时间:2010-12-07

来源:互联网

把al=00001100
输出=十六进制0CH (H也要带)

怎么做????

作者: z307450494   发布时间: 2010-12-07

http://blog.sina.com.cn/s/blog_5f18ff880100m9a8.html
希望对你有帮助。对于H,你只要:
dl=48h 
ah=2
int 21h

作者: leetow2003   发布时间: 2010-12-07

二进制四位四位地转换为十六进制字符格式输出,然后再输出个 'H' 字符

作者: zara   发布时间: 2010-12-07

Assembly code

;入口:DL
;出口:无
;功能:显示8位寄存器的内容
bytehex        proc uses ax bx cx 
        mov cx,2 
        mov ah,2        
        xor dh,dh 
bhex:        
        push cx 
        mov cl,4 
        rol dl,cl 
        push dx 
        and dl,0fh 
        cmp dl,10 
        jb bhex1 
        add dl,37h 
        int 21h 
        jmp bhex2 
bhex1:  
        add dl,30h 
        int 21h 
bhex2:
        pop dx 
        pop cx 
        loop bhex 
        ret 
bytehex        endp

作者: masmaster   发布时间: 2010-12-07

在ret前加‘H'
mov dl,'H'
int 21h

作者: masmaster   发布时间: 2010-12-07





assume cs:code ds:data 
data segment 
 BIAO db '123456789ABCDEF' 
data ends
code segment 
start: 
  mov ax,data 
  mov ds,ax 
  lea si,BIAO ;表头进si  
  xor bx,bx ;bx清零
  al=00001100  
  mov bl,al
  shr bl,1
  shr bl,1
  shr bl,1
  shr bl,1 ;bl为高4位
  mov dl,[si+bx] ;dl取表中‘0’
  mov ah,2
  int 21
  mov bl,al
  and bl,0fh
  mov dl,[si+bx] ;dl取表中‘c'
  mov ah,2
  int 21h
  mov ax,400h
  int 21

 
code ends
end start

作者: znxllyuan   发布时间: 2010-12-07

引用 5 楼 znxllyuan 的回复:
assume cs:code ds:data
data segment
BIAO db '123456789ABCDEF'
data ends
code segment
start:
mov ax,data
mov ds,ax
lea si,BIAO ;表头进si
xor bx,bx ;bx清零
al=00001100
mov ……

哦 返回之前
  mov dl,'H'
  mov ah,2
  int 21h

作者: znxllyuan   发布时间: 2010-12-07