Bit-värden i en CV

bland används bara delar av en CV för att ställa in ett värde. (Detta var egentligen en metod för att spara minnesutrymme i de tidigaste dekodrarna.) En CV kan ha ett värde mellan 0 och 255, detta motsvarar 8 s.k. binära bitar, där varje bit kan ha värdet "0" eller "1". Utgående från värdet på dessa bitar räknar man ut vilket värde som skall sättas i CV:n. Man sätter helt enkelt flaggor för olika inställningar med dessa bitar.

När man säger att man skall sätta t.ex. bit 2 i en CV så får man ta till en liten räkneoperation om inte körkontrollen (i programmeringsläge) eller ett program kan sätta denna bit direkt. (Litet slarvigt brukar man säga att man "sätter" en bit när man avser värdet "1" för biten.)

    Använd om möjligt alltid en programmeringsutrustning som kan sätta bitarna direkt
    alternativt de namngivna funktioner direkt. Detta för att öka riktigheten i inställningarna.

Numrering och inställning av bitar i ett CV-värde
Kalkylator för CV-värde
Sätt bitarna och läs av värdet, eller
sätt värdet och läs av bitarna.
Bit-nummer Värde på
varje bit
i CV:n
Bit-
värde
Lenz NMRA-
DCC
1 0 "0"  "1" 1  
2 1 "0"  "1" 2  
3 2 "0"  "1" 4  
4 3 "0"  "1" 8  
5 4 "0"  "1" 16  
6 5 "0"  "1" 32  
7 6 "0"  "1" 64  
8 7 "0"  "1" 128  
Avläst värde från CV:n, eller
värde att skriva i CV:n


Klicka i det vita fältet om inget händer!

(Dessa exempel använder bit-numrering enligt NMRA-DCC.)

Exempel I: sätt bit 2, 5, och 6 till värde "1"
a.
Sök upp värdena för resp. bit och
b. beräkna summan av dessa värden.

dvs. 4 + 32 + 64 = 100, vilket skall skrivas in i CV:n.

Exempel II: vilka bitar är satta i en CV?
a. Säg att nuvarande CV-värdet är 68.
b.
Dra ifrån det högsta möjliga bit-värde, dvs. 68 - 64=4,
c.
vilket i det här fallet visar att bit 6 var satt.
d.
Fortsätt att prova alla bit-värden tills restvärdet är 0.

68 - 64 = 4, dvs. bit 6 var satt.
4 - 4 = 0, dvs. bit 2 var satt.

Exempel III: sätt bit 4 till "1" i en CV
a. Säg att nuvarande CV-värdet är 96.
b.
Kontrollera att bit 4 är satt till "0", se exempel II.
3.
Enbart då kan man sätta biten till "1".
4.
Addera bit-värdet för bit 4 till nuvarande CV-värdet,

dvs. 96 + 16 = 112, vilket skall skrivas in i CV:n.

Exempel IV: sätt bit 4 till "0" i en CV
a. Säg att nuvarande CV-värdet är 49.
b.
Kontrollera att bit 4 är satt till "1", se exempel II.
3.
Enbart då kan man sätta biten till "0".
d.
Subtrahera bit-värdet för bit 4 från nuvarande CV-värdet,

dvs. 49 - 16 = 33, vilket skall skrivas in i CV:n.

Bit och byte
Ordet digital kommer från latinets digit som betyder siffra. I datorsammanhang avses med digitalt en information som är nedbruten till en mängd poster som endast kan ha ett av två värden (vanligen 1 eller 0). För att göra beräkningar med tillstånden 0 och 1 används det binära talsystemet som har basen 2 till skillnad från det decimala systemet som har basen 10 (deci=10). Data som används vid en dators beräkningar kallas bit och byte. (Bit heter på engelska bits – binary digits). En byte är en grupp bestående av 8 bitar som var och en kan ha värdet 0 eller 1. Exempelvis är den digitala sifferkoden 00001010 (1 byte, 8 bitar) detsamma som det decimala talet 10.

Det är lätt att förstå denna kod om man resonerar enligt följande: De decimala talen 1, 2, 4, 8, 16, 32, 64 och 128 markeras i koden med 1 när de förekommer och med 0 när de inte förekommer. Varje markering kallas en bit och numreras (på datorspråk) från 0 med minst signifikanta siffran längst till höger (jämför med entalssiffran i ett vanligt tal).

Bit-nummer 7 6 5 4 3 2 1 0
Bit-värde 128 64 32 16 8 4 2 1
Det binära talet för t.ex. 139,
som ju är summan av
128+0+0+0+0+8+0+2+1
 1   0   0   0   1   0   1   1 
  • Om den binära koden är 00000000 ger detta decimaltalet 0.
  • Koden för det decimala talet 1 skrivs således 00000001.
  • Koden för det decimala talet 3 blir 00000011, dvs. 2+1.
  • Den binära koden 11111111 blir på motsvarande sätt 128+64+32+16+8+4+2+1=255.
  • En byte (8 bitar) kan alltså representera vilket som helst av 256 olika tillstånd.