1. 程式人生 > >ASCII 碼和十六進位制數的轉換 -51微控制器

ASCII 碼和十六進位制數的轉換 -51微控制器

題目:用查表法將一位十六進位制數轉換為ASCII碼,入口引數放在內部RAM 50H中,出口引數在R0中。
要求:用匯編語言完成程式設計(用DB  "0","1"......)。
懸賞分:0 -  解決時間:2010-1-15 15:52
;---------------------------------
最佳答案:

轉換程式如下:

D2A:
      MOV  A, 50H
      ADD  A, #2            ;加上查表時的指令地址和表格首址的差
      MOVC A, @A + PC
      MOV  R0, A
      RET
TABLE:
      DB "0123456789ABCDEF" ;用:DB '0', '1', ...,形式也可以
;完
;---------------------------------
回答者:做而論道 - 十二級   2010-1-10 08:35
提問者對於答案的評價:謝謝~~
原題網址:

http://zhidao.baidu.com/question/132543701.html
;======================================================
又是一個題目:

微控制器程式設計!!將 ASCII 碼轉化為十六進位制數,設 ASCII 碼存放在累加器中,轉化結果存放到B中。
提示:由 ASCII 碼錶可知,30H-39H為0-9的 ASCII 碼,41H-46H為A-F的 ASCII 碼。
將 ASCII 碼減 30H(0-9)或 37H(A-F)就可獲得對應的十六進位制數。
我個人覺得很有難度的作業!望有學之士能 幫我做出!!萬分感謝!!
懸賞分:20 - 解決時間:2010-1-6 12:28
;--------------------------------
正確答案:

;程式如下:
      MOV  B,  A
      CLR  C
      SUBB A,  #3AH
      JC   DDD
      SUB  A,  #07H
DDD:  ADD  A,  #0AH
      XCH  A, B
      RET
;---------------------------------
回答者: 做而論道 - 十二級   2010-1-5 11:23
答案的評價:這是最佳答案。
原題網址:http://zhidao.baidu.com/question/132090518.html
;======================================================