|
Hi,
ich benötige Hilfe beim Erstellen von Assembler-Programmen. Es ist nichts sonderlich komplexes, sofern ich das beurteilen kann, jedoch bin ich noch Anfänger. Um mal einen Eindruck zu bekommen, womit ich mich bisher beschäftigt habe (DOS-Funktionen), möchte ich Euch folgenden Quelltext einmal zeigen:
jmp start
;-------------------------------------------------------------------
text db "Datei test.txt erzeugen und beschreiben - 256 Zeichen $" ;db, $
dtext db "Soll gespeichert werden $" ;?
datei db "C:\test.txt",0 ;0
fehler1 db "Fehler beim Dateianlegen $"
fehler2 db "Fehler beim Dateischreiben $"
fehler3 db "Fehler beim Dateischliessen $"
;-------------------------------------------------------------------
start: mov ah,09h
mov dx,offset text ;offset
int 21h
mov bx,0
anf: mov ah,01h
int 21h
cmp al,27 ;27 = Escape
je esc
mov [302h+bx],al
inc bx
cmp bx,0FFh ;0xFF auch moeglich
jne anf
esc: mov [201h],bx ;!
mov ah,02h
mov dl,10 ;Zeichen?
int 21h
mov ah,02h
mov dl,13 ;Zeichen?
int 21h
;-------------------------------Datei anlegen-----------------------
mov ah,3Ch
mov cx,0
mov dx,offset datei
int 21h
jnc weit1
mov ah,09h
mov dx,offset fehler1
jmp ende
;-------------------------------Datei schreiben---------------------
weit1: mov [300h],ax ;Warum?
mov bx,ax ;Warum?
mov ah,40h
mov bx,[300h]
mov cx,[201h]
mov dx,302h ;Schreiben? 302h?
int 21h
jnc weit2
mov ah,09h
mov dx,offset fehler2
jmp ende
;-------------------------------Datei schliessen--------------------
weit2: mov ah,3Eh
mov bx,[300h]
int 21h
jnc ende
mov ah,09h
mov dx,offset fehler3
jmp ende
;-------------------------------------------------------------------
ende: mov ah,4Ch
int 21h
Hoffentlich könnt ihr damit etwas anfangen. Jedenfalls benötige ich jetzt weitere Programme, bei denen ich mir nicht zutraue, sie selbst zu erstellen:
KRYPT:
Der Benutzer soll einen 5-stelligen Schlüssel in Form von Ziffern eingeben, z. B. 12331.
Anschließend soll er einen beliebigen Text eingeben, z. B. "GUTEN TAG".
Jetzt sollen die ersten 5 Buchstaben des Textes mithilfe des Schlüssels umgewandelt werden, aus "GUTEN" würde also "HWWHO" werden. Die erste Ziffer des Schlüssels setzt also den ersten Buchstaben des Textes um die entsprechende Anzahl nach vorne im Alphabet.
Der umgewandelte Text soll abschließend in der Datei Krypt.txt abgespeichert werden.
DEKRYPT:
DEKRYPT hat die Aufgabe, den verschlüsselten 5-stelligen Text aus der Datei Krypt.txt wieder zu entnehmen und diesen zu entschlüsseln.
In Dekrypt.txt soll dann also "Guten" abgespeichert werden.
Ich wäre wirklich überaus dankbar, wenn mir das mal jemand zeigen könnte.
Gruß, Herman
|