Hirdetés
- Új kezdeményezéssel pofoznák ki a Linuxot a játékosoknak
- Gaming notebook topik
- Két 8 GB-os VGA-ra teszi fel ezt a negyedévet az NVIDIA?
- Milyen TV-t vegyek?
- OLED TV topic
- SSD kibeszélő
- Milyen billentyűzetet vegyek?
- Bambu Lab 3D nyomtatók
- A legrosszabb CPU-k – az ExtremeTech szerint
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
Új hozzászólás Aktív témák
-
dobragab
addikt
válasz
maestro87
#5473
üzenetére
Nem ismerem a fordítód #pragma-kezelését, de szerintem nem így működik. A #pragma fordító-függő, mindegyik azt csinál vele, amit akar, és a számára értelmezhetetlen #pragma-kat ignorálja. Szóval ha ezt nem tudja értelmezni, akkor is lefordul.
--FLOAT=32
Én úgy értelmeztem a dokumentációt, hogy ezt a parancssori argumentumok között kéne odaadni a fordítónak.
cc whatever.c --FLOAT=32
-
jattila48
aktív tag
válasz
maestro87
#5473
üzenetére
A float példádból az látszik, hogy a pontos bináris ábrázolásból az alsó legalább 7, de legfeljebb 12 bitet elhagyja, majd kerekít. Ha csak 6 bitet hagyna el, akkor a kiírásban pontos értéket, míg ha 13 bitet, akkor kisebb értéket (6119424) kaptál volna. Pl. lehet, hogy az alsó 8 bitet hagyja el (valószínűleg így van). Szerintem a float-od 24 bites, amiből a mantissza 16 bit (előjellel együtt, vagyis 15 értékes bit), a karakterisztika pedig 8 bit. Ha 32 bites float-ra is ugyanez a kiírás adódik, akkor a mantissza szintén 16 bit, viszont a karakterisztika is 16 bit (bár ennek nem sok értelme lenne). A float érték úgy ábrázolódik, hogy a mantissza 15 értékes bitjét 0,xxxxxxxxxxxxxxx értéknek tekinted (0, kettedes vessző után jönnek a mantissza bitjei), amit megszorzol 2^karakterisztika-val. 8 bites karakterisztikával kb. 2^127 nagyságrendű számokat tudsz ábrázolni, vagyis bőven elég nagyokat. Viszont 16 bites mantisszával legfeljebb 1/2^16 relatív pontosság érhető el. Az, hogy hány tizedes jegyre (vagy "kettedes" jegyre) pontos az ábrázolás (ez az abszolút hiba), függ a szám nagyságától, ezért csak relatív pontosságról van értelme beszélni (abszolút hiba/pontos érték). A példádban a relatív hiba 64/6123456, ami megfelel a 15-16 bites mantisszának. Ami a szorzást illeti: egész biztos, hogy mindkét operandusod float-ra fog konvertálódni, vagyis 8 bites karakterisztikával bőven ábrázolható lesz, viszont a relatív hiba ugyanúgy megmarad 1/2^16 felső korláttal. Mivel az operandusok már hibával terheltek, ezért a szorzat is az lesz (szorzásnál a relatív hibák összeadódnak). Tehát nem a kiírásnak vannak korlátai (legfeljebb normál alakban írja ki), hanem a szám ábrázolásnak, amit tudomásul kell venni, és így kell velük dolgozni. Természetesen ezekkel a korlátokkal is megvalósíthatsz tetszőleges pontosságú egész vagy float aritmetikát, azonban ez igen macerás.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Media Player Classic és Home Cinema (MPC-HC)
- Új kezdeményezéssel pofoznák ki a Linuxot a játékosoknak
- PlayStation 5
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Tokgyártó leplezi le újból a Galaxy S26 Ultra formáját
- BestBuy topik
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Gaming notebook topik
- Linux Mint
- Két 8 GB-os VGA-ra teszi fel ezt a negyedévet az NVIDIA?
- További aktív témák...
- 27% Corsair Dominator Titanium Rgb Ddr5 96Gb (2X48Gb) 7000Mhz Cl40 !
- iPhone 15 Plus 128GB Black 100% akkuval!
- Gamer PC-Számítógép! Csere-Beszámítás! I7 7700K / RTX 2080 / 16GB DDR4 / 480GB SSD
- iPhone 15 128GB - fekete 2 év garancia (felbontott)
- Apple iPhone 15 256GB, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! 1TB Samsung 980 Pro NVMe SSD meghajtó garanciával hibátlan működéssel
- HIBÁTLAN iPhone 14 Pro 512GB Deep Purple -1 ÉV GARANCIA - Kártyafüggetlen
- ÚJRA! 256GB NVMe SSD, 1 év gar
- Xiaomi Redmi Note 13 5G 256GB,Újszerű,Dobozaval,12 hónap garanciával
- ÁRGARANCIA!Épített KomPhone Ryzen 5 5600X 16/32/64GB RAM RX 7600 8GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


