Was x86 bezeichnet Quellenort in MOVSB ??Anweisung registrieren?
-
28-09-2019 - |
Frage
Was Bezeichnet Quellenort in MOVSB ??Befehlsregister x86?
Lösung
In 32-Bit-Modus esi
.
In bestimmten, movsb
Kopien ein Byte von ds:esi
zu es:edi
, die sowohl esi
einstellt und edi
durch 1, entweder nach oben oder nach unten in Abhängigkeit von der Richtungsflags.
Andere Tipps
Wie diese Informationen aus dem Handbuch extrahieren
Nun, da Sie in osdev.org angemeldet haben, ist es Zeit, Ihre moralischen Schulden zu bezahlen, indem sie es tatsächlich zu lernen. : -)
Intel Manual Volume 2 Instruction Set Reference - 325383-056US September 2015 Abschnitt" MOVS / MOVSB ??/ MOVSW / MOVSD / MOVSQ-Verschieben von Daten von String in String“, sagt:
Verschiebt das Byte, Wort oder Doppel mit dem zweiten Operanden (Quelloperand) spezifiziert den Ort spezifiziert mit dem ersten Operanden (Zieloperand). Sowohl die Quell- und Zieloperanden im Speicher befindet. Das ESI oder die DS: Adresse des Quellenoperanden aus der DS las SI Register
Minimal-Testprogramm
Schließlich müssen Sie ein minimales Programm, das den Befehl verwendet, um zu sehen, wenn Sie es richtig verstanden haben:
section .data
src db 0
dest db 1
section .text
global _start
_start:
mov esi, src
mov edi, dest
cld
movsb
/* dest == 0*/
Runnable-Version dieser mit Behauptungen auf GitHub .