dez in hex

#311669
Lesenswert?
• ▲
▼
Wenn du das Prinzip verstanden hast, dann kannst Du
das doch selbst programmieren.

Das Prinzip ist ganz einfach.

   68867 dezimal hat welche Hex Darstellung:

   68867 / 16 =  4304  Rest    3
    4304 / 16 =   269  Rest    0
     269 / 16 =    16  Rest   13
      16 / 16 =     1  Rest    0
       1 / 16 =     0  Rest    1

 d.h. die Hex Darstellung lautet:  1 0 13 0 3
 Nun gibt es aber in Hex keine Zahl 13, dafuer schreiben wir 'D'
 und erhalten

    68867 dez  <==>  10D03 hex
Gast #311670
Lesenswert?
• ▲
▼
Liegt die Dez-Zahl in BCD oder als String oder binär vor?
Welcher Wertebereich?

Byte z.B.:
unsigned char dez=0xAB;
printf("%c%c",'0'+dez/16+(dez/16>9?7:0),'0'+(dez&15)+(dez&15>9?7:0));

printf("%c%c",'0'+dez/16+(dez/16>9?39:0),'0'+(dez&15)+(dez&15>9?39:0));
bringt kleine Buchstaben a..f

Das sollte sehr einfach in Assembler umzusetzen sein.

Word (16bit) muss man halt in 2 Bytes aufteilen.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.