如何轉換為二進制數值? |
答題得分者是:阿信
|
cls9215
一般會員 發表:18 回覆:28 積分:9 註冊:2004-12-21 發送簡訊給我 |
|
cls9215
一般會員 發表:18 回覆:28 積分:9 註冊:2004-12-21 發送簡訊給我 |
|
㊣
版主 發表:261 回覆:2302 積分:1667 註冊:2005-01-04 發送簡訊給我 |
假設現值為99H 1>取低四位元,存至另一暫存器.(存入9)
2>取高四位元(得到144),將其*5/8就會得到90
3>再與9相加存入暫存器,就會得到99 這可以寫成function來call,試試吧!! P.S: /8要先做 發表人 - ㊣ 於 2005/06/09 13:43:17
------
------------------------------------------------------------------------- 走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!? |
阿信
版主 發表:111 回覆:983 積分:813 註冊:2005-03-10 發送簡訊給我 |
|
cls9215
一般會員 發表:18 回覆:28 積分:9 註冊:2004-12-21 發送簡訊給我 |
我有照2位前輩的說法作,但是結果不是63h...是哪裡錯了呢?
阿信的做法: mov a,t1_num1 mov b,#10h ;B=10H (BCD) div ab ;99H/10H = 9H (a) 餘 9H (b) mov tbuf,b ;把b放到tbuf儲存 mov b,#10 ;B=10=0AH (BIN) mul ab ;9*10=90(a) add a,tbuf ;a=90 9=99=63H mov tvalue,a mov dig_t1,tvalue =================================== 我依照 正 版主的說法做的: mov a,t1_num1 anl a,#0fh mov tbuf,a ;將低4位元存入tbuf暫存器 mov a,t1_num1 anl a,#f0h mov b,#00001000b ;除於8 div ab mov tbuf2,a ;tbuf2儲存除以8後的商 mov b,#00000101b ;乘於5 mov a,tbuf2 mul ab mov tbuf2,a ;*5/8的結果存入tbuf2 mov a,tbuf2 add a,tbuf ;將高4bit*5/8後的結果加上低4bit的值 mov tvalue,a mov dig_t1,tvalue |
㊣
版主 發表:261 回覆:2302 積分:1667 註冊:2005-01-04 發送簡訊給我 |
|
阿信
版主 發表:111 回覆:983 積分:813 註冊:2005-03-10 發送簡訊給我 |
|
cls9215
一般會員 發表:18 回覆:28 積分:9 註冊:2004-12-21 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |