Kod: Markera allt
cblock
ADC
ental
tiotal
hundratal
endc
ADC = 0
ental = 1
tiotal = 2
hundratal = 3
Sen så använder många dessa konstanter som adresser till minnet,
men det är en annan sak, man kan ju använda konstanter till lite
vad man vill. RES är bättre eftersom det gör en korrekt allokering
av minne som faktiskt finns i den aktuella processorn.
Dessutom fungerar inte ditt cblock eftersom det kommer att börja
på "0" och där finns inget RAM minne. Dina instruktioner som använder
ADC, ental, tiotal och hundratal kommer att strula runt med de
första fyra SFR registren (INDF, TMR0, PCL och STATUS).
Detta hade fungerat (men det är ingen bra lösning för det) :
Kod: Markera allt
cblock h'020'
ADC
ental
tiotal
hundratal
endc
ADC = 20
ental = 21
tiotal = 22
hundratal = 23
Med cblock finns det inte heller något som hindrar att man gör något i stil med :
Kod: Markera allt
cblock h'020'
var1
var2
endc
...
; sedan lite senare i koden...
cblock h'020'
var3
var4
endc
Med RES går det inte (om man inte allokerar specifikt till udata_ovr).