Intel 80287, 80286 manual It *it, Sample PL/M-286 Program

Models: 80287 80286

1 515
Download 515 pages 45.04 Kb
Page 436
Image 436

PROGRAMMING NUMERIC APPLICATIONS

PL/M--;'~86COt1P ILER ARRAYSUt1

SER IES-- I I I PL/M-286V1. 0 Cot1P I LAT ION OF MODULE ARRAVSUM

OBJECT MODULE PLACED It-l : F6: D. Du.)

COMPILER IfNO KED BY PLM286 86 F6: D. SRC XREF

/ ***** ***'*********************** *****""*************

A R RAY SUM MOD*

**************************'I't *it ** ******************** /

2

3

4

5

6

7

8

91

10 :2

112

122

132

14

arT'ay$sum: do;

dec lare (sum$x, sum$indexes, sum$sq,uares) real; declare x$array(100) reaL

declare (n$of$)(, i) integer;

declare control$287 literally '033eh ';

1* Assume x$array and n$o;$x are initialized *1

1* Prepare the 80287 of its emulator *1 call init$real$math$uniti

call set$real$mode{control$287)j

1* Clear sums -It/

sum$x, 5um$indexes, sum$squaT'es = 0.0;

1* Loop through array, accumulating*1 do i = 0 to n$of$x-l;

sum$x = sum$x + x$array (i); sum$indexes = sum$indexes +

(x$array(i) * float(i+l»;

sum$sli.uares = sum$squares + {x$array (i )*x$array (i»; end;

1* etc. *1

end array$sumi

PLlM-286

COMP I LER

ARRAYSUM

 

 

 

 

 

 

 

 

 

 

 

CROSS-REFERENCE LISTING

 

 

 

 

 

 

 

 

DEFN

AD DR

SIZE

NAME. ATTRIBUTES. AND REFERENCES

 

 

 

 

 

 

 

 

00Q6H

117

ARRAysur1

PROCEDURE

STACK=OO02H

 

 

 

 

 

 

 

 

CONTROL287

LITERALLY

'033eh I

 

7

 

 

 

 

4

 

 

FLOAT.

BUlLTIN

 

11

 

 

 

 

 

019EH

2

I.

INTEGER

 

9*

9

10

11

12

13

 

 

 

INITREALMATHUNIT

BUlL TIN

 

6

 

 

 

 

 

 

019CH

2

NOFX

INTEGER

 

9

 

 

 

 

 

 

 

 

SETREAU10DE.

BUlL TIN

 

7

 

 

 

 

 

2

0004H

4

SUMINDEXES

REAL

8*

11

11*

 

 

 

 

2

0008H

4

SUMSQUARES

REAL

8*

12

12*

 

 

 

 

:2

OOOOH

4

SUMX

REAL

8*

10

10*

 

 

 

 

3

OOOCH

400

XARRAV

REAL ARRAY( !DO)

 

10

11

12

 

 

MODULE INFORMATION,

CODE AREA SIZE = 0077H 119D

CONSTANT AREA SIZE = 0004H 40

VARIABLE AREA SIZE 01AOH 416D

MAXIMUM STACK SIZE = 0002H 2D

33 LINES READ

o PROGRAM ERRORS

DICTIONARY SUMMARY,

96KB MEMORY AVAILABLE

3KB t1EMORY USED (31.) OKe DISK SPACE USED

END OF PL1t1-286 COMPILATION

Figure 2-6_ Sample PL/M-286 Program

2-44

Page 436
Image 436
Intel 80287, 80286 manual It *it, Sample PL/M-286 Program