Re: Assembler

From: Bernd Walter <ticso(at)cicely8.cicely.de>
Date: Sun, 25 Jun 2000 18:28:27 +0200

On Sat, Jun 24, 2000 at 08:03:04PM +0200, Christian Weisgerber wrote:
> J Wunsch <joerg_wunsch(at)uriah.heep.sax.de> wrote:
>
> > Hier nochmal das Testprogramm aus dem Beispiel in as-Syntax.
>
> Das hätte ich jetzt gerne nochmal für Alpha.

Oje - da will sich einer ins Unglueck stuerzen...
Das Problem mit Alpha ist das alle Befehle exact 32Bit gross sind.
Daraus folgt nun mal auch das es keinen Befehl gibt der in der Lage
ist Konstanten mit mehr als 16Bit Groesse zu Laden.
Man kann natuerlich Problemlos bis zu 64Bit mit einem Befehl aus dem
Speicher hohlen und speichern - aber das sind halt indirekte Zugriffe
bei denen die Addresse bereits in einem Register steht.
Normalerweise bekommt ein Programm wichtige Daten wie z.B. Addresse vom
Text-Segment direkt in Registern (gp) mitgeteilt und arbeitet dann
mit Offsets von diesen. Bei eigenen Assemblerprogrammen hat man diesen
Luxus leider nicht und muss erst mal einige Addressen organisieren.
Nach der initialisierung ist Alpha Assembler allerdings IMO leichter
als Intel - nicht zuletzt weils eigendlich noch keine Altlasten aufweist.

Ich sehe zugegebenermassen unter Unix nicht ganz die Notwendigkeit
komplette Programme in Assembler schreiben zu muessen. Es macht hier
eigendlich nur innnerhalb spezieller Funktionen Sinn.

-- 
B.Walter              COSMO-Project         http://www.cosmo-project.de
ticso(at)cicely.de         Usergroup           info(at)cosmo-project.de
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Sun 25 Jun 2000 - 18:28:28 CEST

search this site