⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 as_de.html

📁 万能汇编工具
💻 HTML
📖 第 1 页 / 共 5 页
字号:
STDDEF87.INC<BR>
STDDEF90.INC<BR>
STDDEF96.INC<BR>
STDDEFXA.INC<BR>
STDDEFZ8.INC</TH>
<TH VALIGN=TOP NOWRAP ALIGN=LEFT>Register- &amp; Bitadressen AVR-Familie<BR>
Registeradressen COP8<BR>
Registeradressen 68HC908GP32<BR>
Registeradressen 68HC12<BR>
Registeradressen Mitsubishi M16C<BR>
Registeradressen TI MSP430<BR>
Register- &amp; Makrodefinitionen ST9<BR>
Registeradressen Z380<BR>
Registeradressen 6804<BR>
Befehlsmakros und Registeradressen<BR>
PIC16C5x<BR>
Registeradressen PIC17C4x<BR>
Registeradressen PIC16C8x<BR>
Registeradressen TMS3202x<BR>
Register- &amp; Bitadressen TMS370xxx<BR>
Peripherieadressen TMS320C3x<BR>
Befehlsmakros TLCS-47<BR>
Definition von SFRs und Bits f&uuml;r<BR>
8051/8052/80515<BR>
Registeradressen DSP56000<BR>
Peripherieadressen TMS320C5x<BR>
Befehlsmakros &amp; Registeradressen<BR>
PowerPC<BR>
Registeradressen &amp; Makros ST6<BR>
Registeradressen 75K0<BR>
Register- &amp; Speicheradressen TLCS-870<BR>
Register- &amp; Speicheradressen TLCS-90<BR>
Register- &amp; Speicheradressen TLCS-900<BR>
SFR-&amp; Bitadressen Philips XA<BR>
Registeradressen Z8-Familie</TH>
</TR>
<TR ALIGN=LEFT>
<TD VALIGN=TOP NOWRAP ALIGN=LEFT><B> Verzeichnis LIB</B></TD>
<TD VALIGN=TOP NOWRAP ALIGN=LEFT></TD>
</TR>
</TABLE></CENTER>
</CENTER>
<P><CENTER>Tabelle 2.2: Standardumfang einer Bin&auml;rdistribution - Teil 2<A
             NAME="ref_TabCommonPackageList2"></A>
</CENTER><P>

<P>

<CENTER>
<P><CENTER><TABLE SUMMARY="No Summary" BORDER=1 CELLPADDING=5>
<TR ALIGN=LEFT>
<TH VALIGN=TOP NOWRAP ALIGN=LEFT>Datei</TH>
<TH VALIGN=TOP NOWRAP ALIGN=LEFT>Funktion</TH>
</TR>
<TR ALIGN=LEFT>
<TD VALIGN=TOP NOWRAP ALIGN=LEFT><B> Verzeichnis MAN</B></TD>
<TD VALIGN=TOP NOWRAP ALIGN=LEFT></TD>
</TR>
<TR ALIGN=LEFT>
<TD VALIGN=TOP NOWRAP ALIGN=LEFT>ASL.1<BR>
PLIST.1<BR>
PBIND.1<BR>
P2HEX.1<BR>
P2BIN.1</TD>
<TD VALIGN=TOP NOWRAP ALIGN=LEFT>Kurzanleitung zu AS<BR>
Kurzanleitung zu PLIST<BR>
Kurzanleitung zu PBIND<BR>
Kurzanleitung zu P2HEX<BR>
Kurzanleitung zu P2BIN</TD>
</TR>
</TABLE></CENTER>
</CENTER>
<P><CENTER>Tabelle 2.3: Standardumfang einer Bin&auml;rdistribution - Teil 3<A
             NAME="ref_TabCommonPackageList3"></A>
</CENTER><P>

<P>
Je nach Plattform kann eine Bin&auml;rdistribution aber noch weitere
Dateien enthalten, um einen Betrieb zu erm&ouml;glichen, wie es z.B.
bei DOS-Extendern der Fall ist. F&uuml;r die DOS-DPMI-Version ergeben    
sich die in Tabelle <A HREF="#ref_TabDPMIPackageList">2.4</A>
gelisteten Erg&auml;nzungen. Es spricht &uuml;brigens nichts dagegen,
als Hilfsprogramme die Versionen aus einer DOS-Distribution zu
verwenden, da diese einerseits ohne den Extender-Overhead deutlich
schneller ablaufen und andererseits den vom Extender bereitgestellten
erweiterten Speicher nicht ben&ouml;tigen.
<P>

<CENTER>
<P><CENTER><TABLE SUMMARY="No Summary" BORDER=1 CELLPADDING=5>
<TR ALIGN=LEFT>
<TH VALIGN=TOP NOWRAP ALIGN=LEFT>Datei</TH>
<TH VALIGN=TOP NOWRAP ALIGN=LEFT>Funktion</TH>
</TR>
<TR ALIGN=LEFT>
<TD VALIGN=TOP NOWRAP ALIGN=LEFT><B> Verzeichnis BIN</B></TD>
<TD VALIGN=TOP NOWRAP ALIGN=LEFT></TD>
</TR>
<TR ALIGN=LEFT>
<TD VALIGN=TOP NOWRAP ALIGN=LEFT>DPMI16BI.OVL<BR>
RTM.EXE</TD>
<TD VALIGN=TOP NOWRAP ALIGN=LEFT>DPMI-Server f&uuml;r den Assembler<BR>
Laufzeit-Modul des Extenders</TD>
</TR>
</TABLE></CENTER>
</CENTER>
<P><CENTER>Tabelle 2.4: Zus&auml;tzliche Dateien in einer
             DPMI-Bin&auml;rdistribution<A
             NAME="ref_TabDPMIPackageList"></A>
</CENTER><P>

<P>
Eine OS/2-Bin&auml;rdistribution enth&auml;lt neben den Basisdateien     
eine Reihe von DLLs, die zur Laufzeitumgebung des verwendeten
emx-Compilers geh&ouml;ren (Tabelle <A
HREF="#ref_TabOS2PackageList">2.5</A>). Falls man diese DLLs (oder
neuere Versionen davon) bereits besitzt, kann man diese auch wieder
l&ouml;schen und seine eigenen benutzen.
<P>

<CENTER>
<P><CENTER><TABLE SUMMARY="No Summary" BORDER=1 CELLPADDING=5>
<TR ALIGN=LEFT>
<TH VALIGN=TOP NOWRAP ALIGN=LEFT>Datei</TH>
<TH VALIGN=TOP NOWRAP ALIGN=LEFT>Funktion</TH>
</TR>
<TR ALIGN=LEFT>
<TD VALIGN=TOP NOWRAP ALIGN=LEFT><B> Verzeichnis BIN</B></TD>
<TD VALIGN=TOP NOWRAP ALIGN=LEFT></TD>
</TR>
<TR ALIGN=LEFT>
<TD VALIGN=TOP NOWRAP ALIGN=LEFT>EMX.DLL<BR>
EMXIO.DLL<BR>
EMXLIBC.DLL<BR>
EMXWRAP.DLL</TD>
<TD VALIGN=TOP NOWRAP ALIGN=LEFT>Laufzeitbibliotheken f&uuml;r AS und<BR>
die Dienstprogramme<BR>
<BR>
</TD>
</TR>
</TABLE></CENTER>
</CENTER>
<P><CENTER>Tabelle 2.5: Zus&auml;tzliche Dateien in einer
             OS/2-Bin&auml;rdistribution<A
             NAME="ref_TabOS2PackageList"></A>
</CENTER><P>

<P>

<H2><A NAME="sect_2_3_">2.3. Installation</A></H2>
<P>
Eine besondere Installation ist f&uuml;r die Nutzung einer               
Bin&auml;rdistribution nicht notwendig, es gen&uuml;gt, das Archiv an
passender Stelle auszupacken und dann noch einige Kleinigkeiten zu
erg&auml;nzen. Als Beispiel hier eine Installation, wie sie
vielleicht ein UNIX-Anh&auml;nger vornehmen w&uuml;rde:
<P>
Legen Sie ein Verzeichnis c:\as an (im folgenden nehme ich an,
da&szlig; Sie AS auf Laufwerk C installieren wollen), wechseln Sie in
dieses und entpacken Sie das Archiv unter Erhalt der Verzeichnisnamen
(bei Verwendung von PKUNZIP ist dazu die Kommandozeilenoption -d
erforderlich). Sie sollten jetzt folgenden Verzeichnisbaum haben:
<PRE>

c:\as
c:\as\bin
c:\as\include
c:\as\lib
c:\as\man
c:\as\doc

</PRE>
Erg&auml;nzen Sie jetzt die<TT> PATH</TT>-Anweisung in Ihrer<TT>
AUTOEXEC.BAT</TT> um das Verzeichnis c:\as\bin, so da&szlig; AS und
seine Hilfsprogramme vom System gefunden werden. In dem<TT>
lib</TT>-Verzeichnis erzeugen Sie mit einem beliebigen Texteditor
eine Datei<TT> AS.RC</TT> mit folgendem Inhalt:
<PRE>

-i c:\as\include

</PRE>
Diese sogenannte<EM> Key-Datei</EM> zeigt AS, in welchem Verzeichnis
er seine Include-Dateien suchen soll. Damit AS diese Key-Datei bei
Start auch beachtet, mu&szlig; noch folgende Anweisung in die<TT>
AUTOEXEC.BAT</TT>:
<PRE>

set ASCMD=@c:\as\lib\as.rc

</PRE>
Was Sie alles noch in der Key-Datei voreinstellen k&ouml;nnen, steht
im folgenden Abschnitt.
<P>
Die Installation der DPMI-Version sollte im Prinzip genauso verlaufen    
wie der reinen DOS-Version; wenn der Pfad das<TT>
bin</TT>-Verzeichnis enth&auml;lt, werden die Dateien des
DOS-Extenders automatisch gefunden und man sollte von dieser Mimik
(mit Ausnahme der l&auml;ngeren Anlaufzeit...) nichts mitbekommen.
Theoretisch ist es m&ouml;glich, da&szlig; Sie auf 80286-Rechnern
beim ersten Start mit einer Meldung der folgenden Form konfrontiert
werden:
<PRE>

  machine not in database (run DPMIINST)

</PRE>
Da das Tool DPMIINST bei neueren Versionen des DOS-Extenders von
Borland aber nicht mehr dabei ist, nehme ich einmal an, da&szlig;
diese Sache sich erledigt hat...falls doch nicht, bitte ich um
R&uuml;ckmeldung!
<P>
Die Installation der OS/2-Version kann in weiten Z&uuml;gen genauso      
ablaufen wie f&uuml;r die DOS-Version, nur da&szlig; dem System noch
die DLLs bwkannt gemacht werden m&uuml;ssen. Wenn Sie den<TT>
LIBPATH</TT>-Eintrag in Ihrer<TT> CONFIG.SYS</TT> nicht erweitern
wollen, ist es nat&uuml;rlich auch m&ouml;glich, die DLLs in ein
Verzeichnis zu verschieben, das bereits dort aufgef&uuml;hrt ist.
<P>
Wie bereits erw&auml;hnt, beschr&auml;nkt sich die
Installationsbeschreibung hier nur auf Bin&auml;rdistributionen. Da
eine Installation unter Unix im Augenblick immer eine                    
Quellcodedistribution ist, geht der Verweis hier unisono in Anhang <A
HREF="#ref_ChapSource">I</A>.
<P>

<H2><A NAME="sect_2_4_">2.4. Aufruf, Parameter</A></H2>
<A NAME="ref_SectCallConvention"></A>
<P>
AS ist ein kommandozeilengesteuertes Programm, d.h. alle Parameter
und Dateiangaben sind in der Kommandozeile anzugeben.
<P>
Zu AS geh&ouml;rt eine Reihe Reihe von Nachrichtendateien (erkennbar
an der Endung<TT> MSG</TT>, aus denen AS zur Laufzeit die f&uuml;r
die jeweilige Landessprache dynamisch nachl&auml;dt. AS sucht nach
diesen Dateien in den folgenden Verzeichnissen:
<UL>
<LI> im aktuellen Verzeichnis;</LI>
<LI> im Verzeichnis der EXE-Datei;</LI>
<LI> in dem in der Environment-Variablen<TT> AS_MSGPATH</TT> angegebenen
    Verzeichnis, oder alternativ in den in der<TT>
    PATH</TT>-Variablen gelisteten Verzeichnissen;</LI>
<LI> In dem Verzeichnis, das AS zur Kompilationszeit durch das Makro<TT>
    LIBDIR</TT> mitgegeben wurde.</LI>
</UL>
Diese Dateien werden von AS<EM> zwingend</EM> zum Betrieb
ben&ouml;tigt, d.h. findet AS diese Dateien nicht, bricht er an
dieser Stelle sofort ab.
<P>
Die Auswahl der Sprache (momentan Deutsch oder Englisch) orientiert
sich unter DOS und OS/2 an der<TT> COUNTRY</TT>-Einstellung in
der<TT> CONFIG.SYS</TT>, unter Unix an der<TT>
LANG</TT>-Environment-Variablen.
<P>
Um den Speicherbedarf von AS unter DOS &uuml;berhaupt befriedigen zu     
k&ouml;nnen, wurden die verschiedenen Codegeneratormodule in der
DOS-Version in einen Overlay verlegt, der Teil des EXE-Files ist.
Eine getrennte OVR-Datei wie bei fr&uuml;heren Versionen von AS
existiert also nicht mehr, AS versucht aber wie bisher auch
weiterhin, die durch das Overlaying entstehenden Verz鰃erungen durch
Nutzung von eventuellem EMS- oder XMS-Speicher zu reduzieren. Sollte
diese Verwendung zu Problemen f&uuml;hren, so k&ouml;nnen Sie die
Verwendung von EMS bzw. XMS unterbinden, indem Sie einer
Environment-Variablen<TT> USEXMS</TT> bzw.<TT> USEEMS</TT> den
Wert<TT> n</TT> zuweisen. So kann man z.B. mit dem Befehl
<PRE>

   SET USEXMS=n

</PRE>
die Verwendung von extended memory verhindern.
<P>
Da AS alle Ein-und Ausgaben &uuml;ber das Betriebssystem abwickelt
(und daher unter DOS auch auf nicht ganz so kompatiblen PC's laufen
sollte) und eine rudiment&auml;re Bildschirmsteuerung ben&ouml;tigt,
gibt er w&auml;hrend der Assemblierung ANSI-Steuersequenzen aus.
Falls Sie in den Ausgaben von AS also seltsame Zeichen sehen sollten,    
fehlt offensichtlich in Ihrer CONFIG.SYS die Einbindung des
ANSI-Treibers (<TT>device=ansi.sys</TT>), die weitere Funktion von AS    
wird dadurch aber nicht beeinflu&szlig;t. Alternativ k&ouml;nnen Sie
aber auch die Ausgabe von ANSI-Sequenzen durch das Setzen der
Environment-Variablen<TT> USEANSI</TT> auf<TT> n</TT> ganz
unterdr&uuml;cken.
<P>
Der DOS-Extender der DPMI-Version l&auml;&szlig;t sich in seiner         
Speicherbelegung durch diverse Kommandozeilenoptionen beeinflussen.
Diese k&ouml;nnen Sie bei Bedarf der Datei DPMIUSER.DOC entnehmen.
Zus&auml;tzlich ist ASX in der Lage, bei Bedarf den vorhandenen
Speicher durch eine Swap-Datei zu ,,erweitern''. Dazu belegt man eine
Environment-Variable<TT> ASXSWAP</TT> folgenderma&szlig;en:
<BLOCKQUOTE>
    <TT> SET ASXSWAP=&lt;Gr&ouml;&szlig;e&gt;[,Dateiname]</TT>
</BLOCKQUOTE>
Die Gr&ouml;&szlig;enangabe erfolgt in Megabytes und<B> mu&szlig;</B>
gemacht werden. Der Name der Datei ist dagegen optional; fehlt er, so
wird die Swap-Datei im aktuellen Verzeichnis unter dem Namen<TT>
ASX.TMP</TT> angelegt. In jedem Falle wird die Swap-Datei nach
Programmende wieder gel&ouml;scht.
<P>
Die Kommandozeilenparameter k&ouml;nnen grob in drei Klassen
eingeteilt werden: Schalter, Key-File-Referenzen (s.u.) und
Dateispezifikationen. Parameter dieser beiden Klassen k&ouml;nnen
beliebig gemischt in der Kommandozeile auftreten, AS wertet zuerst
alle Parameter aus und assembliert dann die angegebenen Dateien.
Daraus folgen zwei Dinge:
<UL>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -