- Samsung Galaxy S24 FE - később
- iPhone topik
- Íme az új Android Auto!
- One mobilszolgáltatások
- Huawei Watch GT 3 Pro - korlátolt szépség
- Profi EKG-s óra lett a Watch Fitből
- Fotók, videók mobillal
- Csíkszélességben verné az Exynos 2600 a Snapdragon 8 Elite 2-t
- Xiaomi 13 - felnőni nehéz
- Google Pixel 8a - kis telefon kis késéssel
Új hozzászólás Aktív témák
-
modder
aktív tag
válasz
Spam123 #2042 üzenetére
ha unsigned shortban vagy intben tárolod a számokat, akkor a biteket nem tömbelemekként éred el, hanem bitszintű operátorokat kell használnod. maszkolnod, shiftelned kell &, >> és << operátorokkal.
Talán kicsit bonyolultabb, de szerintem szebb megoldás, ha már alacsony szintű működést kell szimulálni. Meg kevesebb helyet is foglalsz így, mert egy boolean változó a memóriában szintén lefoglal vagy 2 byteot, ami összesen 32 byte. -
Vico87
tag
válasz
Spam123 #2039 üzenetére
Szia!
Szükséged lesz további tagfüggvényekre is. Egyrészt decimálisból is kell konvertálnod kettes komplemensre, másrészt valahogy a hibákat is kell tudni jelezni (pl. overflow, underflow, nullával osztás, ...). Ami jó volna, ha implementálnád ezeket a műveleteket operátor túlterheléssel is, így tömörebb, olvashatóbb kódot is lehet majd írni a tesztelésre.
A kettes komplemenses számábrázolás egyik előnye, hogy az alapműveletek úgy mennek, mint "sima" bináris számoknál egy-két apróságtól eltekintve. Az angol wikipédián szépen le is vannak írva, példákkal ([link]). Az osztásra sokféle módszer van ([link]), ha nem teljesítménykritikus a feladat, akkor elég a legegyszerűbb, naiv módszer, azaz a sorozatos kivonás, ami kb 5 sor kód, felhasználva a korábban implementált kivonást. Persze, ha gyorsan kell az eredmény, akkor a linkelt oldalon le vannak írva sokkal trükkösebb és egyben gyorsabb algoritmusok is.
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Cooler Master CK550 RGB mechanikus (barna switch/magyar kiosztás)
- Újszerű Meta Quest 3 (128gb), 1 év garanciával +kiegészítőkkel
- Asus Prime B560M-K + i5 1500 + be quiet! + 32 Gb Patriot Viper 3.200 Mhz Beszámitok!
- Eladó Konfig Ryzen 7 7700 32GB DDR5 1TB SSD RX6800XT 16GB!
- 5700x / B550i ITX Aorus / 32GB HyperX / Lianli vízhűtés /1000 SFX-L corsair táp/ 1TB nvme
- ÁRGARANCIA! Épített KomPhone Ryzen 7 9800X3D 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Bomba ár! Lenovo X1 Yoga 1st - i7-6G I 8GB I 256SSD I 14" WQHD Sérült I W10 I CAM I Garancia!
- Beszámítás! Oculus Rift virtuális valóság szemüveg garanciával hibátlan működéssel
- DOKKOLÓ BAZÁR! Lenovo, HP, DELL és egyéb más dokkolók (TELJES SZETTEK)
- 15,6" Dell Latitude laptopok: E6540, E5550, E5570, 5580, 5590, 5500, 5501, 5510/ SZÁMLA + GARANCIA
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: Promenade Publishing House Kft.
Város: Budapest