Întrebări înrudite 'bit-manipulation'

Cum se inversează biți ai unui octet?
De exemplu, în PHP, cum aș inversa biții octetului 11011111 în 11111011 ?
17307 vederi
schedule 22.08.2022

Codificare întreg de lungime variabilă
Încerc să fac inginerie inversă a unui algoritm de decompresie LZ1/LZ77. Lungimea unei zone a bufferului/ferestrei de decodare care urmează să fie scoasă este codificată în fișier ca un întreg de lungime variabilă. Am citit cât am putut despre...
2852 vederi

întrebare despre biți de schimb [închis]
Am o întrebare pe acest subiect, cred că răspunsul este incorect Schimbați biți într-un număr în C 1110 1011 este egal cu 235, dar primesc 3051 de ce?
337 vederi
schedule 12.08.2022

Convertiți matricea de biți în uint sau în valoare similară
Am o gamă largă de valori booleene și vreau să le împachetez/despachetez într-o valoare uint sau similară. Cum pot face asta în C#?
4339 vederi
schedule 17.09.2022

Bună Veebs, mulțumesc pentru răspuns, dar asta nu este ceea ce caut... De fapt, va fi un singur copil, dar se va schimba în timpul rulării. Este ca un schimbător de aspect și în orice moment cineva poate schimba o legare care ar trebui să...
455 vederi
schedule 28.01.2024

cel mai rapid mod de a număra numărul de biți setați pentru un interval
Trebuie să am o modalitate rapidă de a număra numărul de biți setați pentru un interval de index pentru un vector de biți. De exemplu, având în vedere 10000100100011000 și intervalul de index [2, 5] , randamentul este 2. Indicele începe cu 0 din...
1335 vederi
schedule 11.08.2022

Deplasarea biților pentru a înmulți un număr întreg cu 10
Întrebare simplă, dar nu prea îmi dau seama: Dacă am un număr întreg, să spunem 12, și efectuez următoarea manipulare de biți pe el: int i = 12; i = (i << 3) + (i << 1); Am ajuns cu 120 (12*10). Acesta este cazul oricărui...
8116 vederi
schedule 12.09.2022

Setarea unui bit al unui caracter nesemnat cu un alt bit al altui caracter nesemnat fără condițional
Folosesc biți pentru a activa și dezactiva biții în acest fel: unsigned char myChar = ...some value myChar |= 0x01 << N // turn on the N-th bit myChar &= ~(0x01 << N) //turn off the N-th bit Acum, să presupunem că valoarea...
4407 vederi
schedule 19.09.2022

Cum să împărțiți un int lung nesemnat (32 de biți) în 8 nibbles?
Îmi pare rău dacă întrebarea mea este confuză, dar iată exemplul a ceea ce vreau să fac, să spunem că am un int lung nesemnat = 1265985549 în binar, pot scrie asta ca 01001011011101010110100000001101 acum vreau să împart acest număr binar de 32...
2555 vederi

Mod mai rapid de a efectua amestecarea biților pe un întreg cu Java
Mă întreb dacă există o modalitate mai rapidă de amestecare a biților unui întreg, mai degrabă decât următoarele public int shuffleBits(int number) { int int_width = 31; Random random = new Random(); for(int i = 0; i < int_width; i++)...
1168 vederi

Cum să găsești bitboard-uri magice?
const int BitTable[64] = { 63, 30, 3, 32, 25, 41, 22, 33, 15, 50, 42, 13, 11, 53, 19, 34, 61, 29, 2, 51, 21, 43, 45, 10, 18, 47, 1, 54, 9, 57, 0, 35, 62, 31, 40, 4, 49, 5, 52, 26, 60, 6, 23, 44, 46, 27, 56, 16, 7, 39, 48, 24, 59, 14, 12, 55,...
2793 vederi
schedule 01.07.2022

Scoateți al-lea bit din buffer și mutați restul
Oferind un buffer uint8_t de x lungime, încerc să vin cu o funcție sau o macrocomandă care poate elimina al n-lea bit (sau de la n la n+i), apoi deplasați la stânga biții rămași. exemplu #1: pentru intrarea 0b76543210 0b76543210 ... ,...
1473 vederi
schedule 15.08.2022

Obținerea cea mai puțin semnificativă în JavaScript
Încerc să obțin cel mai puțin semnificativ bit dintr-un number în JavaScript. Am urmatorul cod: let lsb = (parseInt("110", 2) & 0xffff); După înțelegerea mea, bitul cel mai puțin semnificativ din 110 este 1 1 0, deoarece este bitul...
4506 vederi

Există o metodă non-iterativă de a activa și dezactiva grupuri de biți folosind o mască?
Să presupunem că am două șiruri de biți: runs și toggler , unde o rulare este un grup de biți asemănători învecinați. Ambele șiruri de biți pot avea un aranjament arbitrar de 1 și 0 (pornit și respectiv oprit). De dragul întrebării, voi folosi...
63 vederi
schedule 31.07.2022

Tip de date încorporat cu dimensiunea mai mică de 1 octet
Cele mai puternice limbaje de programare au tipuri de date de min. Dimensiunea de 1 octet. Știu că este posibil să accesezi celulele de memorie individuale folosind mascarea biților, dar de ce limbajele de programare nu acceptă tipul de date mai mic...
350 vederi

Schimbare eficientă de biți în python3
Îmi este foarte greu să gestionez bitswapping-ul în python3. Până acum am găsit algoritmi de schimb rapid de biți în C aici și aici , dar nu am reușit să traduc corect asta în python3, deoarece manipularea datelor, utilizarea tipurilor corecte...
227 vederi

Cum pot imprima binarul de caractere dintr-un fișier de intrare?
Trebuie să pot prelua un fișier text: de ex. text.txt a b c 0 1 2 și trebuie să imprim valorile binare ale acestor caractere. Iata ce am scris pana acum: #include "p01.h" int main(int argc, char **argv) { FILE *fptr =...
42 vederi
schedule 03.09.2022

Manipulare bit cu bit în python
În prezent, scriu un program în python care comprimă un fișier folosind codarea Huffman. Din cauza python-ului, am avut probleme în încercarea de a programa la un nivel atât de scăzut. O problemă la care nu am reușit să-mi înțeleg capul este...
81 vederi
schedule 23.07.2022

Unirea și mascarea biților, cum funcționează asta?
iată un cod C: float phaseFrac(unsigned int inPhase) { union { unsigned int itemp; float ftemp; } u; u.itemp = 0x3F800000 | (0x007FFF80 & ((inPhase)<<7)); return u.ftemp - 1.f; } Nu pot să-mi înțeleg folosirea „uniunii”...
1051 vederi
schedule 08.11.2022

Citirea caracterelor la un pic
Aș dori să pot introduce un caracter de la tastatură și să afișez codul binar pentru respectiva cheie în formatul 00000001, de exemplu. Mai mult, aș dori, de asemenea, să citesc biții într-un mod care să-mi permită să ies dacă sunt adevărate sau...
658 vederi
schedule 28.10.2023