Pevná řádová čárka
Napsal: 14 pro 2012, 09:37
Ahoj. Potřeboval bych poradit s výpočty v pevné řádové čárce. Aktuálně se snažím rozchodit násobení celého čísla číslem desetinným, dejme tomu např. 853 * -0,425. Pro zobrazení desetinného čísla se běžně na 16ti bitových MCU používá formát Q15, tedy nejvyšší bit nese znaménko a následující už vlastní hodnotu. Protože počítám jak s celými čísly, tak desetinnými, chtěl jsem aplikovat formát Q15.16, kdy by informaci o znaménku nesla celá část. A teď, co jsem ne zcela pochopil: jak v tomto formátu zakódovat těch -0,425. Když nastavím MSB celé části do jedničky (= záporné číslo), a zbývající bity do nuly, nebude celá část rovna nule, ale dle dvojkového doplňku -32768. Jediné, co mě napadlo, by bylo se na dvojkový doplněk vykašlat a hold mít dvě nuly, zápornou a kladnou. Ještě mě napadlo použít strukturu s dvěma položkami: celou částí a desetinnou částí, kdy by každá z nich měla znaménkový bit. Nemáte někdo více zkušeností s pevnou řádovou čárkou, každá informace dobrá. Děkuji moc.