• Keine Ergebnisse gefunden

Assembler Output

Im Dokument UNIVERSITY MARYLAND (Seite 19-0)

When output is to occur on the printer, the following three words are used to call the appropriate output subroutine

LMJ

+ +

XII, NPRT$

1, < format label>

<walk-back word>

The executive request PIUNT,1$ rllaji d rJ brt:: used Ji'J:( h11<-o tdint.(:j:< output. An exaluplc of the coding for PRIN'I'$ (h:;i,l;g il [<tv!. f'c:dj'VF 1;.>:

p F'ORM

IMAGE I HO BUl;ll

LA A 0, (P S,!, I (vi A G 1';; , ,~,

ER

""'q 1:-',[" " rt-J"f$

If you want to be tl'icky you ( " L " 1'",

'HO

nn:M'

A (') ( , ~' "1

r'" ' ','

" J U='U i!'/l,~l,';

IMA,G,E LA

ER

PRINT$

This will do the BanllE;

When output is to go to a legilJ '.lat ud.'cl thanUl~ h::'I; l,d lIter the ,Hi i:le~nbly

language code sequen,-~e is:

LMJ

+ + +

6.3.1 Reader)nE~lt,

For input from'the ca:r'd :n2;dd,,) '"

"\

\

'"

LMJ

+ +

XII ~ N\i\l DU$

1 " «unit> )

O~ <iOY'ITH,t

<-v;ICi..U,<"back word>

]." <:forrnat l.abel>

<walk··back wo:td;>, An alternate way of reading is by the eJrecutive assembly language code would

LA AO, «transfer label> t <'. startirlg bl\j,J,l'€ 8 IS label»

ER READ$

< starting addre 58 Jabel>

where: <transfer> label iswheI:'e tu go wheu dil end""f·"fHe )s :read

< starting address label> iE, the base addn~ss of the storage area

<value> is the size of the st()rage~ illea At the completion of the executive request HZ

of words read.

AI) eOl1tain. the nurnber

-16-·

6.3.,2 Input With END Clause

Corresponding to the F¢R TRAN input

READ «unit>, <fonnat label>, END=<transfer label» ..•

the assembly language code sequence is LMJ

+ + + +

Xll,NRDU$

2, «unit»

0, <format label>

<walk-back word>

2, <transfer label>

6.4 Performirlg the Input/Output

Once the format has been transmitted, the variable location for each variable is transmitted by the pair

LA,U SLJ

-AO, <variable refe,rence>

NI¢l$

When all the variables have transmitted, the following line executes the output

SLJ NI¢2$

7. Simple Assembly Procedures 7. 1 The Functioning of Procedure s

There are times while programming in assembly language when it becomes necessary to repeat blocks of code which are virtually identical except for

several common subfields of the instruction, e. g. : I) TLE', U

TG,U J

AO, r 9 r

+

1 AO, ' 0' N¢TNUM

II) TLE.,U TG,U J

AI,'9'+1 AI, ' 0' ALPHA2

, In both cases, the net effect is to test a given register to see if it has a field-data number in it, and if not, transfer to some location. Now, if the program required many repetitions of this code in many different place s, then just the task of writing it would be burdensome, and moreover, if others were to look at such a program, then its sheer bulk might very well be detrimental to their understanding the program flow. Thus it would be very helpful indeed if there were some way we could specify the skeleton of a block of code ( a template,

so to speak), and then reference that code by a short statement.

-17-7.2 Creating a Proe edure

The 11 08 As sembler has the caprt hi lity of be ing given a block of skeleton state-ments which may be referenced, and thereby be inserted into the object code, by a single staten"lent. This is cf[~ct('d by the use of the assembler directive PR¢C (short for Procedure, tb' Univac equivalent of what the rest: of the world calls a macro). We first give <ill example of a siluple PH.¢C, and then the £onn and use of PR¢C s in general.

If, using the above example, we placed at the beginning of the program the following skeleton:

P':< PR¢C

TLE,U PO, I), , 9' +1 TG,U P(l, I),

'0'

J P(l, 2)

END then the single statem.ent

-P 1,0, NQi'TNUM

would generate a block of code cqu;valent to I) above, and P .AI, A LPHA2

would produce bloc k II).

The general form of a reference to a PH.¢C skeleton is:

_ <PR¢C-NAME> -<ARGLIST>

where

<ARGLIST> has the form

< fieidi > <field2> <fieldk>

and where the ith field has the form

_ < subfieldI> , < subfield2> , ... , < subfieldM>

where

<PR¢C-NAME>

. is a name as sociated with a given skeleton and the fields and subfields are

r arguments r with which the assemhler will fill out the skeleton. It is im-portant to note that fields are separated by blanks and subfields of a given field by commas.

In the above example, the PRq)C llZlTI1C is P, and there is only one field which has two subfields. Another exarnph! would be:

JUMP A5 LAOIOO,Lli.0200, LA0300, LA0400 ERR350

In this case, JUl'vlP will be a nanie {or ~. PRq)C skeleton, and there are three fields, the first of which has onlr OJ-I'-' 81lbficld, the second four, and the third one.

18

-7.3 pec)i.1ring a.Procedure

Now that the syntax of a skeleton has been established, it would be beneficial to know how to tell the assembler that something is indeed a PR¢C skeleton.

This is done by evoking the as scmbler diredive PRyJC. The fornl of declaring a PR¢C skeleton is

< PR¢C -NAME> ':' PRPC

where <PR¢C -NAME> is the name to be attached to the skeleton and starts in column one. As soon as the assembler encounters a PR¢C card, all cards thereafter are conl,idered part of the skeleton until the PR¢C I S associated END card is encountered. This END carel is included in addition to the pro-gram END card and is needed for every

pnpc

to signify the end of a logical

block skeleton. .

7.4 Using a Procedure

All we need now is the m.echanism. for picking up the argum.ents to be inserted into the skeleton. This is done by using \vhat Ullivac calls paraform.s (which is indeed quite surpri sing, as that is the correct term.). A paraform has (forgive m.e) the form

<PR¢C -NAME> (i, j)

'where" i a·lid j are integers greater than zero. This paraform references the jth subfield of the ith field on the line which referenced the PR¢C.

Using our first PR¢C example:

and the call

P':' PR¢C TLE,U TG,U J END

P( I, I), ' 9'

+

I P(I,I),'O' P( 1,2)

P AO,N¢TNUM

we have that: the paraform P(l , 1) references the first subfield of the first field of the call, i. c., AO, and the paraform P(l, 2) is equated to the value of the second subfield of the first (and only!) field of the call, namely,

N¢TNUM. In our second sam.ple call, the various argum.ents would be refer-encedby:

AS

=

JUMP(l, 1) LAOIOO

=

JUMP(2, 1) LA0200

=

JUMP(2, 2) LA0300

=

JUMP(2,3)

LA0400 = JUMP(2,4) ERR350

=

JUMP(3,1)

-19-8. The Assembler Code Listing

Accompanying the symbolic listing of your assembly language program is an octal listing of the code generated by the assembler in instruction format. The reason for this special format is that it is easier to see what has been outputcd if each field is separated instead of compresse'd into the ,twelve octal bits as in a dump. This forrnat comes out exactly as it appears in an instruction word -i.e., f,j,a,x,h,i,u.

For example:

Assuming LOC is program relative 043, we have

where

27 00 13 00 0 0 000043 LX XII., LOC

27 is the function code for LX (as can be found in Appendix B).

13 is the register to be loaded (XII - Remember, it is o·ctal).

and 43 is LOC.

Remarks:

. 1) As the A field of an instrudion word is only four bits, those instructions requiring A and R registers cannot have the actual address loaded in so their designations are used instead - e. g ••

3 for A3 instead of 017. What actually happens is that·the

assembler subtracts from the actual address 014 for A re'gisters and 0100 for the R' s.

Thus

10 00 05 00 0 000043 LA AS, LaC

since AS is at location 021 which would not fit in four bits.

2) The h, i field digit will assume only one of the, values 0,1,2,3 as it represents a two bit field.

So,

o = >

neither h nor i bits set 1 =

>

only i bit is set

2

= >

only h bit is set

3

=

> both h and i bits are set

e. g. ,

01 00 03 02 0 000043 SA A3, LaC, X2 01 00 03 02 1 000043 SA A3, ':'LOC, X2 01 00 03 02 2 000043 SA A3, LOC, '::X2 01 00 03 02 3 000043 SA A3, *LOC, *X2

3) In the case where immediate addressing is specified, 1. e., the J-designator=OI6 or 017, the h,i field digit is no longer given,

-20-but the six u-field digits represent the entire right half of the word instead of the usual right most 16 bits, thus:

1 0 1 6 01 00 777776 LA, U Al,-1 instead of

10 16 01 00 3 177776 LA,U A1,-1 as older versions of the assembler produc::ed.

For further discussion of this topic sec subsection 2.3.2.1 to 2. 3. 2. 6 a .

9. Diagnostic Processors

There are on the 1108 two prime vehicles for obtaining dumps of one I s pro-gram area, the post-mortem-dump (PMD), and the dynamic (snapshot) dump.

By far, the most commonly used of tIle two is the PMD, but the PMD allows one to see one's program area only after execution, and if, as is often the case, the dump is being used for diagnostic purposes, the state of the PMD will only show the program area after the da.mage has been done and will often not reflect at all the initial course of the problem. Because of this, one may make use of the dynamic dump capabilities. Dynamic dumps allow the

assembly language programn1.er to, at will, selectively dump registers, pro-grams, and/or data areas during execution.

9.1 Obtaining a Snapshot Dump Via X$ DUMP

The code for generating the snapshots is inserted into the object code by refer-encing the system procedure X$ DUMP in the source program. The format of the procedure reference is:

where:

e. g. ,

X$PUMP <ADDR>, <LENGTH>. '<FORMAT>' , '<REG. LIST>'

<ADDR> is the first address of the area to be dumped.

< LENGTH> is the number of words to be dumped.

<FORMA T> specifies the format of the dump (registers howeve"r are always dumped in octal).

<REG. LIST> is any combinations of the letters A, X, or R,

specifying A registers, X registers, and R registers respectively.

X$DUMP GARK, 10, 'S' , 'XR'

will dump 10 (decimal) words in instruction format starting at GARK and will be preceeded by an octal dump of all X and R registers.

Only the first two subfields need be coded, in which case, no register will be given and the snapshot will be given in octal (the default format option).

-21-These are seven system defined formats available for use:

'S' ,¢, 'A'

, I '

'F' 'E'

I D'

(4S30) - instruction format (8¢14) - octal

(16A6) - alphanumeric (8I14) - integer

(8FI4.8) - fixed decimal (8E14.8) - floating decimal

(4D28. 18) - double floating decimal Hints for using snapshot dumps:

1) Care should be taken when using instructions such as J $+ 5, JGD A8, $ -15 around X$DUMP procedure calls, as the assemQler generates four words 2)

3)

4)

of object for each X$DUMP reference.

Usually, the most helpful (and most often, the only helpful) use of snapshots is to dump sets of registers at selected points in the program," in which case one would use a reference such as:

X$DUMP B URF, I, ' q) I , I A r

The first two subfields are necessary, since no dump would be taken if the count were zero or not coded. One also usually code s a. 1 for register dumps as seeing the program itself is seldom helpful.

Care should be exercised if using the ' F ' format option in that if a ~ord

is out of range for this format, the field is printed as all ~:~, s" just as in Fortran.

Since the size of the dynamic portion of DIAG$ (the file into which all dumps are written) is fixed at 1, 000 sectors, only approximately 2, 500 total words may be dumped per execution.

9.2 Obtaining a Snapshot Dump Via SNAP$

To call SNA"P$ the following instructions are n"ecessary:

S A O , PKT ADDR+ 2 L, U AO, PKT ADDR

ER SNAP$

Where PKT is a three word packet as follows:

32 17

WORD35

a

snapshot identifier (6 characters field data) 1 XAR

I

WORD-LENGTH

I

START-ADDR

2 former AO contents

o

-22-The XAR field contains an octal number which specifies which sets of control regi sters to dump:

0 none 4 only X

1 only R 5 X and R

2 only A 6 X and A

3 R and A 7 all" register s

As an exarrlple, suppose some\vh~re in your program you had:

P LABEL

P

+

Then the instruc hons S L,U

ER

FORM 3, 15, 18 'FARBLE'

7,0,0

o

AO, LABEL+2 AO, LABEL

SNAP$

would dump all the registers only.

The following system proc call generates, in sequence, the necessary three instructions, a J $+4 instruction, and the necessary three word packet, which is everything needed to accomplish a SNAP$ re.quest:

L$SNAP I snapshot-identifier' , XAR, word-length; start-addr ,

Therefore, the following single line replaces the 3 lines used in the above example:

L$SNAP I FARBLE' ,7,0,0 9.3 9btaining a Post Mortem Dump

Only the most important aspects of the @PMD process,?r will be shown here.

For further information consult U of M User Reference 70.01 or the Univac PRM.

The format of the @PMD statement is:

@PMD, options The options are:

E - dump only if run termates in error.

e -

dump o~lyrwords that were changed during execution.

I - dump just the I bank portion of the program.

D - dump just the D bank portion of the program.

NOTE: If both the I and D options are used, the effect is the same as if neither was used (i. e., @PMD produces the same results as0@PMD, ID).

-23.;

9.4 Obtaini~umps Via PDUMP

PDUMP is a Fortran subroutine that has been converted from the 701)4 to the 1108. To call PDUMP from an assembly language program follow the sub-routine linkage instructions given in section 3 of this manual.

A call to the PDUMP subprogram. by the statement

CALL PDUMP(A1.B1.F1 •.•.• A .• B .• F .•••. , A , B , F )

1 1 1 n n n

causes the indicated limits of core storage to be dumped and execution to be continued. An explanation of the arguments used with PDUMP are as follows:

1. A and B are variable data names that indicate the limits of core storage to be dumped; either A or B may; represent upper or lower limits.

2.· F. is an integer indicating the clump format desired:

1 F = 0 dump in octal 1 dump as real 2 dump as integer

3 dump in octal with mnemonics

3. If no arguments are given. all of core ,1orage is dumped in octal.

4. If the last argument F is omitted. it is assumed to be equal to

o

and the dump will be octal. n

-24-10. Glossary and Conventions 1. INSTRUCTION

FIELDS:

2. a-FIELD DESIGNATOR REFERENCES:

3. AXR

CONTROL REGISTER SETS:

4. X-REGISTER SUBSCRIPT 5. ADDRESSES:

-6. REGISTERS:

f - field contains function code designator (f) j - field contains operand qualifier or minor

function code (j) .

a - field contains AXR-registcr designator, channel de signator, or console keys de signator (a)

x - field contains index register designator (x) h - field contains index register modification

de signator (h)

i-field I;ontains indirect addressing designator (i) u - field contains address or operand designator (u) -Ka = vCj.lue of "a" designates console key

C a = value of "a" designates channel number Aa

=

value of "a" designates an A-register within

set of A-registers

Xa

=

valuE' of "a" designate s an X-register within set of X-registers

R

=

valuE: of "a" de signates an R -register within a set of R - r e g i s t e r s ' . A

=

A-registers

=

Accumulators

X

=

X-registers = Index Registers

R = R-registers = Special Purpose Registers Subscript M = lower half of X -register (Modifier) Subscript I = upper half of X-register (Increment) U

=

Program effective address (Relative Address)

S = Main Storage address (Absolute Address) 51

=

Main Storage addre ss in f-Storage. Area 5 D

=

Main Storage address in D-Storage Area

P

=

Program Address Register CR = Control Registers

AR

=

Address Registers

.25--7. SPECIAL SYMBOLS:

( =

contents of specified register or storage address, subscripts indicate bit positions being considered, a prime (' ) superscript indicates the ones

UNIVAC 1108 Processor Word Formats Numbers above segments indicate the number of bits in the segment.

-2.6.

1 35

Fixed-Point Multiply

I

S Single-Integer Resuli

35 18

17

0

S

I

S

I

0 Add-Halves Word

Format

carry carry

35 24 23 12 11 0

S S

I ,.

S Add-Thirds Word

Format

c c c

1 8

27

Single -Precision

[ s C M J

Floating -Point

Operand

1 8

27

Single -Pre c ision

S

C u MU

Floating -Point Re suIt;

A

. L C =C U -27 .

or

1 8

27

Word 2 contains

un-I. C L ML

normalized "least

A+

1

significant result.

1 11 ~4

S

C M

U Double-Precision

36 Floating-Point

ML

Operand or Result

APPENDIX A. CODE/SYMBOL RELATIONSHIPS

The following table shows the relation'ships between the octal computer codes, the 80 column card codes, and the characters or symbols repre-sented by these codes.

COMPUTER CARD CODE CHARACTER COMPUTER CARD CODE CHARACTER

CODE (OCTAL) CO DE (OCTAL)

00 1-8 @ 40 12.4-8 )

01 12.5-8 [ 41 11

-02 f 11-5-8 ] 42 12 +

03 ; 12-1-8

,

.43 12.6.8 <

A

44 3.8

0 .. 11.1·8 =

05 (Blank) (Space) 45 6-8 >

06 12.1 A 4' 2-8 &

07 12.2 B 47 11.3-8 $

10 12.3 C 50 11-".8 *

11 12.4 0 5t 0.4-8 (

-12 12.5 E 52 058

-"

13 12-6 F 53 5-8 :

t .. 12.1

G

54' '. 12.0 ?

15 12·8 H 5.5 11.0 I

16 12-9 I - 56 0.3-8 , (comma)

17 11-1 ..----,-

- -

J 57 .. 0.6.8 \

-...

20 . '/11-2 K 60 0 0

21 11-3 ,L 6t 1 1

22 , 1 t.4 M 62

.

2 2

23 11.5 H 63 3 3

24 11.6 '0 64 ... 4

..

25 11.7 P 65 5 5

26 11.8 Q. 66 6 6

27 11.9 R 67 7 7

30 0.2 S 70 8 8

31 0.3 . T

.

71 9 9

32

0."

U 72

.c.,

.- . • (apo • ...,.)

33 0-5 V 73 11.6.8 ;

3 .. 0.6 W 7. 0-1 /

35 0.7 X 75 12-3.8

.

36 0.8 Y " 0, 76 0.7·8

0

31 0·9 Z 77

0-2.8 =+= (or stop)

,

.

'.

APPENDIX B. INSTRUCTION REPERTOIRE

Table B·l lists the 1106/1108 instruction repertoire in function code order. Table B·2 cross·references the mnemonic and function code.

Function 1108 1106

Code (Octal)

Mnemonic Instruction Description @ Execution Execution

Time Time

f J in {lsecs.CD in IIsecs.@

00

- -

Illegal Code C~uses Illegal instruction interrupt

-

-to address 2<U.

01 0-15 S, SA Store A (M'U .75 1.5

02 0-15 SN, SNA store Negative A -(A)~U .75 1.5

03 a-Is SM, Sr~A store Maenl tude A i(A)i"u .75 1.5

04 0-15 S, SR Store R (Ra)·U .75 1.5

05 0-15 SZ store Zero ZEROS-'U .75 1.5

06 0'15 S, SX Store X (Xa}->U

-

.75 1.5

07

- -

Illegal Code Causes illegal instruclion interrupt

-

-i to adqress 241.

10 0·17 L, LA Load A (U)·A .75 1.5

11 0-17 LN', LNA Load Negative A -(U}'A .75 1.5

12 0-17 LM, LMA Load Magnitude A I(U)l~A .75 1.5

13 0-17 LNMA Load Negative -1(U)i" A

.75 1.5

Magnitude A

14 0-17 A, AA Add To A (A)j (U}-A .75 1.5

15 0-17 AN, ANA Add Negative To A (A)-(U}->A .75 1.5

16 0-17 AM, AMA Add Magnitude To A (A)+I (U ):-A .75 1.5

17 0-17 ANM, ANMA Add Negative Magnitude (A)-I(U):~A .75 1.5

to A

20 0-17 AU Add Upper (A)+(U}->A+l .75 1.5

21 0-17 ANU Add Negative Upper (A)-(U}->A+l .75 1.5

22 0·15 BT Block Transfer (Xx+u}->Xa+u; repeat K times 2.25+1.5K 3.5 + 3.0K

always always

23 0-17 L, LR Load R (U}->R a .75 1.5

24 0·17 A, AX Add To X (Xa)j(U}->X a .75 1.5

25 0-17

.

AN, ANX Add Negative To X (XaHU}->X a .75 1.5

26 0-17 LXM Load X Modifier (U}->X a ;Xa .

17·0 35·'8

unchanged .875 1.666

r

27 0-17 L, LX Load X (U}->X a .75 1.5

30 0-17 MI Multiply Integer (A).(U)~A,A+l 2.375 3.666

31 0·17 MSI Multiply Single Integer (A).(U}->A 2.375 3.666

32 0·17 MF Multiply Fractional (A).(U}->A,A+l 2.375 3.666

33

- -

Illegal Code Causes illegal instrucl"ion interrupt to address 241.

-

-34 0-17 01 Divide Integer (A,A+ 1)+(U}->A; REMAINDER-'A+1 10.125 13.950

35 0·17 DSF Divide Single Fractional (A)+(U}->A+l 10.125 13.950

Tobie 8-1. Insrruction Repertoire (Port 1 of 8)

..

Z9-Function 1108 1106

Cod" (():Iul)

Mnemonic: Instruc:tion Description ® Execution Execution

Time Time

Function 1108 1106 Code (OelOl)

Instruction Description 0 Execution Execution

Mnemonic

-31-

_._-Funrtion l1"R 1106

Code (l'dal)

Mnemonic Instruction Description 0 Execution Time Execution Time

---

f j in Ilsees. 0 in Ilsecs.® circularly olle brt position always ~Iways

72 04 Ali Add Halves (A)35".+(U)" , "~A," .•• ;(A), .,.0+ .75 al ways 1.5 always

-32-'

---r--

,

Function 1108 1106

CadI:' (Oclal)

Mnrmonic Instruction Description ® Execution E)(ecution

Time Time

f j in I' sees. 0) in Iisees. ®

73 07 OLSC Double Load Shift \U.U~ I,",A.Ail. shift IA.A+ll left 2.125 3.830 and Count Circularly untl! IA.A. II, ,IIA.Atl)70'

NUMBER OF SHIFTS·AI 2 73 14 III@ Initiate Interprocessor Initiate interprocessor interrupt .75 always

-la' 0 or II Interrupt, 1108 System

Mnemonic Instruction Description 0

f J' in 11sees. (1) in 11sees. Ii)

proceed to next 1I1struction Allow all I/O Int("",pts ;md jump monitor; clear e~ternal monitor (151 only)

For channel [a rill! CSR1:(U~OAC'R:

set output "ctrve: set output monitor; clear external function (lSI only)

34

-Function 1108 1106

Code (Oct~1

Mnemonic Instruction Description0 Execution Execution

-- Time Time

f i In /lsecs. (fl in /,sees. ®

75 07 DOC0J DI",-onnect Output For ch"nnel I ~ .m CSRI: clear .75 always 1.5 always Channel out[)lJt active", clear output rno:lltor;

clear extcrnal function

75 10 LFC@ Load Function in For channel r a toni .cSR1: (U)· .75 1.5

Channel OI'.CR. ~et OUti.ut .. clive (lSI only), external funr:t!Gn, and force externCiI function: c[~:" output monitor (lSI

LFCM~

only)

75 11 LOil~ Fllnctlon In For ch,nnel [e [oJ;] CSRI: (Ur' .75 1.5

Channel and Monilor OI'.CR: set Qut:lut active (lSI only).

externi11 function. force external func tlon. and output monitor (lSI

-35-Function 1108 1106

Code (Octal)

Mnemonic Instruction Description ® Execution Time Execution

Time

f j in Ilsec5. CD in Ilsecs. @

76 11 DFAN Double precision (A.Atl)-(U ,U d)-'A.At 1 2.625 4.5

Floating Add Negative

76 12 DFM Double precision (A,A+l)-(U ,llll) ·A.A+l 4.25 6.667

Floating Multiply

76 13 DFD Double precision (A.Atl )+(U ,1I1-1}'A.A+ 1 17.25@ 24.0®

Floating Divide

76 14 DFU Double Load and IW)!'4_24->A,o.o' zerofi"; (U)".o-' 1.50 3.0 Unpack Floating Atl".o' signfi"; (U+Ir'A+2

76 15 DFP Double Load and (U),5,.Al-l,"; [NORMALIZED

COllvert To Floating (U.U1-1) 1';9_0···A-t 12"0 and A+2;

if (U)35-~0,(A),o_o±tlORMALIZING COUNT ·Ai 134 -24 ; if (U),.'"-I, ones complel"ent of [(A), o-o!

NORMALIZING COUNT].A+lu '24

76 16 FEL Floating Expand ' If (U),"~O. (U),5'27+1600.-.A.5'24; 1.00 1.833 and Load if (U),.-"I. (U)"'27-1600.~A"'2';

(U),._,.A2,.0; (U),.o~A+I, •• 33;

(U),,-'A+13~'0

76 17 FCL Floating Compress If (U)35'~O, (U),5.24-1600 .... A35.27; 1.625 3.167 and Load if (U)'5d, (U)"'2.+16OOA·'

A •• _'7; (U)2,.0"'A, •• ,; (Ufl)'._33 ... A2aO

77 0-17

-

Illegal Code Causes illegal instruction interrupt to addless 241.

-

-Tobie B-1.lnstrvction R!,pertoire (Part 8 of B)

-36-NOTES:

CD

The execution times Riven are for alternate bank memory access; for same bank memory access, execution time is ,75 microseconds greater. Exceptions to thiS either show the execution limes for both types of memory access or Inciude the word "all'lays" to inuicate that the execution time is the same legordless 01 the type of memory access.

For function codes 01 through 06 and 22, add .375 microseconds to the execution times for 6-blt and 12-bit writes.

The execution time fOI a Block Transfer or any of the seilrch instructions depends on the number of repetitions (K) required: that is, the number of words in the block being transferred or tile number of words searched before a find

The execution time fOI a Block Transfer or any of the seilrch instructions depends on the number of repetitions (K) required: that is, the number of words in the block being transferred or tile number of words searched before a find

Im Dokument UNIVERSITY MARYLAND (Seite 19-0)