Skip to content

Page 1

ND 10311 Assembler for ND-500

INTRODUCTION

During the execution of a computer program, the instruction sequence is represented inside the machine by binary instructions. However, the programmer specifies instructions symbolically. The conversion from a symbolic representation of a program to its binary representation inside the computer is performed by another computer program. This is referred to as the assembly process, and the program which performs the conversion is called an assembler.

An assembler is a program that accepts a program written in assembly language as input and produces its machine language equivalent. Each instruction word in an assembly language program is translated to only one instruction in machine language.

FEATURES

  • Include Command.
  • Macros.
  • Conditional Assembler.

OPERATING PROCEDURE AND COMMANDS

A command consists of a command name followed by zero or more parameters. Several commands, along with all required parameters, may be written on the same line.

The command name consists of one or more parts separated by hyphens ("-"). Each part of the command name may be abbreviated as long as the command can be distinguished from all other command names.

The standard editing characters are available while typing commands.

The collection of parameters is done in a standardized way as follows:

  • Parameters are separated by either a comma or any number of spaces or a combination of comma and spaces.
  • Parameters may be null in which case a default value is assigned.
  • When a parameter is missing (as opposed to null) it is asked for, and the command processor expects you to supply the required parameter plus more parameters if you wish.
  • When a parameter syntax error is detected, an error message is printed and the parameter is asked for.
  • Excess parameters are ignored.

Commands can be given directly to the SINTRAN III command processor by preceding them with an @ sign.

Some of the useful commands are:

HELP

The HELP command lists available commands on the terminal. Only those commands that have as a subset are listed. If is null then all available commands are listed.

EXIT

The EXIT command returns control to the SINTRAN III command processor.

LINES

This command enables the user to specify the number of lines per page on the assembly listing.

ASSEMBLE

This command assembles the specified with listing on and object output to . If no list file is specified, no listing is produced, but error messages are printed on the terminal. If no object file is specified, no object output is produced. The default file types are: :SYMB, :LIST, and :NRF.


[Logo: ND COMPUTER SYSTEMS]

Page 2

Commands

LIST <list directives> . . .
NO-LIST <list directives> . . .

These commands are used to set/reset various internal flags which control the format and extent of the assembly listing. A LIST command with an empty parameter will cause the listing mode to be set to its default (initial) value. A NO-LIST command with an empty parameter will cause all output, except error messages, to be suppressed.

PRINT-MACRO <macro name> <output file>

This command prints the currently defined macros on the specified output file. Parameters are named P1, P2, etc. The default output file is the terminal and the default file type is .SYMB. If is null, all macros are printed. Otherwise, only the specified macro is printed.

TABLE-SIZES <size parameter>

This command enables the user to change the size of any of the tables allocated in the assembler's dynamic work area. If the new table size is accepted, the old size is printed on the terminal and the assembler is initialized.

Summary of Commands

Command Description
$LIST listing-options Enable listing options.
$NOLIST listing-options Disable listing options.
listing-options:
GLOBAL-SYMBOLS Global symbols in symbol table.
LOCAL-SYMBOLS Local symbols in symbol table.
LOCATION-COUNTER Location counter field.
GENERATED-CODE Code fields.
CROSS-REFERENCE-TABLE Cross-reference table.
$TITLE title-string Define title string. Also performs page eject.
$EJECT Page eject.
$IF expression Conditional assembly.
$ELSIF expression 0 = FALSE, ><0 = TRUE.
$ELSE Optional $ELSE command.
$ENDIF End of conditional block.
$INCLUDE file-name Include source file.
$SECTION section-name Define section.
$MACRO macro-name Start of macro definition.
$ENDMACRO [macro-name] End of macro definition.
$EXITMACRO Immediate macro exit.
$PACK Pack data elements.
$ALIGN Align data elements.
$EOF End-of-file.

Summary of Directives

Directive Description
MODULE [module-name Define start of module.
[".", priority (",") code]]] The default value for priority and code is zero.
ENDMODULE [module-name] Define end of module. The name must be the same as in the matching MODULE.
IMPORT-P identifier-list Import external routines
IMPORT-D identifier-list Import external data
EXPORT identifier-list Export internal routines or data.
.MAIN identifier Define main entry point.
LIB identifier-list Define library symbols.
identifier ".": ALIAS string Define alternative external representation.
ROUTINE identifier-list Start of subroutine with local symbols.
ENDROUTINE End of subroutine.
STACK [FIXED] Start of stack definition.
ENDSTACK End of stack definition.
RECORD [FIXED] Start of record definition.
ENDRECORD End of record definition.
data-type BLOCK size Allocate block in data memory.
data-type DATA data element list Allocate constant data in data memory.
data-type PROG data element list Allocate constant data in program memory.
DESC [limit ", " address] Allocate storage preceded by array descriptor.
data-type ARRAY size Same as BY ARRAY.
STRING size Same as BY ARRAY.
data-type ARRAYDATA data element list Allocate constant data preceded by array descriptor.
STRINGDATA data element list Same as by ARRAYDATA.
ORG-P origin Set absolute program origin.
ORG-D origin Set absolute data origin.
BOUND-P base Advance program location counter to next multiple of base.
BOUND-D base Advance data location counter to next multiple of base.
MESSAGE Output message string to object code.

Documentation

Nord-500 Assembler Reference Manual . . . ND-60.113


Page 3

The page is entirely blank. No content is available to convert to Markdown.


Page 4

ND               Bergen, tel. 05-222250                                     Trondheim, tel. 075-16520. tIx. 55580 comet n
Norsk Data       Sandnes, tel. 04-626544                                    Stockholm (Upplands Väsby), tel. 08-590.94300, tIx. 15255 nordata s
                 Tromsø, tel. 06-77655                                      Stockholm (Solna), tel. 08-252585, tIx. 13766 swecom s
                 Stockholm, tel. 0701-96050, tIx. 15255 nordata s           Odense, tel. 09-175410, tIx. 55690 cone cmt          
                 Gothenburg, tel. 0311-67070                                Ballerup (Copenhagen), tel. 02-658860
                 Malmö, tel. 040-96350                                      Düsseldorf, tel. 0211-664388, tIx. 8587277 comet d
                 Copenhagen, tel. 01-3212655, tIx. 37275 nd dk              
                 Wiesbaden, tel. 0611-6944711, tIx. 418643 ndoda n
                 Ferney-Voltaire, tel. 050.40.5867, tIx. 38503 nordata ferney 
                 Paris, tel. 01-834369, tIx. 61065 nd paris
                 Lyon, tel. 07-837471  
                 Newbury, Berkshire, tel. 0635-31465, tIx. 849919 norsk g
                 Boston, tel. 617-237-2045, tIx. 921470 norsk well 

                 Jernkoven 20                                               Jernkoven 20
                 Boks 4 Linderberg gård                                     Boks 4 Lindeberg gård
                 Oslo 10                                                    Oslo 10
                 Tel.: 02-309030                                            Tel.: 02-309030
                 Tlx.: 18661 nd n                                           Tlx.: 18661 nd n

NOTE: NORSK DATA reserves the right to change specifications without notice