$ in assembler

weet iemand waarom soms een dollarteken wordt gebruikt in assembler

vb:

MOV A,#$C

ik veronderstel dat er een bepaalde waarde wordt bedoelt maar welke?

pointers don't kill programs, programmers kill programs
Hugo Welther

Moderator

Das het teken voor hexadecimaal. De 'C' is 12

Het enige dat tussen jou en je doel staat is alles wat jij jezelf verteld dat je het niet kan.

Ja, juist, Hugo heeft gelijk

Met:
MOV A,#$C

wordt bedoelt: dat de HEXADECIMAAL C (dus 12) verplaatst moet worden in A (de accu)

is dus hetzelfde als

mov a,#0Ch

???

pointers don't kill programs, programmers kill programs
Hugo Welther

Moderator

Yes, dit is het zelfde.

Correct me if i'am wrong.
Hangt van de compiler af hoe hex-getallen worden genoteerd en hoe de processor is opgebouwd kwa zijn registers en geheugen. 4, 8, 16 etc. bits breedte

$C neemt maar 4bits (max. $F = 16) in beslag, 0Ch is 8bits dus 1 byte (max. FFh = 256).

Het enige dat tussen jou en je doel staat is alles wat jij jezelf verteld dat je het niet kan.

Op za 16-03-2002 11:18:11 schreef Hugo Welther:
$C neemt maar 4bits (max. $F = 16) in beslag, 0Ch is 8bits dus 1 byte (max. FFh = 256).

Ja klopt, ligt aan de compiler. Soms moet je voor een 4bits uC toch een 0 ervoor zetten zodat de compiler er raad mee weet.
Zo moet je bv bij de 8-bits pic16f84, neerzetten 0FFh, ipv FFh want anders geeft die een foutmelding.

Bachelor of Engineering -- Microcontrollers AVR, PIC (asm, C), PC applicaties (C, C++), Webpages (HTML, CSS, PHP, SQL), Rail-infra engineer

Soms wordt met $ ook de current PC (Program Counter) bedoeld. Het is dan een pre-processor directive.

Op wo 26-06-2002 16:40:37 schreef JC:
Soms wordt met $ ook de current PC (Program Counter) bedoeld. Het is dan een pre-processor directive.

Beste JC, ik weet dat je (volgens de teller) nieuw bent hier maar wil je er toch op wijzen dat we liever niet hebben dat je topic's die al behoorlijk lang stil liggen een nieuw leven geeft. Verder discussieren mag best, maar start dan een nieuwe, sven heeft er nu weinig meer aan dat die nu wat hoort op iets wat die 4 maanden terug heeft gevraagt.

En ik denk ook dat iemand die niet weet wat een $-teken betekend al zeker niet weet wat pre-processor directive is.

[Bericht gewijzigd door Bastiaan op woensdag 26 juni 2002 16:47:15

Bachelor of Engineering -- Microcontrollers AVR, PIC (asm, C), PC applicaties (C, C++), Webpages (HTML, CSS, PHP, SQL), Rail-infra engineer

Ok, zal er op letten. Ik dacht, omdat jullie standaard de topics sluiten die beantwoord zijn, dat ik hier wel een reactie op kon plaatsen.

Op wo 26-06-2002 16:52:52 schreef JC:
Ok, zal er op letten. Ik dacht, omdat jullie standaard de topics sluiten die beantwoord zijn, dat ik hier wel een reactie op kon plaatsen.

Doen we niet standaard hoor, alleen bij dode-topics waar mensen op blijven reageren. Zoals deze bijvoorbeeld.

Bachelor of Engineering -- Microcontrollers AVR, PIC (asm, C), PC applicaties (C, C++), Webpages (HTML, CSS, PHP, SQL), Rail-infra engineer