Stichwort Assembler

Heute hatte ich nach einigen Schulaufgaben endlich mal wieder zeit, mich ein wenig mit Assembler zu beschäftigen.

Ich hab keine Ahnung ob ich unseren Info-Lehrer mit meinen Vorschlag, vielleicht demnächst den Inline-Assembler von C durch zunehmen, überzeugt habe.

Jedenfalls haben wir vor ungefähr einen halben Jahr in dieser hardwareseitigen Sprache programmiert und zwar auf einen jetzt schon fast 20 Jahre alten, 8Bit 8085 Intel ohne jeden Massenspeicher, bis auf den 64KB großen RAM. Dieser Speicher hat ja bekanntlich die Eigenart nach Stromunterbrechung alle Informationen zu verwerfen. So mussten wir unsere Programme stets knapp halten, da wir sonst nie Fertig geworden währen. Den fertigen Code speicherten wir dann einfach mit Hilfe von Stift und Papier ab und packten ihn in das Register AP

An diesen alten PCs gab es jeweils eine 8 Bit LED Anzeige, die uns die jeweiligen Werte zurückgab. Mit OUT <HEX> konnten wir diese ansteuern. So haben wir diese Anzeige verwendet um ein Lauflicht, welches man im Speicher frei programmieren konnte, auszugeben:

Start: 		;Marke
LXI H,OE200 	;Startwert des Speichers festlegen
L1: 		;Marke
MOV A, M 	;Werte aus Speicher holen
ADI 0 		;Flag setzen
JZ Start 	;Sobald AKKU=0 zu Start
OUT 2 		;Output an LED
CALL 0895 	;Systemfunktion Warten
INX H 		;Inkrement H
JMP L1 		;Jump zu L1

Da es aber kaum noch 8 Bit CPUs gibt (es gibt zwar einige Emulartor, einfach mal googln), ist diese Art der Programmierung eigentlich nicht mehr relevant. Interresanter währe hier 16 oder 32 Bit Assembler. Auf dieser Seite wird erklärt wie man vorgehen muss. Jedoch bezieht sich die Homepage nur auf grafische Anwendung und das verwenden von DirektDraw etc unter dieser Sprache.

Es gibt auch nützliche Programme wie Disassembler. OllyDbg fällt z.B. darunter. Diese Programme werden anscheinend auch von Crakern verwendet und sind bei Shareware Programmierern gefürchtet (ohne einen Dissasembler würde es erst keine Craks geben ;-)). Wer also Programme manipulieren möchte, muss Assembler können, genauso welche die diese sicherer machen möchten oder einfach extrem viel Performance aus einen Programm gewinnen möchten. Assembler ist kurz auch in unseren heutigen Leben nicht mehr wegzudenken, auch wenn viele Leute glauben das die Sprache ausgetorben sei.

Martin, PFVF.de

Schreibe einen Kommentar