ASM86FAQ (whatsit.txt)
============================================================================ Assembler FAQ (ASMFAQ, ASM86FAQ) ============================================================================
Diese FAQ beschaeftigt sich mit Fragen, die bei der Assemblerprogrammierung von 80x86 CPUs (vom 8086 bis zum PPro), FPUs, Grafikkarten, usw., immer wie- der auftauchen.
Sie soll einerseits dem Einsteiger helfen, in der Assemblerprogrammierung schneller Fuss zu fassen, und andererseits den Fortgeschrittenen und Profis als umfangreiches Nachschlagewerk dienen.
An der FAQ wird staendig weitergearbeitet, so dasz es derzeit etwa einmal im Monat zur Auflage einer neuen Release kommt. Sobald diese Mail hier im Fido- Echo ASM86.GER zu lesen ist, ist es mal wieder soweit... ;)
Was sich seit der letzten FAQ-Release geaendert hat, kann der zeitgleich zu dieser Mail erscheinenden Mail "ASM86FAQ: What's new?" entnommen werden.
Die jeweils neueste Release kann dann bequem ueber einen der angeschlossenen ASMFAQ-Stuetzpunkte (Mailboxen, WWW-Pages) bezogen werden. Detaillierte An- gaben zu den Bezugsquellen finden sich in der ebenfalls zeitgleich mit die- ser Mail geposteten Mail "ASM86FAQ: Where?".
Abschlieszend wie ueblich die aktuelle Topic-Uebersicht der FAQ:
BAW0001 Was ist Maschinensprache? BAW0002 Was ist Assembler? BAW0003 Warum Assembler? BAW0004 Zahlensysteme BAW0005 Datengroeszen BAW0006 Datentypen BAW0007 CPU-Registersatz BAW0008 CPU-Befehlsformat BAW0009 CPU-Befehlssatz BAW0010 MMX-Befehlssatz BAW0012 Real Mode BAW0015 RM/Flat4G Mode BAW0017 Exceptions BAW0018 Hochsprachen-Schnittstellen ! BAW0019 VGA-Registersatz BAW0020 Mode X (Tweaked Mode, Basis: Videomodus 13H) BAW0021 VBE 2.0 (VESA BIOS Extension) BAW0022 LFBM (Linear Frame Buffer Model) + BAW0023 CAS (Configuration Address Space, PCI)
STR0001 MCB-Struktur (Memory Control Block [DOS]) STR0002 PSP-Struktur (Program Segment Prefix [DOS])
FRM0001 COM-Format (Programm) FRM0002 EXE-Format [MZ] (Programm)
ALG0003 DWord -> BinStr (Zahlenkonvertierung) ALG0006 BinStr -> DWord (Zahlenkonvertierung) ALG0014 Boyer-Moore (Suche) ALG0018 Bresenham Circle (Grafik)
LSG0001 Wie erfahre ich, welche CPU vorhanden ist? LSG0002 Wie erfahre ich, welche FPU vorhanden ist? LSG0003 Wo liegen die Kommandozeilenparameter meines Programmes? LSG0004 Wie komme ich an das Startverzeichnis meines Programmes? LSG0005 Grundgeruest für RM/Flat4G und XMS LSG0006 Grundgeruest für RM/Flat4G und RAW LSG0007 Wie kann ich in allen Modes (RM, VM, PM) auf 386+ CPUs pruefen? LSG0008 Wie implementiere ich eine Random-Funktion in Assembler? LSG0009 Wie ermittle ich den Typ der aktiven Grafikkarte? LSG0010 Wie initialisiere ich einen Mode X (320x???, 360x???) [Lang]? LSG0011 Wie initialisiere ich Mode X 320x200 (Kurzversion)? LSG0012 Wie initialisiere ich Mode X 320x240 (Kurzversion)? LSG0013 Wie initialisiere ich Mode X 320x400 (Kurzversion)? LSG0014 Wie initialisiere ich Mode X 320x480 (Kurzversion)? LSG0015 Wie initialisiere ich Mode X 360x200 (Kurzversion)? LSG0016 Wie initialisiere ich Mode X 360x240 (Kurzversion)? LSG0017 Wie initialisiere ich Mode X 360x400 (Kurzversion)? LSG0018 Wie initialisiere ich Mode X 360x480 (Kurzversion)? + LSG0019 Wie stelle ich fest, ob PCI-Bus #0 CASAM1 unterstuetzt? + LSG0020 Wie stelle ich fest, ob PCI-Bus #0 CASAM2 unterstuetzt?
OPT0001 Grundsaetzliches zur Optimierung OPT0002 Code Alignment OPT0003 Data Alignment OPT0004 Register-Optimierung OPT0005 Unrolled Loops OPT0006 Cache-Optimierung (alle CPUs) OPT0007 386er-Optimierung OPT0008 Diverse Optimierungen
SEC0001 Anti-Debugger-Tips SEC0002 Verschluesseln von Daten
QLL0001 Allgemeine Systemprogrammierung QLL0002 Allgemeine Algorithmen QLL0003 Allgemeine Grafikprogrammierung QLL0004 Assemblerpakete QLL0005 Programmieren in Assembler
XXXXXXX Abkuerzungen
Fragen, Kommentare, Anregungen?
FAQ-Keeper:
Juergen Thelen
Fido: 2:2450/55.5 Internet: josh_thelen@msn.com