现在的位置: 首页 > 综合 > 正文

汇编学习笔记(3)

2018年04月15日 ⁄ 综合 ⁄ 共 398字 ⁄ 字号 评论关闭

题目描述:编写一段子程序BINIHEX,完成十六进制的输出,需要输出的书在AX。

分析:数据在寄存器是二进制保存的,每四位对应一位十六进制,可以通过循环移位输出。

代码:

code segment
	start:
	assume cs:code
main proc  far

    mov ax,1256
    call BINIHEX
    
    
    mov ah,4CH
    int 21h
    ret
MAIN  ENDP


;=================================

BINIHEX  proc near

   mov bx,ax
   mov cH,4         ;循环次数
   
   L:
      MOV CL,4
      rol bx,CL
      mov dl,bl
      and  dl,0FH    ;保留最低四位
      cmp dl,10      ;判断是否小于10
      jb  next
      add dl,7H      ;大于10(A..F),多加7
    
  next:
       add dl,30H   ;输出
       mov ah,02h
       int 21h
       DEC CH
       JNZ L
       
     ret
 BINIHEX  ENDP
 		code ends
 end start

结果

抱歉!评论已关闭.