Jump to content

Assembler Frage


funnybox2006

Empfohlene Beiträge

Hi Leute,

 

hab hier in der Vorbereitung zu einer Prüfung eine Aufgabe:

 

Im byte-organisierten PC-System sollen im Byte mit der Adresse 0x4711 des IO-Bereichs die Bits 3 und 5 sicher gesetzt werden, ohne die anderen Bits des Byte zu beeinflussen! Schreiben Sie eine funktion in C oder inline-Assembler, die dies ermöglicht.

 

Mir ist leider nicht klar wie ich an das Byte der Adresse 0x4711 des IO-Bereichs komme.

 

Wenn ich das habe dann würde ich so vorgehen:

 

void aufgabe_2(void)

{

//hier dann C oder Assembler Code um an das Gewünschte Byte zu kommen

_asm

{

mov eax, byte

mov ebx, 0x28 //Entspricht den bits 3 und 5 die zu setzen sind

or aex, ebx //Verodert die beiden Register um bits 3 und 5 sicher zu setzen

mov byte, eax //Schreibt das fertige Byte zurück

}

}

 

Vielleicht kann einer sagen wie ich an dieses Byte im IO-Bereich komme. dabei ist es egal ob C oder Assembler dazu benutzt wird.

 

Gruß, funnybox

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

  • Wer ist Online   0 Benutzer

    • Keine registrierten Benutzer online.
×
×
  • Neu erstellen...