看板 ASM 關於我們 聯絡資訊
不好意思,借用這個標題 因為我現在也有一個類似的情況 我目前想用8051來寫一個計時的程式 就是接到一個觸發信號後開始啟動計時器計時 然後接到外部中斷的信號之後停止計時 接著把計時的時間(TH0與TL0)給輸出至七段顯示器 而TH0與TL0是分開的暫存器 我是想把這兩個暫存器的值轉成十進位(這樣以後輸出至七段顯示器應該會比較好用= =) 但是無論是用二進位表示,或是使用十六進位 要轉成十進位的話,也還是會勢必用到兩個暫存器 (像乘或除都是,而且還會分別儲存到A跟B) 請問有辦法將小於65536的值儲存至一個暫存器裡面嘛? 還是有什麼更好的方法? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.229.229.10
MasterChang:轉的數值可以存到RAM裡面,不一定要放在暫存器,而且 07/10 23:00
MasterChang:暫存器顧名思義就是「暫存」... 07/10 23:01
ck1362:恩...我的意思是我現在可能有一筆16bit的資料,但是8051的暫 07/10 23:09
ck1362:器是8bit,這樣我無法使用一些邏輯運算或是搬移的指令,我是 07/10 23:11
ck1362:有想過自定義出一個16bit的暫存器,可是我無法使用指令來處 07/10 23:12
ck1362:理這筆資料了XD 07/10 23:14
ruemann:不太清楚你要的功能,請再詳述,8051是只能處理8bits的資 07/11 00:03
ruemann:料,若要使用16bits的資料,那麼一些處理就要自己做了 07/11 00:04
ck1362:恩,8051只能處理8bit的資料,而我現在要把TH0與TL0兩個8bit 07/11 00:11
ck1362:的值給組合成16Bit的值,但是我又必須對這16bit的值作處理 07/11 00:12
ck1362:所以不知道該如何下手@@ 07/11 00:14
ruemann:能給個例子嗎? 07/11 00:21