[問題] 8051-請問有關這段文字的意思

看板ASM (組合語言)作者 (brotherD)時間5年前 (2019/01/21 14:03), 編輯推噓1(1011)
留言12則, 3人參與, 5年前最新討論串1/1
網址: https://reurl.cc/2mxVn 這段文章主要在介紹如何減少ISR的overhead,在CPU selection的第二段講到8051的架構 使得它的ISR可以寫得非常簡短,原因是: 8051 allows one to allocate a register bank to a particular block of code--such as an ISR--and thus drastically reduce the number of registers that need to be stacked 因為小弟我碰過的架構不多,不太懂"allocate a register bank to a particular block of code"這段意思,想麻煩各位大大幫小弟解惑一下。 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.163.216.18 ※ 文章網址: https://www.ptt.cc/bbs/ASM/M.1548050613.A.2BD.html

01/21 16:47, 5年前 , 1F
isr中斷到回復需要保存很多東西 用regiser保存會更快
01/21 16:47, 1F

01/21 16:48, 5年前 , 2F
而8051可以指定register bank
01/21 16:48, 2F

01/21 16:49, 5年前 , 3F
01/21 16:49, 3F

01/21 16:51, 5年前 , 4F
01/21 16:51, 4F

01/21 17:04, 5年前 , 5F
忘了說 多個banks為什麼會快的另一個原因 例如你指定bank0
01/21 17:04, 5F

01/21 17:05, 5年前 , 6F
給isr0 ,bank 1給isr1 所以越多的bank給予指定function
01/21 17:05, 6F

01/21 17:06, 5年前 , 7F
你當然比只有單一個bank給多個isr競爭共用好
01/21 17:06, 7F

01/21 17:07, 5年前 , 8F
不然每次都要重新copy或回復isr需要的code或data
01/21 17:07, 8F

01/22 08:15, 5年前 , 9F
因為8051內定堆疊的SP值為07h,如果沒有更改SP值的話,
01/22 08:15, 9F

01/22 08:17, 5年前 , 10F
在每次的Push或呼叫副程式時,SP值會增加,就會破壞Bank1~
01/22 08:17, 10F

01/22 08:19, 5年前 , 11F
Bank3的R0~R7的值,所以一般SP值會設定在67h或E7h
01/22 08:19, 11F

01/30 09:43, 5年前 , 12F
謝謝兩位大大精闢ㄉ解說
01/30 09:43, 12F
文章代碼(AID): #1SHM2rAz (ASM)
文章代碼(AID): #1SHM2rAz (ASM)