請問8051要如何將COUNTER由16進制的數字轉為10進制 |
缺席
|
Qhair
一般會員 發表:1 回覆:0 積分:0 註冊:2004-12-24 發送簡訊給我 |
|
virgoriver
一般會員 發表:1 回覆:3 積分:0 註冊:2004-08-21 發送簡訊給我 |
我已在模擬器上試個過沒問題,
剰下的3位數, 你自己來吧!
digit1 equ 30h digit2 equ 31h digit3 equ 32h digit4 equ 33h digit5 equ 34h ;r1 msb ;r0 lsb mov digit1,#0 mov digit2,#0 mov digit3,#0 mov digit4,#0 mov digit5,#0 d10000: clr c ;How many times can it be subtracted by 10000(2710h)? mov a,r0 subb a,#10h mov r2,a mov a,r1 subb a,#27h jc d1000 mov r1,a ;remainder mov a,r2 mov r0,a inc digit1 jmp d10000 d1000: clr c ;How many times can it be subtracted by 1000(0318h)? mov a,r0 subb a,#0e8h mov r2,a mov a,r1 subb a,#03h jc d100 mov r1,a ;remainder mov a,r2 mov r0,a inc digit2 jmp d1000 d100: |
㊣
版主 發表:261 回覆:2302 積分:1667 註冊:2005-01-04 發送簡訊給我 |
用組語寫的話,很麻煩,高低位元組要分開.最後還要注意進位問題,寫起來會又臭又長.用c的話: 假設Timer0計數
int x,y,d4,d3,d2,d1,d0; x=TL0 256*TH0; d4=x/10000; 萬位 x=x000; d3=x/1000; 千位 x=x00; d2=x/100; 百位 x=x0; d1=x/10; 十位 d0=x; 個位------------------------------------ 生命的目的,在幻化出多采多姿的組合。 生活的意義,在捕捉住稍縱即逝的感動。 ------------------------------------
------
------------------------------------------------------------------------- 走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!? |
cls9215
一般會員 發表:18 回覆:28 積分:9 註冊:2004-12-21 發送簡訊給我 |
|
㊣
版主 發表:261 回覆:2302 積分:1667 註冊:2005-01-04 發送簡訊給我 |
引言: 是8051嗎?? 可否使用"DA"這個指令 如"DA A"將a中的數值轉成10進制的數值呢 >>< face="Verdana, Arial, Helvetica"> =.= 你去看一下這個DA的指令說明吧. 再說,現在是FFFF轉10進制,8051只有8bit...... ------------------------------------ 生命的目的,在幻化出多采多姿的組合。 生活的意義,在捕捉住稍縱即逝的感動。 ------------------------------------
------
------------------------------------------------------------------------- 走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!? |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |