Bitvisa operationer???

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
patrik_ekman
Inlägg: 4
Blev medlem: 6 februari 2005, 20:34:51

Bitvisa operationer???

Inlägg av patrik_ekman »

Håller på med en kurs i pic programmering!

Men nu har jag hängt mig i bitvisa operationer....
Det är inget jag har lärt mig i C ännu!

Någon som kan rekomentera något som går igenom detta?

Eller någon som kan förklara & | ^ << >> ~ ?

Mvh
Patrik
Användarvisningsbild
AndLi
Inlägg: 18274
Blev medlem: 11 februari 2004, 18:17:59
Ort: Knivsta
Kontakt:

Inlägg av AndLi »

Kod: Markera allt

A & B = C  //AND
1    1   1
1    0   0
0    1   0
0    0   0

A | B = C //OR
1   1   1
1   0   1
0   1   1
0   0   0

A ^ B = C  //XOR
1   1   0
1   0   1
0   1   1
0   0   0

~A = C //INV
1  = 0
0  = 1
Och så tar vi >> och <<

Har du en variabel innehållande a = 0101 0000 och gör a = a >> 2 blir a = 0001 0100 altså en bitrotation 2 bitar åt höger.
<< gör samma sak fast åt andra hållet
patrik_ekman
Inlägg: 4
Blev medlem: 6 februari 2005, 20:34:51

Inlägg av patrik_ekman »

Hm.. Lite att fundera på...

Tack!

/patrik
Användarvisningsbild
cykze
EF Sponsor
Inlägg: 1539
Blev medlem: 8 april 2004, 10:40:28
Ort: Uppsala

Inlägg av cykze »

Här är lite om hur man sätter och nollställer vissa bitar i en byte:
http://www.geekjoan.com/forum/viewtopic ... 6180#26180

Det här kanske du har lite nytta av också:
http://www.geekjoan.com/forum/viewtopic ... t=75#24946
Det är till AVR, men principen borde vara den samma förutom att din C-kompilator kanske även har andra metoder för att ändra PIC:ens pinnar.
patrik_ekman
Inlägg: 4
Blev medlem: 6 februari 2005, 20:34:51

Binärräknare...

Inlägg av patrik_ekman »

Jo!

Nu har jag börja få kläm på det lite... Går fram för mig nu skillnaden på att sätta porten typ PORTB= 0x00 och BIT_SET(PORTB, 1)

Edit:
Det var mer än 10 år sedan jag pluggade digitalteknik... Hur var det en binärräknare funka?
Jag skall få åtta lysdioder att räkna upp som en binärräknare. Jag har fullkomlingen glömt vad det är...

/patrik
Skriv svar