zoukankan      html  css  js  c++  java
  • 用汇编实现十六进制数转化为八进制数(除法)

    用汇编实现十六进制数转化为八进制数,可用除法或是移位。

    ;课堂作业
    ;十六进制转八进制
    DATA SEGMENT
      NUM1 DB 08H
      NUM2 DB 40H
      NUM3 DB 48H
    DATA ENDS   
    
    STACK SEGMENT PARA  STACK
      BUF DW 20H DUP (0)
      LEN EQU $-BUF
    STACK ENDS
    
    CODESEG SEGMENT
    ASSUME CS:CODESEG,SS:STACK,DS:DATA
    START:
    ;初始化堆栈段ss和数据段ds
      MOV AX,STACK
      MOV SS,AX
      MOV SP,LEN
      MOV AX,DATA
      MOV DS,AX
      
        MOV AH,0
        MOV AL,NUM2        ;MOV AL,NUM1
        MOV DL,08H
        DIV DL    ;余数保存在AH,商保存在AL中
        
        CALL DISP_1_HEX
        MOV AL,AH
        CALL DISP_1_HEX
        CALL DISP_CREF
        
        MOV AH,4CH
        INT 21H
    
    
    ;输出AL的数字和字母
    DISP_1_HEX:  
      PUSH AX
      PUSH DX
      PUSHF
      MOV DL,AL
      CMP DL,09
      JBE L_1  ;小于等于9则跳过下一条语句
      ADD DL,27H ;大于10则转换为小写字母并执行到下面的L_1的RET结束
                    ;数字10与字符a差为39(27H)
    ;数字输出(1的ascii码为31H)
    L_1:  
      ADD DL,30H ;数字转换为字符
      MOV AH,02H
      INT 21H
      POPF
      POP DX
      POP AX 
    RET
    
    ;输出回车换行
    DISP_CREF: 
     PUSH DX
     PUSH AX
     MOV AH,02H
     MOV DL,0DH
     INT 21H
     MOV DL,0AH
     INT 21H
     POP AX
     POP DX
    RET
    
    CODESEG ENDS
    END START

    输出结果为对应的八进制

  • 相关阅读:
    python实现JWT
    Flask上下文管理源码--亲自解析一下
    python小猪蹄儿
    AI数据分析(三)
    AI数据分析(二)
    AI数据分析(一)
    Linux目录结构
    Linux安装与基本命令
    Spring MVC基础环境搭建
    Windows 上解压缩版 MySQL 配置
  • 原文地址:https://www.cnblogs.com/jdemarryme/p/9071585.html
Copyright © 2011-2022 走看看