• slider image 442
  • slider image 483
  • slider image 484
  • slider image 485
  • slider image 486
  • slider image 487
:::


Browsing this Thread:   1 Anonymous Users






Re: C18之 Swapf 問題
#7
資深會員
資深會員


查看用戶資訊
>>是否C編譯器判斷PORTD是屬於BSR=0xF
>>所以C編譯器在MOVLB後面放0xF

基本上,是的.

Swapf只是個define,一定會產生movlb指令,至於movlb指令是否能根據有作用才產生code,無作用不產生code,或許optimization最佳化,可以解決這問題(可惜,我的compiler不是Full function,無法試)

#define Swapf(f,dest,access) {_asm movlb f swapf f,dest,access _endasm }

發表於: 2009/11/1 0:17
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: C18之 Swapf 問題
#6
高級會員
高級會員


查看用戶資訊
是否C編譯器判斷PORTD是屬於BSR=0xF
所以C編譯器在MOVLB後面放0xF

發表於: 2009/10/31 13:21
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: C18之 Swapf 問題
#5
高級會員
高級會員


查看用戶資訊
我知道
SWAPF 0xf83, F, ACCESS
這行不需要知道BSR
所以這行MOVLB 0xf 目前沒有意義


我知道他不會出現MOVLB PORTD
而是應該MOVLB 0xF83
但是為什麼出現MOVLB 0xf ?
他是根據什麼道理留下0xf ?
是取0xF83的0xF嗎 ?

這才是我的問題
求教大家

發表於: 2009/10/31 13:11
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: C18之 Swapf 問題
#4
資深會員
資深會員


查看用戶資訊
你看到的是, asm反組譯,結果不會有PORTD出現
010F MOVLB 0xf
3A83 SWAPF 0xf83, F, ACCESS

就如樓上所述,詳情請看spec, 有關於 movlb的作用

發表於: 2009/10/30 12:52
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: C18之 Swapf 問題
#3
新會員
新會員


查看用戶資訊
Data sheet裡
搜尋關鍵字access bank

發表於: 2009/10/30 9:51
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: C18之 Swapf 問題
#2
高級會員
高級會員


查看用戶資訊
我的問題重新敘述一次
------------------------------------
在p18f4520.h裏有這段內容

#define Swapf(f,dest,access) {_asm movlb f swapf f,dest,access _endasm }

我的問題是
根據movlb f
應該是翻成MOVLB PORTD
為什麼是MOVLB 0xf ?

發表於: 2009/10/30 9:09
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


C18之 Swapf 問題
#1
高級會員
高級會員


查看用戶資訊
C語言:
Swapf(PORTD, 1, 0);

翻譯成組語為:
010F MOVLB 0xf
3A83 SWAPF 0xf83, F, ACCESS

其中MOVLB後面為什麼是 0xf ?

請教大家一下!

謝謝!

發表於: 2009/10/29 18:39
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部







You can view topic.
不可以 發起新主題
You cannot reply to posts.
You cannot edit your posts.
You cannot delete your posts.
You cannot add new polls.
You cannot vote in polls.
You cannot attach files to posts.
You cannot post without approval.
You cannot use topic type.
You cannot use HTML syntax.
You cannot use signature.
You cannot create PDF files.
You cannot get print page.

[進階搜尋]


:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------