MAKRO-11
Paradigm | ostrukturerad , imperativ |
---|---|
Familj | assembleringsspråk |
Utvecklare | Digital Equipment Corporation |
Dök först upp | 1980 |
Maskinskrivningsdisciplin | Oskrivet |
Omfattning | Lexikalisk |
Implementeringsspråk | assembleringsspråk |
Plattform | PDP-11 |
OS | Alla DEC PDP-11 |
Influerad av | |
PAL-11R | |
Influerad | |
VAX MACRO |
MACRO-11 är ett assemblerspråk med makrofunktioner , designat för PDP-11 minidatorfamiljen från Digital Equipment Corporation ( DEC). Det är efterföljaren till Program Assembler Loader ( PAL-11R ), en tidigare version av assemblerspråket PDP-11 utan makrofaciliteter.
MACRO-11 stöddes på alla DEC PDP-11 operativsystem. PDP-11 Unix -system inkluderar också en assembler (namngiven som ), strukturellt lik MACRO-11, men med annan syntax och färre funktioner. MACRO-11-assembleraren (och program skapade av den) kan också köras under RSX-11- kompatibilitetsläget för OpenVMS på VAX .
Programmeringsexempel
Ett komplett " Hello, world! "-program i PDP-11 macro assembler, att köras under RT-11 :
.TITLE HEJ VÄRLDEN .MCALL .TTYOUT , .EXIT HELLO: : MOV #MSG,R1 ;STARTADRESS PÅ STRÄNG 1 $: MOVB ( R1 ) + , R0 ;HÄMTA NÄSTA KARAKTÄR BEQ DONE ;OM OUT, EXIT LOOP ANDRE SKRIV UT DEN BR 1 $ ; REPEAT LOOP KLAR: .EXIT MSG: .ASCIZ / Hej världen ! / .SLUT HEJ
.MCALL pseudo-op varnar assemblern att koden kommer att använda makrona
.TTYOUT och
.EXIT .
Makron .TTYOUT
och .EXIT
är definierade i standardsystemets makrobibliotek för att expandera till EMT-
instruktionerna för att anropa RT-11-monitorn för att utföra de begärda funktionerna.
Om den här filen är HELLO.MAC , är RT-11- kommandona för att montera, länka och köra (med konsolutgång visad) följande:
0
.MAKRO HEJ FEL UPPTÄCKT : .LINK HELLO .R HEJ Hej , världen ! .
(RT-11-kommandotolken är " . "
)
För ett mer komplicerat exempel på MACRO-11-kod, två slumpmässigt valda exempel är Kevin Murrells KPUN.MAC, eller Farba Researchs JULIAN-rutin. Mer omfattande bibliotek med PDP-11-kod finns i Metalabs freeware- och Trailing Edge-arkiv.
externa länkar
- Originaldokumentation (RSX11M_V2)
- Michael Singer, PDP-11. Assembler Language Programming and Machine Organization, John Wiley & Sons, NY: 1980.