美文网首页
【汇编】将ASCII码表示的十进制数转换成二进制数

【汇编】将ASCII码表示的十进制数转换成二进制数

作者: lemonTreeTop | 来源:发表于2016-06-15 18:40 被阅读2159次

程序要求

流程图

汇编代码

STACK1  ENDS 
DATA    SEGMENT 
    BUF     DB    30H,30H,30H,31H,32H
DATA    ENDS 
CODE SEGMENT 
    ASSUME CS:CODE,DS:DATA   
START:  MOV  AX,DATA 
          MOV  DS,AX 
         MOV  SI,OFFSET BUF  ;把BUF的偏移地址存到SI中去
         MOV  BX,000AH 
         MOV  CX,0004H    ;  cx作为循环控制计数器
        MOV  AH,00H 
        MOV  AL,[SI] 
        SUB  AL,30H 
A1:   IMUL BX 
        ADD  AL,[SI+01] 
        SUB  AL,30H 
        INC  SI 
        LOOP A1     
        MOV [SI],AX
        CALL SHOW  ;调用子程序
        MOV  AX,4C00H 
        INT  21H    
SHOW   PROC NEAR     ; 输出到屏幕,用16进制表示
        MOV  AL,DS:[SI]
        AND  AL,0F0H                 
        MOV  CL,4
        SHR  AL,CL 
        CMP  AL,0AH                  
        JB   C2        
        ADD  AL,07H    
C2:   ADD  AL,30H    
        MOV  DL,AL                   
        MOV  AH,02H 
        INT  21H 
        MOV  AL,DS:[SI] 
        AND  AL,0FH                  
       CMP  AL,0AH 
       JB   C3 
       ADD  AL,07H
C3:    ADD  AL,30H 
        MOV  DL,AL                   
        MOV  AH,02H 
        INT  21H 
             RET          
 SHOW  ENDP  
CODE ENDS 
     END START

相关知识:

LOOP指令 1.CX=CX-1 2.判断cx中的值,不为0,执行标号程序 A1, 为0,向下执行 (即执行 MOV [SI],AX)

DEBUG分析

1.程序运行到 MOV [SI],AX 的时候,已经完成循环,这个指令是把AX的内容存到SI对应的内存单元中,由SI的值可以知道已经循环了4次


2.观察内存中内容的变化
-D 查看内存数据
-T 单步执行

相关文章

  • 第一模块: 开发基础(2)

    二进制 二进制与十进制之间的转换求342的二进制数 ASCII码 计算通过ASCII码将数字转换成文字 每一个0或...

  • 【汇编】将ASCII码表示的十进制数转换成二进制数

    程序要求 流程图 汇编代码 相关知识: LOOP指令 1.CX=CX-1 2.判断cx中的值,不为0,执...

  • 微机原理与汇编作业

    微机原理与汇编作业一、进制转换1.将下列十进制数转换成二进制和十六进制:(1)37 (2)231 (...

  • 2022-07-02  汇编语言 进制

    构成机器语言的是二进制数,而在汇编语言中,则使用十进制数和十六进制数记录数据。若仅仅写出123这样的数字,表示的就...

  • 20160909进制转换

    1.二进制,十进制,十六进制和ASCII码 二进制转十进制(相加法):2+2²+...+2的n次方相加转换成十进制...

  • 勾股数

    字母O表示八进制,D表示十进制,B二进制,H十六进制 二进制转八进制 二进制数转换成八进制数:从小数点开始,整数部...

  • 2、8、10、16进制之间的转换

    字母O表示八进制,D表示十进制,B二进制,H十六进制 二进制转八进制 二进制数转换成八进制数:从小数点开始,整数部...

  • Huffman压缩文件结构

    文件结构 说明 该文件结构针对ASCII码设计,字符的种类数设为,由于ASCII码中可显示字符十进制编码范围是 ,...

  • c语言学习 day2

    转义字符 \ddd dd表示1-3个八进制数字 转换成十进制代表的ASCII码值 \xdd dd表示...

  • 非负整数十进制与二进制之间的转换

      本文将简单的讨论非负整数的N进制与十进制之间如何进行转换。 一、十进制与二进制的表示   先来看十进制数的表示...

网友评论

      本文标题:【汇编】将ASCII码表示的十进制数转换成二进制数

      本文链接:https://www.haomeiwen.com/subject/ecdpdttx.html