Care sunt operatori la nivel de bit în C, utilizate pentru?

S

saudrehman

Guest
poate cineva explica de utilizare a operatorilor la nivel de bit şi cum ar fi, sau, în Exor de programare C pentru microcontrolere.
 
îl puteţi citi în cartea de programare pentru Exp C.: "şi" 1 & 1 = 1 1 0 = 0 & 0 & 1 = 0 0 0 = 0 &
 
reţineţi că, atunci când la nivel de bit şi (sau, XOR), fiecare bit este anded (ored, xored), cu bit correspoding în alt cuvânt. astfel 0b1010 & 0b1100 devine 0b1000 sau în 0xA hexagonale & 0xC devine 0x8 şi este mare pentru mascarea / compensare biţi - presupunem că doriţi să zero toate, dar ultimele trei biţi dintr-un octet, se numesc val. val = val & 0x7, sau este bun pentru stabilirea de biţi. de exemplu, stabilirea de pini de intrare (1) sau de ieşire (0): TRISB = TRISB | 0b00011100; / / seturi de ace de 2, 3 si 4 de intrare, se lasă pe ceilalţi numai eu prefer să folosesc repersentation binar atunci când se ţine de fleacuri cu biţi în registrele . face clar foarte mult ce se întâmplă. Phil
 
hi acest lucru poate ajuta la u [quote =] [size = 7] Operatorii la nivel de bit: [/size] [size = 5] Operatorii care lucreaza pe biti individuale în cadrul unei variabile sunt denumite operatori la nivel de bit. În urma este un tabel cu toate aceste operatori: si la nivel de bit şi | inclusiv sau la nivel de bit ^ SAU exclusiv bit complement ~ cuiva. Dreptul de schimbare >>
 
Am nevoie de un ajutor pe aceleaşi operaţii la nivel de bit. dar acest lucru un pic complicat. acest lucru este la nivel de bit copiere şi lipire. am nevoie pentru a copia un anumit număr de biţi şi pasta de la loaction diferite. de ex., un flux de 1000 de biţi are. i-am copierea de la 102 la 201 biţi de biţi, apoi lipirea (suprascrie) la bit-lea 305. există un algoritm pentru a face acest lucru. în ceea ce priveşte, shanmugavel
 
shanmugavel acest lucru este subject.First total diferit, avem nevoie să ştim cum de 1000 fluxul de biţi este organizat în memoria?
 
1000 de biţi (125 bytes) în memorie sunt stocate octet aliniate.
 
hi dacă am obiceiul sa scriu 0B 00001010 la o memmery care deţine 0bxxxx0000 şi i dont obiceiul de a suprascrie "x", datele de pe memmery şi nu ştiu wot acestea binar x deţine. cum fac? i de programare C
 

Welcome to EDABoard.com

Sponsor

Back
Top