2.txt

来自「设在字节变量ASCHEX中存放着一个用ASCII码表示的16进制数字」· 文本 代码 · 共 100 行

TXT
100
字号
设在字节变量ASCHEX中存放着一个用ASCII码表示的16进制数字,先要将它转换成控制数码管显示的7段代码,
       并存入RESULT单元(字节变量)。试编出完成这一任务的程序
      16进制数字与相应7段代码的对应表如下:
   
16进制数字 0 1 2 3 4 5 6 7 8 9 A B C D E F 
7段代码 3FH 06H 5BH 4FH 66H 6DH 7DH 07H 7FH 6FH 77H 7CH 39H 5EH 79H 71H 

 
DATA   SEGMENT


   BLOCK  DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H


          DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H


   ASCHEX DB ?


   RESULT DB ?


   DATA   ENDS


   CODE   SEGMENT


          ASSUME CS:CODE,DS:DATA


   STR    PROC  FAR


          PUSH DS


          XOR AX,AX


          PUSH AX


          MOV AX,DATA


          MOV DS,AX


   BEGIN: MOV AL,ASCHEX


          CMP AL,39H


          JG  DONE


          SUB AL,30H


          JMP LAST


   DONE:  SUB AL,37H


          JMP LAST


   LAST:  MOV AH,0


          MOV BX,OFFSET BLOCK


          ADD Bx,AX


          MOV CL,[BX]


          MOV RESULT,CL


          RET


    STR   ENDP


    CODE  ENDS


          END STR


  

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?