You are on page 1of 9
28.10.2020 Tins & Tricks — Operai pe Bti| WORLDIT ACASA, DESPRE NOI AUTOR! MARTURIL ARHIVA TRIMITE ARTICOL CONTACT WORLDIT.INFO «~*'° TeamCity Cloud by JetBrains Sign up for the beta, and deliver quality software faster with CCD service by JetBrains STIRI TEHNIC RECENZII INTERVIURI EVENIMENTE Tips & Tricks - Operatii pe Biti = 25 UL, 2009 AT 1.28PM a3 Operatille pe biti sunt o tehnica foarte utilizata si raspandita in special in domeniul optimizarii vitezei si al memoriei.In urmatoarele randuri voi prezenta operatille de baza pe biti precum si cateva tips & tricks cu acestea. www. wordt infoluncategorizedtps-ticks-operati-pe-bit! ox FACEBOOK Ward T. iio TORU | 79 teas Like Page Send Message "9 28.10.2020 Tins & Tricks — Operai pe Bti| WORLDIT Ox outdoor access point [SS router wifi 4g, CEA 128 USD oO \/ industrial 3g wifi router 44,44 USD oa L) Mei npccneame ob crane moo Cees eet er) Operatorii logici pe biti sunt analogi cu operatorii logici normali, exceptand faptul ca se aplica unei ULTIMELE ATACURI CIBERNETICE DIN ROMANIA ~ RO HACKED. valori bit cu bit si nu ca unui tot unitar. De exemplu, sa luam operatorul de negare normal () imacoolat-curat.ro si cel de negare pe biti (~). Operatorul! | Publishes: februarie 3, 2020 - 2:00 am converteste o valoare true (sau diferita de zero) in false iar 0 valoare false in una true. Operatorul ~ converteste fiecare bit in parte in opusul sau (1 in si Oin 1). www.tahometru.ro hotel-palace.ro | Published: februarie 2, 2020 -2:00 am | Published: februarie 1, 2020-2:00 am 1. Operatorul SI pe biti (&) alexisart.ro Operatorul SI pe biti (&) combina doua valori | Published: lanuarie 0, 2020-200 am intregi pentru a obtine o valoare intreaga noua. Fiecare bit din noua valoare este 1 numai daca amandoi bitii corespunzatori din valorile initiale sunt 1. Daca oricare sau amandoi biti Justshop.ro | Publishes: ianuarie 29, 2020 - 2:09 am RO Hacked este registrul atacurilor cibernetice corespunzatori sunt 0, atunci bitul rezultat este lin Romania, setat tot la 0. cAUTA Exemplu: aja 10000111 Sere sl apasa enter 2 b @1100100 3] a&b -92000100 iti ARTICOLE RECOMANDATE. 2. Operatorul SAU pe biti (|) Operatorul SAU pe biti (|) combina doua valori intregi pentru a obtine o valoare intreaga noua, Fiecare bit din noua valoare este 1 daca unul sau » Numar record de participangi la DefCamp_ 2015, cel mai important altul, sau amandbi, bitii corespunzatori din eveniment dedicat valorile initiale este 1. Daca amandoi bitii jernetice din corespunzatori sunt 0, atunci bitul rezultat este Europe Centrala si de Est setat tot la 0. ecembrie 2, 2015 Exemplu: www. wordt infoluncategorizedtps-ticks-operati-pe-bit! 29 28.10.2020 Tins & Tricks — Operai pe Bti| WORLDIT a] a =10000111 La Defcamp 2015 vei afla 2 =@1100100 i sl oie itaieeis: prin ce tehnici pot fi evitate masurile de securitate ale sistemelor informatice critice 3. Operatorul SAU exclusiv pe biti() Operatorul SAU exclusiv pe biti (*) combina doua valori intregi pentru a obtine o valoare intreaga noua. Fiecare bit din noua valoare este 1 daca unul sau altul, dar nu amandoi, bitii corespunzatori din valorile initiale este 1. Daca amandoi bitii corespunzatori sunt 0, sau amandoi sunt 1 atunci bitul rezultat este setat la 0. Exemplu: octombrie 16, 2015 Ultima sansa sa rezervi bilete de tip Early Bird la Defcamp 2015, ie 1, 2015, 15 sfaturi despre cum poti deveni un programator bun venite dela specialisti romani aja 10000111 august 4, 2015 2] b 01100100 3) alb =111ee011 4, Operatorul de negare pe biti ( ~) Lowa lm oy ovisio Operatorul de negare pe biti (~) combina o valoare pentru a obtine o valoare intreaga d e Z| | noua.Fiecare bit din noua valoare este 1 daca bitii 12 13, 4 15 16 17 18 corespunzatori valorii initiale sunt 0 si.Cand bitii 19 20 21220 «2324S, din valoarea initiala sunt 1 atunci noua valoare 26 a 28 29 «30 «31 devine 0. ‘edec. Exemplu: af a 100ee111 2| ~a @1111000 LINK-URI SPONSORIZATE 5. Operatorul de deplasare spre laptop second hand stanga (<<) Calculatoare Second Hand Operatorul de deplasare spre stanga (<<) deplaseaza toti biti din valoarea initiala cun cod voucher pe garage pozitii spre stanga si completeaza pozitiile cu zerouri, a<>) Operatorul de deplasare spre dreapta (>>) deplaseaza toti bitii din valoarea initiala cu n pozitii spre dreapta si completeaza pozitiile cu zerouri. Deplasarea cu o pozitie la dreapta este echivalenta cu o impartire intreaga la 2. In general, deplasarea cu n pozitil la dreapta este echivalenta cu o impartire intreaga la 24n 7. Cateva tehnici pentru manipularea bitilor Este de mentionat ca numerotarea bitilor incepe de la dreapta spre stanga cu valoarea 1 Astfel bitul n va fi al n-lea bit al valorii respective de la dreapta spre stanga. ox outdoor access point wifi router router wifi 4g 27 usp 128 USD o™ ( ) LY industrial 3g wifi dual sim wifi “outer 90.000 USD 44,44 USD “OO S 1 n v 1 Expresia ab te va ajuta sa setezi valorile bitilor noii valori.Daca la oricare pozitie exista in b sau in aun 1,noua valoare va avea pe pozitia respectiva 4 ‘Spre exemplu,daca vrem sa setam prima pozitia a bitilor cu 1, vor avea o operatie de genul : a|1. Alte exemple: a | 1 (seteaza pozitia 1 a bitilor in 1) a | 2 (seteaza pozitia 2 a bitilor in 1) www. wordt infoluncategorizedtps-ticks-operati-pe-bit! 49 28.10.2020 “ins & Ticks ~ Opera pa Bt | WORLDIT a | 4 (eteaza pozitia 3 a bitilor in 1) a | 8 (seteaza pozitia 4 a bitilor in 1) a | 16 (seteaza pozitia 5 a bitilor in 1) Observam ca pentru a seta al n-lea bit trebuie sa facem operatia SAU pe biti cu 2(n-1), .Comutarea bitilor Expresia a%b realizeaza inversarea bitilor.Pe pozitia unde bitul are valoarea 1 noua valoare va fi 1 si invers. a1 (inverseaza bitul de pe pozitia 1) smd 3.Testarea valorii unui bit Operatia a == 1 este total gresita.Pentru a testa daca bitul de pozitia n este 1 sau 0 trebuie sa facem o operatie Si pe biti(&) cu valoarea 2(n-1). Spre exemplu: (a & 1) este adevarata doar daca valoarea de pe pozitia 1 este 1 {a & 8) este adevarata doar daca valoarea de pozitia 4 este 1 s.amad. Aici voi prezenta o mica modalitate de economisire a memoriei.Spre exemplu avem o problema in care trebuie sa stim daca numerele din intervalul [1,n], n <= 1.000.000.000 sunt necesare pentru a face solutia finala. Ne imaginam urmatorul scenariu : Nu ne-a venit in minte ideea de a calcula la fiecare pas daca valoarea este necesara sia face calcule in continuare pe ecuatie ci ne-am gandit sa facem un vector si sa punem 1 daca valoarea este necesara si 0 in caz contrar.|mediat observam ca vectorul ar fi prea mare pentru asa ceva si riscam sa pierdem la capitolul memorie.ldeea este urmatoarea : vom face un vector de caractere de 8 ori mai mic( char este pe 8 biti) si von seta fiecare bit din cele n/8 valori cu 1 daca valoarea este necesara si 0 in caz contrar. Nu voi prezenta o solutie completa pentru ca nu este problema completa ci doar principiul pe care se bazeaza www. wordt infoluncategorizedtps-ticks-operati-pe-bit! 28.10.2020 Tins & Tricks — Operai pe Bti| WORLDIT Varianta gresita : wevauaune #include using namespace std; define MAX_N 1000000000 int _n,a[MAX_N] ; int verificaval (int) ; int main() int i,x5 cino>n5 for(i = 0; i >x5 ali] font @; i using namespace std; itdefine MAX_N 1000000000/8 int 3 char a[MAX_N]; int verificaval (int); int main() int x; cin>>n3 for(int i= 0; i < nj int) Co cin>>x; a[i >> 3] |= (verificaval (x for(i = 0; i < nj itt) ‘ AF((a[i >> 3] & (1¢<(4%B))) { return @; + int verificaval(int valTover) /* aici vom avea o functie care www. wordt infoluncategorizedtps-ticks-operati-pe-bit! 28.10.2020 Tins & Tricks — Operai pe Bti| WORLDIT 30 * in cazul in care este necesa 31 * Si @ in caz contrar 32 " 33 34a] } Explicatie: + >3 este echivalent cu i/8 ne va ajuta sa aflam pe care char din sirul de char-uri se afla valoarea i # 1% 8 ne ajuta sa aflam pe ce bit al charului se afla valoarea i = afi>> 3] |= (verificaValx)<<(i%8)); seteaza al i % 8-lea bit din al i/8-lea char in valoarea returnata de functia verificaVal() Tema : Incercati sa rezolvati Ciurul lui Eratostene printr-o metoda asemanatoare. Tool: Doresti sa faci excertitii pe baza de observatii,atunci ai nevoie de un Convertor din zecimal in binar. Articolul nu este terminat,daca doriti sa-I completati contactati-ma aici. tbl a tel-t a ef =) Dumnezeu?e Daca acest articol contine o greseala, selecteaza cuvintele sau fraza gresita si tasteaza combinatia de taste Shift + Enter sau apasa click ao raporta, Multumim! ci pentru www. wordt infoluncategorizedtps-ticks-operati-pe-bit! 28.10.2020 < Tins & Tricks — Operai pe Bti| WORLDIT — Andrei Avadanei a scris 1246 articole © Andrei scrie pe worldit.info din vara tui 2011. Este fondatorul Asaciatiei Centre de Cercetare in Securitate Informatica cin Romania - CCSIR si coordoneaza DefCamp, cea mai importanta conferinta de securitate informatica & hacking din Europa Centrala si de Est. Andrei ofera in cadtrul Bit Sentinel servici de securitate informatica, penetration testing, security management, recuperarea de pe urma unui atac cibernetic, training-u ish workshop-uri ARTICOLUL ARTICOLUL ANTERIOR URMATOR Orb, casca syvideo Bluetooth care camera se poarta pe deget S243 COMENTARI| Andonie Andrei Bun, bun acest artical, Lam scos la imprimanta deoarece sunt sigur cao sa imi fle de folos. Merci. AUGUST 29,2009 LA 10:37 PM ‘Andrei Misarca Cum inmulties sl impartires cu puter! ale lui 2 se poate face foarte rapid pe biti ar fi fost nedrept ca modulo sa ramana pe dinafara, Asadar, x % 2x & (2% 1), Mai pe scurt x 8 din prezentarea de mai sus este echivalent ux & 7. Explicatiae simpla. Cand faci & cukbiti de 1, isi vor pastra valoarea doar ultimlik biti din numar, adica exact restul impartiri la 2%k ® AUGUST 30,2008 LA 1024 AM Andrei Lita www. wordt infoluncategorizedtps-ticks-operati-pe-bit! 28.10.2020 Tins & Tricks — Operai pe Bti| WORLDIT buna observatie @ Andrei Misarca, dar linia de cod 20 din variant este gresit, corect era" if(ali >> 3] & (1<<(968)) == 1<<(i%68)) " deoarece numarul 1 este 1<<0 dar ceea ce doresti este sa afli daca acel 1 pus la acea pozitie nu sa transformat in 0 corecta OCTOMBRIE 28,2017 LAG > > Tips&Tricks - opera pe Bit " f¥3s aie Sentinel aetitro Pc Config Central de Cercetare’n bijuten handmade RO Hacked Securtate informatics din Romania Computerica | Resurse Stiri IT gratuite Pc Defcamp Descopera.org Gadgeturi si IT - Giz.ro ro) Copyright © 2009-2014 WORLDIT. Toate drepturile Rezervate, Termeni si conditii | Contact | Licenta Creative Commons www. wordt infoluncategorizedtps-ticks-operati-pe-bit!

You might also like