kleine Frage zu Assembly-Befehl

smuji schrieb:
ist mein r0 nun = 0x00008800 oder 0x8800 ?
Beides. 0x00008800 und 0x8800 sind die gleichen Zahlen.

Da gilt wieder was andy_m4 schon gesagt hat:
andy_m4 schrieb:
Du musst unterscheiden zwischen Information und Repräsentation.

Du schreibst nichts "als Hex" an irgendeine Adresse da es dem Speicher wurscht ist in welcher Form du die Informationen darstellst. Er hält sie sowieso im Binärformat, weil er nichts anderes kann (vereinfacht ausgedrückt).

0x8800, 0x00008800, 1000 1000 0000 0000, 34816, 000034816 - alles die gleiche Zahl/Information, aber verschiedene Darstellungen.
Genau wie im Dezimalsystem sind auch im Hexadezimalsystem führende Nullen unnütz und werden deshalb i.d.R. einfach weggelassen.
Du schreibst ja z.B. auch nicht 000034816, sondern 34816 weils kürzer ist. Genauso verhält es sich auch bei 0x00008800 und 0x8800.
 
hallo,

danke, die frage ist nur, soll ich die vorhergehende speicherstellen anschließen mit 00 00 00 00 ausfüllen, oder mit xx xx xx xx


xx sollen wir nehmen, wenn der inhalt der speicherstellen unbekannt ist....

wenn ich nun 0X8800 in die speicherstelle r1: 0x2000001C schreibe, sieht es ja wie folgt aus

0x20000010: xx xx xx xx xx xx xx xx xx xx xx 00 88 xx xx


wenn ich nun aber noch nuller anhänge, wäre es doch:

0x20000010: xx xx xx xx xx xx xx xx xx xx xx 00 88 00 00


welches ist die bessere variante `?
 
Kleiner Tipp: Man kann auch einfach mal ausprobieren, was bei welcher Aktion passiert. Mir kommt es so vor, als willst Du alles vorher theoretisch geklärt haben, bevor Du überhaupt was machst.
So funktioniert aber programmieren lernen nicht. Das hat ganz viel mit ausprobieren und experimentieren zu tun.
 
nein, aber ich komme mit diesem dummen keil nicht zurecht. wenn ich das so eintippe, bekomme ich immer "debugger aborted" .... ich komme mit diesem dummen keil nicht zruecht, sonst hätte ich es schon längst ausprobiert
 
Verstehe ich das richtig, du versuchst im Memory Window xx einzutragen?
Wie kommst du auf xx?
xx ist kein gültiger Hezadezimalwert!
 
wir sollen xx schreiben, wenn der inhalt uns unbekannt ist....ich schreib einfach 00, dann ist alles prima
 
smuji schrieb:
nein, aber ich komme mit diesem dummen keil nicht zurecht. wenn ich das so eintippe, bekomme ich immer "debugger aborted" ....
Dann musst Du wohl die Doku bemühen. immerhin sind alle Assembler-Befehle hervorragend dokumentiert.

Du wirst verstehen, dass sich die Motivation zu helfen bei solchen Fragen bei denen es um die Grundlagen geht (die man sich auch selbst aneignen kann), eher gering ist.

Zumal es sich auch um eine "Zusatzaufgabe" handelt, wenn ich richtig verstanden hab. Und die zu lösen muss man sich schon irgendwie verdienen, find ich. Und das tut man nicht mit herumgeplärre a-la "Keil ist doof" und "Doku lesen will ich nicht".
 
Zuletzt bearbeitet:
Zurück
Oben