Re: 關於CORCON暫存器的SATA位元問題?(dsPIC33FJ128MC802晶片)
|
||||
---|---|---|---|---|
版主
|
在 dsPIC 系列的運算是以 ACCA & ACCB 為主,可以查到的說明是以 dsPIC30F/33F 的組合語言裡的說明。你可以參考一下 : dsPIC30F/33F Programmer’s Reference Manual 裡的說明。請用搜尋 " saturation" 查詢書裡的說明。
https://ww1.microchip.com/downloads/en/devicedoc/70157c.pdf 如貼圖所示: 沒使用及有使用 saturation 的設定時,對 ACCA & ACCB 的數值操作是不一樣的。
發表於: 2021/4/27 10:45
|
|||
|
Re: 關於CORCON暫存器的SATA位元問題?(dsPIC33FJ128MC802晶片)
|
||||
---|---|---|---|---|
版主
|
最簡單的解釋是以一般使用 16 位元無符號加法為例:
非飽和演算法:0x8002 + 0x8001 = 0x0003 (發生溢位,只取後 16-bit 資料) 飽和演算法:0x8002 + 0x8001 = 0xFFFF (取最大值出來,沒有考慮溢位問題) 飽和演算法定義:當發生計算結果大於可表示的最大值或者小於可表示的最小值的時候,結果為這個最大值或者最小值 非飽和演算法:如果結果溢出 則直接去掉溢出位,剩下的就是結果。
發表於: 2021/4/27 10:39
|
|||
|
關於CORCON暫存器的SATA位元問題?(dsPIC33FJ128MC802晶片)
|
||||
---|---|---|---|---|
資深會員
|
CORCON暫存器的bit7-->SATA為ACCA Saturation Enable bit,在型錄解說中,設定
1 = Accumulator A saturation enabled 0 = Accumulator A saturation disabled 請問設為1時,ACCA為saturation enabled,到底實際會對累加器A有什麼影響?此設定是應用在什麼地方?
發表於: 2021/4/26 23:09
|
|||
|