Funktionsübersicht

Gast #237785
Lesenswert?
• ▲
▼
Hallo!
Gibt es irgendwo eine Übersicht über die Funktionen, die man mit dem
GCC Compiler mit den mitgelieferten Libraries hat? Suche z.B. einen
Befehl, um das obere und untere Nibbel zu vertauschen. Komme nämlich
mit den inline Assembler auch nicht klar.

Wäre nett, wenn mir einer wenigstens bei einem Problem helfen könnte.

MFG Dominik
#237787
Lesenswert?
• ▲
▼
Hallo Dominik,

ist zwar ein bißchen spät, aber genau zum tauschen der nibbles ist im
Bereich "inline-assembly" ein Beispiel in der avr-libc-Dokumentation.
Außerdem versteht man den inline-assembler erst so richtig, wenn man ihn
mal ein wenig einstzt - learning by doing halt.

MfG, Daniel
Gast #237790
Lesenswert?
• ▲
▼
Ist ganz lustig, was der Compiler daraus macht. Er erkennt zwar, daß er
die Verschiebung um 4 Bit als swap umsetzen kann, merkt aber nicht, daß
beide mit einem swap erschlagen werden können. Er kopiert also den Wert
in ein zweites Register, "swap"t dann beide, schneidet von jedem die
"überflüssigen" 4 Bits per andi weg und fürt die Ergebnise dann per
or wieder zusammen.
#237791
Lesenswert?
• ▲
▼
Hm,

vielleicht realisiert der liebe Compiler dabei nicht, dass einen die
"heringeschobenen Nullen" nicht interessieren - macht der Compiler
bei
1
i = ((i >> 4)&0x0F) | ((i << 4)&0xF0);
was anderes ? Ich könnte es erst heute abend testen, denn hier habe ich
keinen Compiler zur Verfügung.

MfG, Daniel.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren