Hirdetés
- Xiaomi 14 - párátlanul jó lehetne
- Samsung Galaxy A54 - türelemjáték
- Külföldi prepaid SIM-ek itthon
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- iPhone topik
- Bemutatkozott a Poco X7 és X7 Pro
- iOS alkalmazások
- Telekom mobilszolgáltatások
- One mobilszolgáltatások
- Xiaomi 15T Pro - a téma nincs lezárva
-
Mobilarena

Új hozzászólás Aktív témák
-
Jester01
veterán
Ugye a kettővel osztás az egy bit léptetés. Hexa ábrázolás esetén a szomszédos jegy legalsó bitje kell még a működéshez.
Számolgatással pl. így lehet:
inline char to_hex(int v)
{
return v > 9 ? (v + 'A' - 10) : (v + '0');
}
inline int from_hex(char c)
{
return c > '9' ? (c - 'A' + 10) : (c - '0');
}
void shift(char* buffer)
{
int i;
int carry = 0;
for(i = 3; i >= 0; i--)
{
int v = from_hex(buffer[ i ]);
buffer[ i ] = to_hex((v >> 1) | carry);
carry = (v << 3) & 8;
}
}
Ha a számolgatás nem tetszik, akkor lookup táblát is lehet csinálni, pl így:
void shift(char* buffer)
{
static struct { char out[2], f; } map['G'] = {
['0'] = {''08'', 0},
['1'] = {''08'', 1},
['2'] = {''19'', 0},
['3'] = {''19'', 1},
['4'] = {''2A'', 0},
['5'] = {''2A'', 1},
['6'] = {''3B'', 0},
['7'] = {''3B'', 1},
['8'] = {''4C'', 0},
['9'] = {''4C'', 1},
['A'] = {''5D'', 0},
['B'] = {''5D'', 1},
['C'] = {''6E'', 0},
['D'] = {''6E'', 1},
['E'] = {''7F'', 0},
['F'] = {''7F'', 1}
};
int i;
int flag = 0;
for(i = 3; i >= 0; i--)
{
char c = buffer[ i ];
buffer[ i ] = map[c].out[flag];
flag = map[c].f;
}
}
Hibakezelés ezekben nyilván nincs.
Más ötlet momentán nem jut eszembe.
[Szerkesztve]
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- One otthoni szolgáltatások (TV, internet, telefon)
- Gitáros topic
- Porszívók - akkus és klasszikus vezetékes
- Abarth, Alfa Romeo, Fiat, Lancia topik
- 3DMark Vantage eredmények
- droidic: Gmail + MI: na mi van bekapcsolva?
- Xiaomi 14 - párátlanul jó lehetne
- Amlogic S905, S912 processzoros készülékek
- Linux Mint
- 5.1, 7.1 és gamer fejhallgatók
- További aktív témák...
- ASrock Radeon RX 5700 XT Challenger Pro 8G OC Garanciával!
- Használt LCD kijelzők
- Acer Nitro V 15 gamer laptop RTX 4060, i5-13420H, 165 Hz!
- ZBook Fury 16 G11 16" FHD+ IPS i5-13600HX RTX 1000 Ada 32GB 512GB NVMe ujjlolv IR kam gar
- BESZÁMÍTÁS! Huawei Watch 4 Pro eSIM okosóra garanciával hibátlan működéssel
- 365 NAPRA RÉSZLETRE BANKMNETES KAMATMENTES , GAMER PC ,LAPTOPOK , GAMER SZÉKEK , GAMER MONITOROK
- Honor Pad X8 / 4/64GB / Wi-Fi / 12 Hó Garancia
- Samsung Galaxy S22 8/128 GB Phantom White ÚJ, gariban cserélt! 6 Hónap Jótállás
- 134 - Lenovo Legion Pro 7 (16IRX8H) - Intel Core i9-13900HX, RTX 4090 - 3 év garancia
- Lenovo ThinkPad T14 Gen1 Ryzen5 4650U Refurbished - Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



