• Nie Znaleziono Wyników

Informatyka Nr 11/12; Organ Komitetu Informatyki, Ministerstwa Nauki, Szkolnictwa Wyższego I Techniki Oraz Komitetu Naukowo-Technicznego NOT DS. Informatyki - Digital Library of the Silesian University of Technology

N/A
N/A
Protected

Academic year: 2022

Share "Informatyka Nr 11/12; Organ Komitetu Informatyki, Ministerstwa Nauki, Szkolnictwa Wyższego I Techniki Oraz Komitetu Naukowo-Technicznego NOT DS. Informatyki - Digital Library of the Silesian University of Technology"

Copied!
59
0
0

Pełen tekst

(1)
(2)

ifioriitfka 11-12

N r 11-12

M ie się c z n ik R ok X X Listo p a d -g ru d zie ń 1985

O rgan K o m ite tu In fo rm a ty k i M NSZW iT oraz K om itetu N aukow o-T echnicznego NOT ds. In fo rm a ty k i

K O L E G IU M K E D A K C Y J N E :

D r itiż. W a c ła w IS Z K O W S K I. m g r T e re s a JA B Ł O Ń S K A (s e k r e ta r z r e d a k c ji). W ła­

dy sła w K L E P A C Z ( r e d a k to r n a c z e ln y ), m g r Inż. A n d r z e j J. P IO T R O W S K I, d r in ż . J a n u s z Z A L E W S K I

•STALE W S P Ó Ł P R A C U JĄ :

M g r in ż. W ito ld A B R A M O W IC Z (S z w a j­

c a ria ), m g r inż. R y s z a rd l t . K O T T (W ielk a B r y ta n ia ) , m g r i n i T e re s a

W IL C Z E K ; i

t, : P R Z E W O D N IC Z Ą C Y ;

RA D Y P R O G R A M O W E J:: j

P rn f . d r h a b . J u liu s z L ech K U L IK O W ­ S K I

i ; ■ ■. ;

M a te ria łó w n ic z a m ó w io n y c h r e d a k c ja n ie z w ra c a

R e d a k c ja : 00-041 W a rsz a w a , u l. J a s n a 14/16, pole. 243 i 244, te l. 27-71-40 lu b 26-82-01 w . 184

Z a k l. G ra f. „ T a m k a 0 . Z a m . 1099-1300/85.

O b j. 4,0 a r k . d r u k . N a k ła d G400 egz.

P-67.

ISS N 0342-9951, IN D E K S 36124 C e n a e g z e m p la rz a 200 z!

P r e n u m e r a ta ro c z n a 1200 zł

WYDAWNICTWO

£

I

SIGMA

00-950 Warszawa skrytko pocztowa 1004

ul. Biała 4

W NUMERZE: S trona

X X la t INFO RM A TY KI

P o ró w n an ie języków p ro g ra m o w an ia m ik ro k o m p u teró w

Z b ig n iew S zk a ra d n ik 2

P ro g ram o w a n ie asem blerow e w ję z y k u fig-F O R T H

Ja n B ielecki 6

W prow adzenie do p ro g ra m o m e trii

S ta n isła w G asik 9

R A TFO R — czyli stru k tu ra ln y . FO R TR A N (2)

Z d zisła w P łoski 13

Podsieć k o m u n ik a cy jn a M iędzyuczelnianej Sieci K o m p u tero w ej E dw ard B ielen in ik, E lżbieta H u d ym a , E lżbieta K o sm u lsk a -

-B o c h en e k, Jó zef Lew oc, A n d rze j Sta n isz 15

S k o m p u tery zo w an e system y za rząd zan ia w g ó rn ictw ie ■' w ęgla

m iennego k a -

39 35 la t C en traln eg o O środka In fo rm a ty k i G órn ictw a 42 DYDAKTYKA

Z d arzeniow y języ k sy m u lac y jn y P A SC A LSIM i jego im plem entacja-

K r y sty n a K oleśnik, JanjiSm olira ■ ¡; l! 19

,. i

| ' . 1 ! '.i : ■ . !

m iktoK L A N , 1 ' i1 ■ '

' ■! ; • • i • ■ , ; • ! i :■ 20

: ■ i i , • : j 1

B la s k i'iv cienie m ik ro p ro ce so ra 8086 ¡. i , , ! P rz y sta w k a vided do k o m p u te ra COMMQDORE C64 Proferam k E T A j BASIC j ;

Ł uki krzyw ych jgladkipli j ■■ j . i 1 ' ■

F O llT H ' ! | i | '' ’ ; : !

5 1 • H

i! ' i i i

¡i PosJ sc rip tu m j AKac^ernii m ikroK L A N U ,' czyli ja k pisać duże

p ro g ram y -• •

ZE ŚW IATA 45

N ajnow sze te n d e n c je w dziedzinie k o m puterow ych system ów

ro w an ia, p roblem y o p ro g ra m o w an ia ste-

TERM IN OLO G IA , 48

D IX IT A LG O R IZM I czyli o pochodzeniu i znaczeniach słow a . alg o ry tm

REC EN ZJE 50

S ystem y in fo rm ac y jn e: asp ek ty teo rety czn e i fo rm a ln e

W N A S T Ę P N Y C H N U M ER A C H :

• W iesław N o so w sk i i B o le sła w S z o m a ń s k i o p a k ie c ie s y m u la c y jn y m

• J e r z y S u k ie n n ik o ro z ra c h u n k u g o sp o d a rc z y m n ak ła d o w e g o o śro d k a in f o rm a ty k i

• ła n P y le o p a k ie c ie do s p e c y fik a c ji p ro g ra m ó w w A dzie

• M a re k S ik o ra o m o d u ło w y m sy s te m ie m ik ro p ro c e s o ro w y m k o m p a ty b iln y m z s y ­ s te m e m M IK K O S T E It

• J e r z y Z a k rę c k i o a b s tr a k c ja c h w p ro g ra m o w a n iu

• W ito ld A b ra m o w ic z o m o d u la r n y m sy s te m ie w y sz u k iw a w c z y m

• R y s z a rd T u z le m sk i o RATFOIŁZE d la M ERY 400

• J a n B ie le c k i o b łę d a c h im p le m e n ta c ji w k o m p ila to rz e ję z y k a C f irm y S u p e rs o ft

(3)

Spis treści rocznika IN FO RM ATYKA 1985

n r str.

1 12

5 4

7 -12

Ję zy k p ro g ra m o w a- JA B Ł O Ń S K I KONRAD

n ia B C PL Część 1 Część 2

K A PU ŚC IK W ALDEM AR — P ro je k to w a n ie sieciow ych baz danych n a p rzy k ła d zie SZBD

1 1 0 0

K A RCZM A RC ZUK J E R Z Y .— K o m p u te ry S IN ­ CLA IR A — ra c h u n k i n u m e ry c zn e w kodzie m a ­ szynow ym

K IE R ZK O W S K I ZBIG NIEW , M A ŁU SZY ŃSK I JA C E K — Z arzą d za n ie w spółbieżną a k tu a liz a ­ cją bazy danych

Część 1. F u n k c ja o p ro g ra m o w an ia z a rz ą d z a ją ­ cego

Część 2, P rzeg ląd m etod za rząd z an ia

K O LESN IK KRYSTYNA, SM OLIRA JA N — Z darzeniow y języ k sy m u lac y jn y PA SC A LSIM

i jego im p le m e n ta c ja 11-

K O TT RYSZARD K. — BA SIC dla m ik ro k o m ­ p u te ró w — ew o lu cja języka

A R T Y K U Ł Y PRO BLEM O W E

BA N A SIK ZB IG N IEW — P ro je k t n orm y IEEE

— a ry tm e ty k a zm iennoprzecinkow a

B IE L E C K I JA N — ADA — sta n d a rd o p era cji w ejścia—w yjścia

B IE L E C K I JA N — FO R T H — d efiniow anie k o m p ilato ró w i in stru k c ji stru k tu ra ln y c h BIE L E C K I JA N — P ro g ram o w a n ie a sem b le­

row e w języ k u fig-F O R T H 11-

B IE L E N IN IK EDWARD, IIUDYM A E L Ż B IE ­ TA, K O SM U LSK A -B O C IIEN EK ELŻBIETA, LEW OC JÓ Z E F, S TA N ISZ A N D R ZEJ — P od- sieć k o m u n ik a cy jn a M iędzyuczelnianej Sieci

K o m p u te ro w e j 11-

B IL S K I EUGENIUSZ, FRY ŻLEW IC Z Z B IG ­ NIEW , H U ZA R ZBIG NIEW , K A LIŚ A N D R ZEJ

— Rozległe sieci k o m p u te ro w e

BROCZKÓ PETfiR — P ro d u k c ja m ik ro k o m p u ­ te ró w w 1984 r. w k ra ja c h R W PG

CELLARY W O JC IEC H, W ĘG LA RZ JA N — K oncep cja n a u c za n ia m ik ro in fo rm a ty k i

D ZIED ZIC M AREK, PERYCZ K RZY SZTO F, W IL IŃ S K I JER ZY — E m u la to r E6RM -E — p rzy k ła d w y k o rz y sta n ia k o m p u teró w m ik ro p ro -

g ram o w a n y ch 2 4

FURM AN M ARIAN, N O W IC K I ZB IG N IEW M.,

SOLA K JE R Z Y — P a k ie t SIM IS d la MERY 400 6 4 GACEK ADAM, K O ZIE L SK I STANISŁAW ,

STRÓZYNA P IO T R — EW — elasty czn ie m i-

k ro p ro g ram o w a n y k o m p u te r dydak ty czn y 9 22 G A SIK STA N ISŁA W — W prow adzenie do p ro -

g ra m o m e trii 11—12 9

IR L IK JA C E K — K w a lifik a c ja p ra w n a p ro ­ g ra m u kom puterow ego

ISZ K O W S K I W ACŁAW — P rz eg lą d m ech a n iz­

m ów k o m u n ik a cji

ISZK O W SK I W ACŁAW — S u p e rk o m p u te r CRAY

ISZK O W SK I WACŁAW , G RZEGORZEW ICZ PAW EŁ — LOGOS — sy stem g en e ro w a n ia s y ­ stem ów o p eracy jn y ch

-12 15

9 4

8 9

5 11

2 1

3 11'

2 6

-12 19

1 2

K R Ę P S K I A R TU R — PASCA L M T + d ia lek t PA SC A LA dla m ik ro k o m p u teró w

LAND FR A N K — D ziedzina system ów in fo r­

m acyjnych

LIT W IN IU K A N D R ZEJ I. — K o m p ila to r LO - G LAN U 82 dla MERY 400

M IK O ŁA JC ZA K BOLESŁAW , STO K ŁO SA J A ­ NUSZ — Złożoność alg o ry tm ó w

Część 1. K lasy fik a c ja pro b lem ó w Część 2. Złożoność asym ptotyczna

PERYCZ K R ZY SZTO F — E g zek u to r E6MR dla R-32

P L O S K I ZD ZISŁA W — R A T FO R czyli s tr u k ­ tu ra ln y FOR TRA N

Część 1 Część 2

STAW OW Y ADAM — M ACINTOSH — now a jakość n a ry n k u m ik ro k o m p u teró w (oprać.) S TĘ P IE Ń CEZARY, SZYRKOW IEC JA R O ­ SŁAW — W ielopoziom ow y sy stem o p ro g ra m o ­ w an ia p am ięci kaseto w y ch PK -1

SU R A J ZBIG N IEW — P ro b lem y n au c za n ia in ­ fo rm a ty k i w szkołach śred n ic h

SZK A RA D N IK ZB IG N IEW — P o ró w n an ie j ę ­ zyków p ro g ra m o w an ia m ik ro k o m p u teró w W A LIG Ó R SK I STA N ISŁA W — LOGO Część 1. G ra fik a żółwia

Część 2. S łow a i listy

Część 3. P o ró w n an ie d ia lek tó w A PPL E , S IN ­ C LA IR i COMMODORE 64

W ILCZY Ń SK I W IESŁA W — P L Z — języ k p ro g ra m o w an ia m ikroprocesorów (2)

W IN IE W SK I JU L IA N — Ję zy k p ro g ra m o w a ­ nia C

Część 1 Część 2 Część 3

P ro b le m p e rsp e k ty w y — Z bigniew G luza O p ro g ram o w a n ie m ik ro k o m p u teró w — w co się baw ić? — Ja n u sz Z alew ski

X X la t IN FO R M A TY K I

S k o m p u tery z o w a n e system y z a rząd z an ia w g ó r­

n ictw ie w ęg la kam iennego

35 la t C e n traln eg o O śro d k a In fo rm a ty k i G ó r­

n ictw a

D YD A K TYK A

Nowy dział — W acław Iszkow ski

Rozwój m ik ro e le k tro n ik i a n au czan ie — W.I.

K o n k u rs P T I n a n ajlep sze p ra c e dyplom ow e z in fo rm a ty k i — B a rb a ra O suchow ska

K oncep cja n a u c za n ia m ik ro in fo rm a ty k i — W oj­

ciech C ellary, J a n W ęglarz

N auczyciel — uczeń — m ik ro k o m p u te r — E m anuel Czyżo

P ro b le m y n a u c za n ia in fo rm a ty k i w szkołach śred n ic h — Z bigniew S u ra j

P o stęp w szkoleniu in fo rm aty c zn y m — A n ­ d rz e j Elek

Z darzeniow y ję zy k sy m u lac y jn y PASCA LSIM i jego im p le m e n ta c ja — K ry s ty n a K oleśnik, J a n S m olira

t

n r str.

1 6

4 5

3 7

9 1

10 7

10 1

10 4

11— 12 13

4 U

8 4

7 11

11— 12 2

7 1

8 21

9 11

1 9

4 1

5 7

6 7

1 1

1 2

11— 12 1

11— 12 39 11— 12 42

4 21

4 22

4 23

5 11

6 19

7 U

8 24

11— 12 19

(4)

SA M O TESTY

n r str.

II/B . R e p re ze n ta cja , przep ły w i p rze k szta łc a- nie dan y ch — A dam B. E m pacher, L udw ik J.

Kossowski 1 23

III/A . P o d staw y so rto w a n ia zbiorów — A dam

B. E m pacher, L udw ik J. Kossowski 3 22

III/B . M etody so rto w an ia w ew n ętrzn eg o —

A dam B. E m pacher, L udw ik J. Kossowski 6 21 IV/A. M etodyka p ro g ra m o w a n ia — A dam B.

E m pacher, L u d w ik J. R ossow ski 9 26

1V/B. R zetelność danych — A dam B. E m p a­

cher, L u d w ik J. R ossow ski 10 23

mikroKLAN

N orm a GKS — A ntoni U rb a n 1 13

P rz y sta w k a do ZX81 — Ila fa l P ie tra k 1 15 M ik ro k o m p u te r M E R IT U M -I— Z bigniew C h rze­

ścijań sk i, Ja c e k Ż ebrow ski 1 17

FO R T H (5) — M arek C zarzyński 1 18

A k ad e m ia m ikroK L A N U — Ja k u b T atark iew ic z Część 2. S iln ia

Część 3. K o n iu n k cja Część 4. K u rso r Część 5. W yrażenie Część 6. D ek ad a Część 7. ACKERM AN Część 8.

1 2 3 4 5 6 7

20 19 16 20 14 17 19 P ost. sc rip tu m A kadem ii m ikroK L A N U czyli

J a k pisać duże p ro g ra m y 11— 12 34

A P P L E II c — A dam S taw ow y 2 13

R ozszerzenie m ożliw ości g raficznych ZX81

(16 K) — Ja c e k Pszona 2 14

W sp ó łp raca z n a p ę d em dysków elastycznych —

A dam P lu ta 2 15

DS-80 M ONITOR — G rzegorz S tępień, M iro­

sław Dołeżych, Je rz y O rkiszew ski 2 17

K o m p u te ry z d ru g iej rę k i — A JP 2 18 IN D U STR IA L R E A L-TIM E BA SIC — d la m i­

k ro k o m p u te ró w — W ojciech W arski 3 13

N a W ęgrzech można... 3 13

T ajem n ic e p ro g ram o w y ch p ira tó w — ZX S P E ­

CTRUM — A JP 3 15

CP/M 3 + — W itold W oźniak 3 18

A lfan u m ery czn y ste ro w n ik m o n ito ra te le w iz y j­

nego — G rzegorz S tępień, M irosław Dołeżych Część 1

Część 2

3 4

19 17

ISB N — J a k u b T atark iew ic z 3 20

G ra fik a IB M -PC — A ntoni U rb a n Część 1

Część 2

4 5

7 18 ZX M ICR OD RIV E — Je rz y K arczm arczu k , T a ­

deusz W ilczek, T om asz Z ieliński 4 14

A M STRAD CPC 464 — M arek G órecki 4 19

COMMODORE C 64 czy ZX SPECTRUM ? —

Ja n u sz P icch n a 5 13

J a k odzyskać k o n tro lę n ad p ro g ra m e m re a li­

zow anym z pam ięci, k tó re j n ie m a? — A JP 5 15 P ro g ram o w y g e n e ra to r dźw ięków AY-3-8910/12

— oprać. A JP 5 10

S ta n d a rd RS 232C — A JP 5 19

J a k rozszerzyć BA SIC ZX SPECTRUM Część 1. M arek G órecki

Część 2. M a re k G órecki, A n d rz ej J. P io tro w sk i 6 7

11 18 D ośw iadczenia z e k sp lo atacji IMZ-80 — Je rz y

K u ro w sk i 6 12

S ch em at ZX SPECTR UM — A JP 6 13

P olska F e d e ra c ja K lubów M ikro in fo rm aty ez-

nych — P io tr Tym ochow icz 6 17

T est n u m eryczny — Ja k u b T atark iew ic z

n r 6

str.

18 M oduł p ro ce so ra M OTOROLA 6800 — Je rz y

O rkiszew ski

Jt 7

V

13 S PR EA D SH EET d la ZX81 — W itold M ajew ski 7 15 Jeszcze o m ożliw ościach g raficznych ZX81

16 KB — Ja c e k P szona •' w •7

Ay

17 U kład syntezy dźw ięków — T om asz P ie trz a k “ 1 -w 7. 20 O bliczenia sym boliczne — Ja k u b T atark iew ic z 8 13

P am ięć EPROM 2716 — A JP 8 14

R edagow anie i p rz e tw a rz a n ie tek stó w p ro g ra ­

m em TE K S T -C SK — A n toni U rban 8 16

U kłady z m u ltip le k so w an ą szyną danych w s y ­

stem ie 8080 — Je rz y O rkiszew ski 8 17

P ro g ra m M O N ITO R dla m ik ro p ro ce so ra M O­

TOROLA 6800 — Je rz y O rkiszew ski 8 19

M ik ro k o m p u tero w a p ie rw sz a pom oc — A JP 9 13 W yścig z czasem — R yszard K u rz y ja m sk i 9 14 Sposoby k re śle n ia o kręgów — M arek D ory-

w alski 9 16

P rz y k ła d y p ro ce d u r w języ k u ASSEM BLER 8080 — A dam P lu ta

Część 1 Część 2

9 10

18 16 Z ap a m ię ty w an ie o b raz u w CPC 464 — M arek

D oryw alski 9 20

AM STRAD CPC 664 — M aciej D oruchow ski 10 11

W ielolinia — A n toni U rb a n 10 12

S am obieżny ZX81 — R oland H ojczak 10 14

N orm a IEEE „w pigułce” — Je rz y O rkiszew ski 10 18 MC 6809 — W pół k ro k u m iędzy 6800 a 68 000

— Je rz y O rkiszew ski 10 19

W okół ję zy k a F O R T H — M ichał C horoszucha 10 21 B laski i cienie m ik ro p ro ce so ra 8086 — A n d rz ej

P io tro w sk i 11--12 20

P rz y sta w k a video do k o m p u te ra COMMODORE

C 64 —• R oland H ojczak 11--12 25

P ro g ra m BETA BA SIC — Je rz y K ry stek , A dam

M ielczarek 11--1 2 29

Ł u k i k rzyw ych g ład k ich — A n to n i U rb an 11--12 30

F O R T H — M ichał C horoszucha 11--1 2 32

Z KRAJU

U ch w ała I W alnego Z ja zd u P T I w sp raw ie

rozw oju in fo rm a ty k i w Polsce 1 24

W ynik z k o m p u te ra — Je rz y K u ro w sk i 1 25 K o m p u te ry w „N -ty m ” reso rcie — H. Z. 2 10 G ra fin an so w a n a M ERZE 400 — M ieczysław

B udziński, E d w ard K adosiński, L eopold Szczu­

row ski 2 11

O bsługa te ch n ic zn a sp rz ę tu w ze staw ien iu a n ­

kieto w y m — Ja n u sz M aciejew ski 2 12

N ow a ro d zin a IBM — A.B.E. 3 23

57 M TP. P ogoń za m ikro — A n d rz ej J. P io ­

tro w sk i 5 23

R A TFO R n a ODRZE 1305 5 24

M ik ro k o m p u tery w P a ła c u M łodzieży — Ja n u sz

Z alew ski 6 23

R ozproszone system y p rz e tw a rz a n ia dan y ch —

J u lia n Dębowy 6 24

K o m p u te ro w y system u k ła d a n ia ro zk ła d u zajęć w szkole w yższej — M arek S kom orow ski, R y ­

sz ard W oźniak 7 22

P T I w sp ra w ie w p ro w a d za n ia in fo rm a ty k i do

szkół — P re zy d iu m ZG P T I 7 22

(5)

XX lit INFORMATYKI

O becny n u m e r IN F O R M A T Y K I z a m y k a 20 la t istnienia czasopism a. Chociaż w działalności e d y to rsk ie j e k sp o n o w a ­ nie te j sk a li ju b ileu szu p u b lik a c ji nie za w sze je st u za sa d ­ nione, to je d n a k w ze sta w ie n iu z za led w ie 36-letnią h isto ­ rią ro zw o ju te c h n ik i c y fro w e j je st to okres dostatecznie długi, aby etap te n zaznaczyć, a p rzy te j o ka zji podzielić się okolicznościow ym i re fle k sja m i.

G dy w o sta tn im kw a rta le 1965 r. n a k r a jo w y m r y n k u w y d a w n ic zy m p o ja w ił się p ie rw szy n u m e r naszego czaso­

p ism a pod sw ą p ierw o tn ą i n ie z b y t a tra k c y jn ą nazw ą

„ M aszyny M a te m a ty czn e ” m in ęło zaledw ie szesnaście lat od u ru c h o m ien ia p ie rw sze j n a św ięcie, a sied em lat — p ie rw szej p o lsk ie j e le k tro n ic zn e j m a szy n y cy fro w ej.

W p ra w d zie w sp ó łczesn e te m p o ro zw o ju in fo r m a ty k i w ielo ­ kro tn ie w zrosło i obecnie 10 lat odpow iada p rzem ia n o m za ch o d zą cym przed tr z y d z ie s tu la ty w czasie życia dw óch g eneracji lu d zkich , to je d n a k ze sta w ien ie ty c h d w u p o ­ ró w n a w czych m iar czasu pozw ala stw ierd zić, że k r a j nasz ze sto su n ko w o n ie w ie lk im opóźn ien iem w s to s u n k u do św ia to w e j p re m ie ry m a szy n y c y fro w e j, a zn a czn ie w c ze ­ śniej n iż w ięk szo ść k r a jó w naszego obozu, zdołał w e jść do bardzo n ielic zn ej g ru p y p a ń stw , k tó re o panow ały s z tu ­ k ę b u d o w y ko m p u te ró w . Jeśli u w z g lę d n im y ó w c zesn y bar­

dzo sk ro m n y p o ten cja ł p rze m y sło w y k r a ju oraz szczupłość k a d r n a u k o w y c h , k tó ry c h n ie zdołano jeszcze u zu p e łn ić po stra szliw y c h stra ta ch spow o d o w a n ych o ku p a c yjn ą e k s ­ term in a cją , fa k t te n m o że dziś bud zić zd u m ie n ie, a n a w e t niedow ierzanie. Jeszcze b a rd ziej za s k a k u ją c y m fa k te m je st rozpoczęcie w Polsce ju ż w 1960 r., niespełna d w a lata po u ru c h o m ien iu pierw szego k o m p u te ra , jego p rze m y sło w ej p rodukcji. P rzyp o m n ien ie ty c h za p o m n ia n y ch i bliżej nie z n a n y ch w sp ó łczesn ej g eneracji zdarzeń, skłonić p ow inno do zd ecydow anego p rze ciw sta w ien ia się n a stro jo m p e s y ­ m izm u , ja k ie często rodzą się z obserw acji naszego obec­

nego zapóźnienia in fo rm a tyczn eg o .

P rzytoczone ze sto su n ko w o n ie d a le k ie j przeszłości p r z y ­ kła d y potw ierd za ją b o w ie m dobrze zn ana praw dę, że o po­

z y c ji spo łeczeń stw a d ec yd u ją nie ty le jego za so b y m a te ­ rialne, tra d y c je tech n iczn e czy liczba ludności, ile jego prężność in te le k tu a ln a , k tó ra na szczęście je st jedną z n a ­ szych g łó w n yc h d odatnich cech n a rodow ych. P rężność ta je st w łaśnie a tu te m , k tó r y obecnie d ec yd u je o e f e k ty w ­ n y m sp o ży tko w a n iu o lb rzym ich i ta k dziś łatw o d o stęp ­ n yc h w s k u te k taniości sp rzę tu ko m p u tero w e g o , m ożliw o ści p rzysp ieszen ia ro zw o ju gospodarczego.

N a tle p rzyto czo n ych fa k tó w z p o czą tkó w ro zw o ju pol­

sk ie j in fo r m a ty k i, zro zu m ia łe je st ta k w czesne u ru c h o ­ m ien ie czasopism a n a u ko w o -tec h n iczn e g o i to w sto su n k o ­ w o d u ż y m n a kła d zie 2000 egzem p la rzy. I w ty m w y p a d ­ k u u ja w n iła się nasza prężność i w y czu c ie tre n d ó w ro z­

w o jo w ych , p o n iew a ż ,.M a szyn y M a te m a ty c zn e ” b y ły p ie rw ­ s z y m cza so p ism em w kra ja ch R W P G -poświęconym, w y łą c z­

nie tech n ice k o m p u te ro w e j. N ie sposób v r z y te j o ka zji vo- m in a ć zasługi W y d a w n ic tw a C zasopism T ech n ic zn y c h N O T , któ re ja ko je d y n y z w y d a w c ó w k r a jo w y c h , podjęło r y z y ­ ko u ru ch o m ien ia p erio d y k u z d zie d zin y ta k m ało w ów czas znanej.

N ie będzie przesadą stw ierd zen ie , że nasze czasopism o, zw łaszcza w p o c z ą tk o w y m okresie sw ego istnienia, było w a żą c y m s ty m u la to re m ro zw o ju p o lsk ie j in fo r m a ty k i. Po­

w odow ało to oczyw iście odpow iednie sp rzężen ie zw ro tn e w postaci zw ię k sze n ia n a k ła d u i częstotliw ości (od 196$ r.

m ie się c zn ik) oraz w z ro stu za k re su o d d zia ływ a n ia i sp o łe c z­

n e j rangi czasopism a.

Od 1971 r. n a stą p iła zm iana ty tu łu czasopism a na bar­

d zie j k o m u n ik a ty w n ą IN F O R M A T Y K Ę , oraz p rzy sp ie szo n y w zro st n a kła d u , k tó r y na p o c zą tk u 1980 r. osiągnął zn a ­ czący, ja k na czasopism o n a u ko w o -tec h n iczn e , poziom.

74Ó0 egzem plarzy.

M im o po w sta n ia w ielu sp ecja liza cji in fo rm a ty c zn y c h , sta n o w ią cych w łaściw ie odrębne d zie d zin y w ied zy , a ta k że znacznego zróżnicow ania pozio m u p rzyg o to w a n ia C z y te ln i­

kó w , co od w ie lu ju ż lat w ym a g a ło u tw o rzen ia co n a j­

m n ie j jednego d o datkow ego czasopism a (jedno popularne, drugie n a u ko w o -p ro fesjo n a ln e), IN F O R M A T Y K A z k o n iec z­

ności u trz y m a ła w ciągu całego dw ud ziesto łecia sw ą n ie ­ zam ierzoną m onop o listyczn ą p o zy cję na k r a jo w y m r y n k u w y d a w n ic zy m . P ow oduje to z je d n e j stro n y coraz w ię k ­ sze tru d n o ści redagow ania, ze w zg lęd u n a konieczność w ielk ieg o różnicow ania te m a tó w oraz pozio m u dostępności a rty k u łó w , z d ru g ie j zaś za w a rto ść czasopism a nie m oże u sa ty sfa k c jo n o w a ć zn a c zn e j lic zb y C zyte ln ik ó w , k tó ry c h za in tereso w a n ia znacznie w y k ra c za ją poza to, co p re ze n ­ tu je IN F O R M A T Y K A . Ja k o b y na dom iar złego, na p rze ­ strze n i o statnich dw óch lat, za m ia st nieodzow nego ju ż znacznego w zro stu objętości czasopism a, m u sie liśm y re a li­

zow ać zadanie ca łkow icie p rze ciw sta w n e: zm n ie jsza ć o b ję ­ tość w s k u te k pogłębiającego się d e fic y tu p apieru oraz m o ­ cy p ro d u k c y jn y c h p rze m y słu poligraficznego.

P ro b le m y te w y stą p iły ze szczególną ostrością w m o ­ m encie p o ja w ien ia się o lbrzym iego społecznego za p o trze ­ bow ania n a p u b lik a c je dotyczące m ik r o k o m p u te ró w . Z a p o ­ trzeb o w a n ie to, pochodzące od w ielo tysię czn e j ju ż rze szy szc zęśliw y ch posiadaczy tego ro d za ju sp rzę tu , otrzym a ło od nas n a ty c h m ia sto w ą o d p o w ied ź w postaci w y d zie len ia od p o czą tku 1984 r. ośm iu stro n IN F O R M A T Y K I (a w ięc c z w a rte j części każdego n u m e ru , oczyw iście k o s zte m odpo­

w iedniego ograniczenia p ozostałej te m a ty k i) na specjalny dział, n a zw a n y trochę p rze ko rn ie „ m ikro K L A N E M ”.

„ M ik ro K L A N ” zy s k a ł n a ty c h m ia st n ie z w y k łą popularność i e n tu zja sty c z n e poparcie kilku d zie się c iu ju ż ty się c y u ż y t­

k o w n ik ó w k o m p u te ró w d o m o w y ch , co stanow iło dla ze s­

połu re d a kc yjn e g o niem a łą sa ty sfa k c ję , a jedn o cześn ie po ­ budziło do n o w y c h działań.

O czyw iście w yso ko ść n a kła d u IN F O R M A T Y K I i p ra k ­ ty czn a niem o żliw o ść jego szy b kie g o zw ię k sze n ia nie d a ­ w ała ża d n y ch szans za sp o ko jen ia rosnącego z dnia na dzień za potrzebow ania społeczności m ik r o k o m p u te ro w e j. W te j sy tu a c ji pod koniec 1984 r. m im o o lb rzym ich tru d n o ści rea­

lizacji, rozpoczęliśm y starania o w yo d ręb n ien ie m ik ro - K L A N U w sam odzielną, w y so ko n a k ła d o w ą publika cje.

O sk a li trudności re alizacji ta k ieg o zadania w d zisiejszych w a ru n k a c h n a jle p ie j chyba św ia d czy nie sp o ty k a n e w n a ­ sze j 20-letniej działalności, i ca łkow icie od re d a k c ji n ie ­ zależne, przeszło 3-m iesięczne opóźnienie d ru k u obecnego

„ jubileuszow ego” n u m e ru IN F O R M A T Y K I.

W ie rz y m y , że w sp o m n ia n e za m ie rzen ia ud a się n a m w 1986 r. zrealizow ać. B ędzie to n ie w ą tp liw ie isto tn y w k ła d do ta k ko n iec zn ej dziś m a so w e j ed u k a c ji in fo r m a ty c zn e j społeczeństw a, p o ró w n y w a ln y z n a szy m i dzia ła n ia m i w okresie pio n ie rsk im . D zisiejsze w sparcie in fo rm a c y jn e te ­ m a ty k i m ik r o k o m p u te r o w e j to nie ty lk o za sp o k o jen ie in ­ d y w id u a ln y c h potrzeb w ie lo ty się c zn e j g ru p y hobb istó w , ale ró w n ież w a żn e zadanie społeczne, ja k im je st p rzy g o to w a ­ n ie przyszłeg o u ż y tk o w n ik a urzą d zeń , któ re ju ż w k ró tc e w e jd ą na w yp o sa żen ie każdego sta n o w isk a pracy. To ta k że zb liżen ie i osw ojenie całego spo łeczeń stw a z technologią bliskiego ju ż ju tra , k tó r e j opanow anie i e fe k ty w n e w y k o ­ rzy sta n ie za d e cy d u je o ty m , czy u tr z y m a m y się w śród ro z­

w in ię ty c h p a ń stw św iata.

S p o d zie w a m y się, że p o d su m o w u ją c ju b ile u sz 25-lecia b ęd ziem y m ogli stw ierd zić, że ja k o czasopism o zna czn ie le ­ p ie j sp e łn ia m y nasze obo w ią zki w obec c z y te ln ik ó w , i co w a żn iejsze, że P olska nie pozostaje w ogonie in fo r m a ty c z ­ nego zapóźnienia i o d zy ska ła sw ą p ie rw o tn ą rolę p r e k u r ­ sora w n a szy m re jo n ie E uropy.

R E D A K C J A

(6)

ZBIGNIEW SZKARADNIK

Instytut Informatyki Czasu Rzeczywistego Politechnika Śląska

Gliwice

J e d y n y m sposobem nauczenia się now ego ję z y k a program ow ania je s t pisanie w nim- program ów . B. K ernighan, D. R itch ie [4]

Porównanie języków

programowania mikrokomputerów

W środow isku osób m n ie j lu b b ard z iej p ro fesjo n aln ie zw iązanych z in fo rm a ty k ą - tr w a ją d yskusje, k tó ry z ję zy ­ ków p ro g ra m o w an ia je st najlepszy. Chcąc zw eryfikow ać różne opinie i w yrobić sobie w łasn e zdanie, p rz e te sto w a ­ łem k ilk a tra n s la to ró w p o p u la rn y c h języków p ro g ra m o w a­

nia.

TESTO W A N E TRA N SLA TO RY I FRO GR A M Y WZORCOW E

T esty przeprow adzono przy użyciu m ik ro k o m p u te ra M E­

RA 60 (odpow iednik LSI-11/03) pod k o n tro lą sy stem u ope­

rac y jn eg o RT-60 V04. T esto w an iu poddano:

A k o m p ilato r ję z y k a FOR TRA N

® k o m p ila to r ję z y k a PA SC A L 41 k o m p ila to r ję zy k a C

® in tei-p reter ję zy k a BASIC O in te r p re te r ję zy k a FO R T H

P o d staw o w e dan e w ym ienionych tra n s la to ró w zestaw iono w ta b e li 1.

Do te sto w an ia w y k o rz y stu je się zw ykle zestaw p ro g ra ­ m ów w zorcow ych (ang. b en c h m a rk program ). Z a n a jb a r ­ dziej re p re z e n ta ty w n y w te j g ru p ie uchodzi p ro g ra m do g en e racji liczb pierw szych w y k o rz y stu ją cy a lg o ry tm E ra - to ste n e sa [2]. O prócz niego w yko rzy stan o a lg o ry tm so rto ­ w a n ia bąbelkow ego.

W y d ru k i 1—5 p rz e d sta w ia ją te k sty źródłow e p ro g ra m u g en e racji liczb pierw szych w różnych językach p ro g ra m o ­ w an ia. Poszczególne w e rsje kom pilow ano • p rzy użyciu w szystkich dostępnych opcji przy sp ieszający ch ich re a liz a ­ cję.

W p rzy p a d k u k o m p ilato ra FO R TR A N U w y k o rzy stan o m ożliw ość g en e racji kodu n a tu ra ln e g o (ang. n a tiv e code, in -lin e code) oraz kodu kaskadow ego (ang. th re a d e d code).

Spośród te sto w an y c h tra n sla to ró w jed y n ie k o m p ilato r FO R TRA N U g e n e ru je n a d a ją c y się od raz u do łączenia, relo k o w aln y kod b in a rn y (plik ty p u OBJ).

K o m p ila to r PASCA LA w y tw a rz a p ro g ra m w ynik o w y w ję zy k u a sem b lera (plik ty p u MAC), k tó ry należy n a s tę p ­ n ie przetłum aczyć przy użyciu system ow ego m a k ro a sem b - le ra MACRO. D odatkow o m ożna przed assem b lac ją doko­

nać. o p ty m a liz ac ji otrzym anego kodu, k o rz y sta ją c z p ro g ra ­ m u o n azw ie IM P.

Ję zy k C d a je p ro g ram iście m ożliwość w p ły w an ia n a czas rea liza cji p ro g ra m u przez d ek laro w an ie c h a ra k te ru zm ien-

M gr in ż. Z B IG N IE W S Z K A R A D N IK w 1981 r. u k o ń c z y ł s tu d ia n a W y­

d z ia le A u to m a ty k i i I n f o r m a t y k i P o lite c h n ik i ś l ą s k i e j ( k ie ru n e k i n ­ f o rm a ty k a ) . P r a c u j e ja k o s ta rs z y a s y s te n t w I n s ty tu c ie I n f o r m a ty k i P o lite c h n ik i Ś lą s k ie j, z a jm u ją c się o p ro g ra m o w a n ie m .

f E ratosthenes sieve prim e num ber program in P ascal }

program sieve;

const size —8190;

var

flaq siarray [0..size] o f boolean;

i, prime, k , count,iterrintegcr;

begin

w riteln (’ 10 iterations*);

for ilc r» = tl to 1 0 do begin

count * = 0 ; for I* = 0 to size do

flo g s [i]:= tru e ; for li = 0 to size do

if flags[i] then begin

prim e in i- } - i- f 3 t k t = i-f- prim e:

w hile k < = a i z e do begin

f Iags[k] i = false;

k t = k - f prim e e n d ; count * = co u n t-}-1 end;

end;

w riteln (co u n t t-i, ’prim es1) end {sieve}.

"Wydruk 1. P rogram w ję zy k u PASCAL

nych (auto, static, r e g is t e r ')), co zostało w y k o rz y sta n e do celów porów naw czych. P onadto, k o m p ilato r tego języka w y tw a rz a kod w yjściow y w języku a sem b lera (plik ty p u

100 REM Eratostcnes sieve prim e nu m b er program in Basic 110 DIM F % (8 1 9 1 )

120 PR IN T ” 10 iterations”

130 FOR J % = 1 TO 10’ C%=*0 140 FOR I % = 0 TO 8190 150 F % ( I % ) = 1 160 NEXT 1%

170 FOR I % = 0 TO 8190 180 IF F % ( I % ) = 0 GOTO 260 190 P % = I % - f I % + 3 200 K % = I % + P % 210 IF K % > 8 1 9 0 GOTO 250 220 F % ( K % ) —0

230 K % = K % + P % 2 t0 GOTO 210 250 C% = C % + 1 260 NEXT 1% ’ NEXT J % 270 A S - » # * # : # : "

280 PR IN T USING A $, C% * 290 PR IN T „ prim es”

300 END | REM sieve

"Wydruk 2. P rogram w ję zy k u BASIC

*) S ta tic — z m ie n n e is tn ie ją c e w p a m ię c i p rz e z c a ły c z a s r e a liz a ­ c ji p r o g ra m u ; a u to — z m ie n n e is tn ie ją c e czaso w o , tw o r z o n e n a s to s ie p o w e jś c iu d o b lo k u ; r e g is te r — z m ie n n e r e z y d u ją c e w r e ­ j e s tr a c h (p o r. [4])

(7)

•S), w y m ag a ją cy je d n ak ż e specjalnego asem b lera o n a z ­ w ie AS.

W szystkie trz y k o m p ilato ry k o rz y sta ją z system ow ego p ro g ra m u łączącego L IN K i biblio tek S Y SLIB (FORTRAN), P A S L IB (PASCAL) i CLIB (C).

/ • E ratosthenes sieve prim e nu m b er program in C language * / JSnnrg 1 !

rjjr (I rfiiic tru e 1 :|i. define false 0

# define size 8190 ch ar flag» [size-f-l]ł m ain (arg c, arg v ) /* sieve*/

in t arg c;

ch a r *argv[ ]$

{

in t i,p rim e,k,count,iter;

p rin tf (” 1 0 iterations jn” ) ; fo r (ite r = l} it e r < = 10 ;ite r-f - f ) {

count = 0 ;

for ( i = 0 ; i < = s i z e ? i j- + ) flags[i] = tru e ; f o r ( i = 0 j i < «=si7.c;i-f+ ) {

it (flag»[i]) { prim e = i -f i -f 3 j

for ( k = i -f prim e ;k < *=» size ;k -f- =*- prim e) f Iags[k J — false;

count -f + i

)

>

)

p rin tf ( ” % d p rim esjn ” ,co u n t) ( } /»sieve *1

W jd ru k 3. P rogram w języ k u C

W p rz y p a d k u ję z y k a FO R T H k o le jn e słow a p ro g ra m u są w y k o n y w an e n a ty c h m ia st po rozpoznaniu, oprócz fra g ­ m e n tu um ieszczonego m iędzy słow am i i k tó ry jest k o m pilow any (tłum aczony) n a kod k ask ad o w y (ciąg a d r e ­ sów procedur), w y k o n y w an y podczas in te rp re ta c ji słow a

„sieve”.

( E ratosthenes sieve prim e num ber program in F o rth ) 8190 constant size *

0 variable flags size allot 1 sieve

•” 1 0 iterations” cr 10 0 do

flags size 1 fill 0 size 0 do

flags i cn

if i dup -{- 3 + dup I + begin dup size <

while 0 over flags + cl over -f repeat drop drop l - f

th en loop loop

. .” prim es” cr ; (sieve) W ydruk 4. P rogram w języ k u FORTH

P ro g ra m n ap isa n y w języku BASIC nie je st tłum aczony, a je d y n ie n a bieżąco in te rp re to w a n y i w ykonyw any. T ak zw an a półsk o m p ilo w an a po stać p ro g ra m u (plik ty p u .BAC) je st jed y n ie oszczędniejszą fo rm ą zapisu pro g ram ó w źró d ­ łow ych n a dysku.

C E ratosthenes sieve prim e num ber program in F o rtran program sieve

logical *1 flags (8191) integer i,j,k,count,iter,prim e w rite (5,100)

10 0 form at (x , *10 iterations’) do 500 ite r = 1 ,1 0

count = 0 do 200 1=1,8191

flags I «-= .tru e.

200 continue do 400 ¡ = 1,8191

if (.n o t.flag s(i)) goto 400 prim e = i - f i+ 1 count = count -}-l k —i- f prim e if(k.gt.8191) goto 400 do 300 j = k,8191,prim e

f la g s(j) » .f a ls e . 300 continue 400 continue 500 continue

w rite(5,600) count 600 fo rm at (x,i4,* prim es’)

call exit end 1 sieve

W ydruk 5 . P rogram w ję zy k u FORTRAN

W Y N IK I TESTO W A N IA

W ta b ela ch 2—5 przed staw io n o w y n ik i te sto w an ia po­

szczególnych kom p ilato ró w i in te r p r e te r ó w !).

Z zestaw ien ia w y n ik a, żc najszybsze p ro g ra m y są g en e­

ro w an e przez k o m p ilato ry w y tw a rz a ją c e kod n a tu ra ln y , a nieco w olniejsza je st re a liz a c ja kodu kaskadow ego. W p rz y p a d k u języka C stosow anie zm iennych ty p u au to i s ta ­ tic pro w ad zi do podobnych rez u ltató w . P rzyspieszenie r e ­ aliza cji g w a ra n tu je użycie zm iennych reje stro w y ch , a le ich liczba je st ograniczona. W yraźnie n ajg o rsz y pod w zględem czasu rea liza cji je st in te rp re te r BASICA.

D la k o m p u te ró w firm y DEC dostępne są ta k ż e k o m p ila­

tory g en e ru jąc e pseudo-kod (ang. p-code), nie było je d n a k m ożliw ości ich te sto w an ia. M ożna je d n a k dla pełniejszego p o ró w n a n ia o p ie ra ją c się n a [2] podać, iż czas rea liza cji alg o ry tm u E ra lo ste n e sa w języku UCSD PA SC A L w ynosi 221 s, zaś w języ k u UCSD FO R TR A N 281 s n a o ry g in a l­

n e j m aszynie LSI-11.

!) P o sz c z e g ó ln e s k r ó ty w ta b e la c h 2—5 o z n a c z a ją : n a t — k o d n a ­ tu r a l n y . t h r — k o d k a s k a d o w y , r e g — k o d n a t u r a l n y z w y k o r z y ­ s ta n ie m z m ie n n y c h r e je s tr o w y c h , s r e — p r o g r a m ź ró d ło w y , b lo k

= 256 słó w

Tabela 1. P aram etry translatorów

FORTRAN BASIC PASCAL C FORTH

D y stry b u to r DEC D EC OMSI DECUS F IG

Liczba przebiegów 1 1 3

W ielkość k o m p ilato ra (K słów) 51 13 25

W ielkość asem blera (K bIó w) 13 12 -

W ielkość in terp rete ra (K słów) 14 14

Tabela 2 . Porów nanie czasów realizacji program ów

FORTRAN FORTRAN PASC AL C C BASIC FORTH

T y p generow anego k o d u n a t th r n a t n a t rc K •ro th r

G enerow anie liczb pierw szych (s) 34 64 26 24 17 2250 71

S ortow anie bąbelkow e (a) 87 192 122 118 103 11634 314

(8)

N ależy w ty m m iejscu p o d k reślić, że poró w n y w an ie tra n sla to ró w jed y n ie n a p o d sta w ie czasu re a liza cji g en e ro ­ w anych p ro g ra m ó w je st bardzo niepełne. N a osobną oce­

n ę w p ły w a bow iem jeszcze szereg innych cech, ta k ich ja k ła tw o ść u ru c h a m ia n ia i m o d y fik a cji p ro g ra m ó w n a p is a ­ n ych w d a n y m języku, m ożliw ość k o rz y sta n ia z bibliotek, d o b ra d iagnostyka itd.

J e ś li chodzi o pierw szą z ty c h cech, to w y ra źn ie n a jle p ­ szy je s t k o m p ila to r PA SC A LA , w yposażony w b ard z o dob­

r y sym boliczny p ro g ra m uru ch o m ien io w y (debugger) do łą­

czony p rzy użyciu o dpow iedniej op cji k o m p ilato ra. Z n ak o ­ m icie u ła tw ia on u ru ch o m ien ie p ro g ra m ó w n ap isan y c h w PASCA LU i je st w ygodniejszy w użyciu niż fo rtra n o w y deb u g g er FD T o raz system ow y d eb u g g er ODT. Ł a tw e i szybkie je st u ru c h a m ia n ie p ro g ra m ó w n a p isan y c h w języ­

ku BASIC, a po n ab y c iu pew nego dośw iadczenia — ta k że w języku FORTO.

! do 100 1=1, 100

MOV 4j=2,„$AOTS MOV 4 1 ' 1 L$AGl MOV :jj:3,«SAOTS

ł

; body of loop

INC I CMP I , # 1 4 4

BLE LSAG

W ydruk 6. Rozwinięcie instrukcji ’do’ w FORTRANIE

; for i : = 1 to 100 do MOV % 5 ,— (6) MOV # l , - (6) MOV # 1 4 4 , - ( 6 ) MOV 2 (6 ),« 4 (6 ) L i t

CMP « 4 (6 ), (6)

BGT L2

*

; body of loop

*

INC «4(6) B R L I L2:

W ydruk 7. Rozwinięcie in stru k cji ’for’ w PASCALU

Tabela 3. Porów nanie względnych czasów realizacji program ów

FORTRAN FORTRAN PASCAL C C BASIC FORTH

T y p generow anego ko d u n a t th r n u t n a t res sre th r

Generow anie liczb pierwszych 2.0 3.76 1.53 1.41 1.0 132.3 4.17

S ortow anie bąbelkow e 1.0 2.20 1.40 1.36 1.18 133.7 3.60

Sum a czasów względnych 3.0 5.96 2.93 2.77 2.18 266.0 7.77

Tabela 4 . Porów nanie czasów kom pilacji, asem blacji i łączenia

FORTRAN FORTRAN PASCAL C C

T y p generow anego ko d u n u t th r n a t n a t reg

Czas kom pilacji (s) 41 36 20 64 64

Czas asem blacji (s) 50 25 24

Czas łączenia (s) 82 '94 38 55 55

Tabela 5. Porów nanie wielkości generow anego kodu

FORTRAN FORTRAN PASCAL C C FOR TH

T y p generow anego kodu n a t th r n a t n a t res ^ th r

Liczba kom pilow anych b ajtó w ' 502 430 454 297 247 i 224

Z ajętość pam ięci (liczba słów) 7743 8058 8192 6078 6058 4212

P lik w ynikow y (liczba słów)

"

32 4 24 24

? for ( i « l ; I < « =10 0 ; i + + ) * MOV # 1 ,- 1 0 ( 1 1 5 ) B R .4

.3:

; body, o f loop

?

INC — 1 0 (0 5 ) .4s

CMP — 1 0 ( R 5 ) ,# 1 4 4 BLE .3

W ydruk 8a . Rozwinięcie instrukcji ’for’ w języku C (i-a u to )

; for ( i =1 ; S< —1005 ; MOV # l , i

B R .4 .3»

;

; body of loop

i

INC i . i t

CMP I, # 1 4 4 BLE .3

W y d ru k 8b. Rozwinięcie instrukcji ’for’ w języku C (i-static)

; for (i =*1 * i < = 10 0 ; MOV # 1 ,1 1 4

BR .4

.3:

ł

body of loop

INC R4

.4*

CMP IM ,# 1 4 4

B LE .3

W y d ru k 8c. Rozwinięcie instru kcji ’for’ w języku C (i-rcgislcr)

W ielkość generow anego przez k o m p ilato r kodu nie je st obecnie aż ta k isto tn a ja k niegdyś, poniew aż znacznie w zrosły pojem ności pam ięci zarów no o p era cy jn y c h , ja k i zew nętrznych. O gólnie m ożna pow iedzieć, że n ajm n ie jsze p ro g ra m y w y nikow e za p ew n ia stosow anie kodów k ask ad o -

(9)

t W ie lk o ś ć program u

wyeh. U w aga ta n ie jest je d n a k słuszna w p rzy p a d k u p ro g ra m ó w bardzo m ałych (rys. 1). W ydaje się, że n a d ­ m ie rn a długość generow anego kodu w y n ik a często n ie z k ie p sk ie j jak o ści sam ego k o m p ilato ra, lecz z dołączenia dodatkow ych p ro ce d u r diagnostycznych.

D la osób p rag n ący ch porów nać g en ero w an y przez k o m ­ p ila to ry kod, n a w y d ru k a ch 6—10 przed staw io n o ro zw in ię­

cia in stru k c ji p ętli dla języków FO R TRA N , PASCA L, C i FORTEL

I 1 0 1 1 do ... loop

.W ORD LIT ,101.,ONE,XOO LA B: .WORD ; body of loop

.W ORD XLOOP,LAB-.

W ydruk 9. Rozwinięcie instrukcji *doł w ję zy k u FO R TII (kod kaskadow y)

.MACRO NEXT

MOV (i p) + , \p JM P

.ENDM 1 0 1 1 do ... loop MOV ( I P + , - ( S ) NEXT

MOV ( W ) , - ( S ) NEXT

MOV 2 ( S ) , - ( R P ) MOV < S ) ,- ( R P ) ADD # 4>s NEXT

body of loop

INC (R P )

CMP ( ItP ),2 (R P )

BCE 1 $

ADD (IP ),IP

NEXT

ADD # I , R P ADD # 2 , IP NEXT

W ydruk 10. R ozwinięcie kodu kaskadow ego dla FORTIIA

W N IO SK I KOŃCOW E

Spośród poró w n y w an y ch języków p ro g ra m o w an ia n a j­

w yższą ocenę a u to ra uzy sk ały PA SC A L i C. N ależy po d ­ k reślić, że n a ocenę tę sk ła d a ją się zarów no zalety sam ego języka (C), ja k i za le ty k o m p ila to ra (PASCAL).

Ję zy k C d aje p ro g ram iście w ielk ie m ożliw ości [4, 7, 9]

(może sku teczn ie za stą p ić zarów no asem b ler, ja k i P A S ­ CAL), w y m ag a je d n a k w yższych niż p rzeciętn e k w a lifik a ­ cji. W ydaje się, że je st id e a ln y m językiem zw łaszcza dla p ro g ra m istó w system ow ych, m ający ch dość p ro g ra m o w an ia w języ k u asem b lera.

T esto w an y k o m p ila to r nie je st zb y t w ygodny dla osób p rzyzw yczajonych do k o rz y sta n ia z sy stem u operacyjnego RT-60 (nie w y tw a rz a w y d ru k ó w , ta b lic odw ołań ze w n ętrz­

nych itd.). J e s t to k o n se k w e n cją ro zw iązań p rzy ję ty ch w system ie o p era cy jn y m UNIX, gdzie fu n k c je te są rea lizo ­ w a n e przez osobne pro g ram y , dostęp n e zre sztą ta k ż e w system ie RT. S łabszą stro n ą testo w an eg o k o m p ila to ra je st d ia g n o sty k a (au tom atycznie g en e ro w a n y an a liz ato r skład n i parser).

Z alety PA SC A L A są pow szechnie znane. T estow any k o m p ilato r tego języka dopuszcza szereg rozszerzeń w sto ­

su n k u do języka w zorcow ego [6]. W szczególności dozw o­

lona je st se g m en tacja, bez k tó re j tru d n o w yobrazić sobie sp ra w n e u ru c h a m ia n ie dużych program ów . T rochę dokucz­

liw a je st w PA SC A LU zbyt n a ta rc z y w a o ch ro n a p ro g ra ­ m isty p rze d sk u tk a m i błędów , choć je st to logiczna k o n ­ se k w e n cja założeń p rz y ję ty c h w faz ie p ro je k to w a n ia tego języ k a [3], O sobiście uw ażam , że lepsze byłoby o strzeganie przed sk u tk a m i w y k o n an ia ja k ie jś o p eracji, za m ia st n ie d o ­ puszczania jej. W niczym n ie um n iejsza to je d n a k ogól­

n e j oceny języka, k tó ry m ożna polecić zarów no do r e a liz a ­ cji pow ażnych przedsięw zięć, ja k i do n a u k i p ro g ra m o ­ w ania.

Je że li chodzi o FO R TRA N , to popularność, tego języka m aleje, chociaż w n ie k tó ry c h środow iskach (np. w środo­

w isku naukow ców ) je st on w ciąż języ k ie m podstaw ow ym . T esto w an y k o m p ila to r je st p ro d u k te m dobrym i sp raw d zo ­ n y m [5]. W system ie RT-60 istn ie je bogata b ib lio tek a n a ­ p isa n y ch w FO R T R A N IE p ro ce d u r system ow ych, m a te m a ­ tycznych i staty sty czn y ch . Aby móc z te j bib lio tek i e fe k ­ ty w n ie korzy stać, w a rto opanow ać podstaw ow y w sy ste ­ m ie R T język p ro g ra m o w an ia — FORTRAN.

O statn io dużo m ów i się o języku FO R TH [1, 8]. Języ k te n sta w ia przed p ro g ra m istą w ysokie w ym ag an ia, cho­

ciażby ze w zględu n a ubogą diagnostykę, b ardzo nieczy­

te ln y zapis i zastosow aną do zapisu w y ra że ń o d w ro tn ą n o ­ ta c ję polską. J e s t on w łaściw ie b ard z iej języ k iem m a k ro - asem b lera niż językiem w ysokiego poziom u. Z d ru g iej strony, m ech an izm d efin io w an ia now ych słów i in te ra k c y j­

ny try b p rac y w^ p ołączeniu ze sp o rą szybkością d ziałan ia sta n o w ią jego niezaprzeczalne zalety.

O sta tn im z p orów nyw anych języków je st BASIC. D ob­

rze n a d a je się on jed y n ie do u ru c h a m ia n ia k ró tk ic h , p o d ­ ręcznych program ów . P rzeznaczony je st p rzed e w szystkim dla n ie p ro fesjo n alistó w i te m u zaw dzięcza obecnie (i chy­

ba ta k ż e będzie zaw dzięczał w najb liższej przyszłości) sw ą o lbrzym ią popularność.

A u to r nie m iał, n ie ste ty , m ożliw ości p rze testo w a n ia in ­ nych języków , k tó re m a ją do dyspozycji uży tk o w n icy k o m ­ p u te ró w P D P -ll/L S I-1 1 . O prócz w ym ienionych m ogą oni p ro g ram o w ać w językach: FO R TR A N 77, SIM U L A 67, M O­

DUŁ A-2, SNOBOL 4, COBOL, L IS P , PRO LO G , A PL, C + + itd.

L IT E R A T U R A

[1] B ro d le L .: S t a r ti n g F o r th . P r e n tic e H a ll, E n g le w o o d C liffs (N J), 1981

[2] G ilb r e a th J ., G ilb r e a th G .: E r a to s th e n e s R e v is ite d . O n c e m o ­ r e th r o u g h th e S ie v e . R y le , V ol. 8, N o. 1, J a n u a r y 1983

[3] J e n s e n K ., W irth N .: P a s c a l u s e r m a n u a l a n d r e p o r t. S p rin - g e r-V c rla g , B e rlin , 1974

[4] K e r n lg h a n W ., R itc h ie M .: T h e C p r o g ra m m in g la n g u a g e ., P r e n tic e H a ll, E n g le w o o d C liffs < N J) 1978

[51 O p is Ję z y k a Fortran-GO, M e ra - S te r , K a to w ic e , 1981 [6] O p is ję z y k a P ascal-60. M e ra - S te r , K a to w ic e , 1983

¡71 R ic h tie D. .M., Jo h n s o n S. C., L e sk M. E., K e r n lg h a n B . W .:

T h e C p r o g ra m m in g la n g u a g e . D r D o b b ’s J o u r n a l , N u m b e r 45 [8] T r o j n i a r W .: F o r th — ję z y k i s y s te m p ro g ra m o w a n ia , IN F O R ­ M A TY K A , n r 5, 7, 8, 1984

[9] W in ie w sk i J .: Ję z y k p ro g ra m o w a n ia C. IN F O R M A T Y K A , n r 4—B, 1985.

(10)

JAN BIELECKI Warszawa

Programowanie asemblerowe w języku fig-FORTH

C hociaż język F o rth u d o stę p n ia śro d k i um ożliw iające d efiniow anie now ych o p era to ró w i in s tru k c ji za pom ocą podstaw ow ego ze sta w u o p erato ró w , często zachodzi p o trz e ­ ba d efin io w a n ia o p era to ró w za pom ocą se k w e n cji ro z k a ­ zów m aszynow ych.

P o d staw y p o słu g iw a n ia się ro zkazam i m aszynow ym i W celu z ilu stro w a n ia m eto d y p o stęp o w an ia ro zp a trz y m y n a w stę p ie defin icję k o m p ila to ra ta b lic jednow ym iarow ych.

K o m p ila to r ta k i m ożna zdefiniow ać za pom ocą sek w en cji : V E C T O R < B U IL D S A L L O T D O ES > + ; *

O dw ołanie się do te j definicji, np. w k ontekście 5 V E C T O R S T R IN G

pow oduje u tw o rze n ie d efin icji o p e ra to ra S TR IN G i p o w ią­

zanie go z in n y m i o p e ra to ra m i tak , ja k to przed staw io n o n a rys. 1, gdzie:

— pole n azw y w ra z z łą cz n ik ie m przed staw io n o za pom o­

cą k w a d ra tu

—• d w u b ajto w e pole kodu przed staw io n o za pom ocą o k rę ­ gu

— pole p a ra m e tró w przed staw io n o za pom ocą jednego lub w iększej liczby pro sto k ątó w , poziom ą lin ią w y ró ż n ia jąc te jego frag m en ty , k tó re z a w ie ra ją rozkazy m aszynow e.

R y s. 1. D e fin io w a n ie słó w za p o m o q o p e r a to ró w < B U IL D S i D O E S >

J a k m ożna zauw ażyć, k o n se k w e n cją posłużenia się ope­

r a to ra m i < B U IL D S i D O E S > je st w y stą p ien ie w d efinicji o p e ra to ra S TR IN G , b ezpośrednio po polu kodu, d w u b a jto ­ wego w sk az an ia n a część w ykonaw czą k o m p ila to ra VEC­

TOR. W skazanie to m ożna w yelim inow ać, um ieszczając w części w ykonaw czej k o m p ila to ra VECTOR odpow iednio do­

b ra n ą sek w en cję rozkazów m aszynow ych. P o niew aż dobór ty c h rozkazów p o zo staje w ścisłym zw iązku z lis tą ro z k a ­ zów k o m p u te ra , w k tó ry m im p lem en to w an o języ k F o rth oraz zależy od użytego in te rp re te r a w ew nętrznego, dalsze w yw ody ograniczym y do p rz y p a d k u listy rozkazów m ik ro ­ p ro ceso ra In te l 8080 o raz in te r p re te ra w ew n ętrzn eg o p rze d ­ staw ionego n a rys. 2.

NEXT: LDAX B MOV L» A

INX B

LDAX R HOV Hf A

INX B

MOV E»M

INX H

' MOV D»M XCHG PCHL

W in te rp re te rz e ty m r e je s tr BC za w ie ra w sk az an ie na n a s tę p n y in te rp re to w a n y o p era to r, zaś — w chw ili p o d ję ­ cia w y k o n an ia o p era cji w sk az an e j przez pole ko d u b ieżą­

cego in te rp re to w an e g o o p e ra to ra — r e je s tr DE za w iera w sk azan ie n a d ru g i b a jt tego pola k odu, a re je s tr HL w sk azan ie n a p o d p ro g ra m o k reślo n y przez to pole.

S pośród trze ch w ym ienionych re je s tró w je d y n ie z a w a r­

tość BC m usi być zach o w an a m iędzy k o le jn y m i w y k o n a­

n ia m i o p erato ró w , co w p rz y p a d k u gdy bieżący o p e ra to r je st zd efiniow any za pom ocą inn y ch o p era to ró w (a n ie za pom ocą kodu) w y m ag a okresow ego p rzech o w y w an ia sta n u tego r e je s tr u n a stosie pow rotów .

R ys. 2. I n t e r p r e t e r w e w n ę tr z n y

R y s. 3. S ta n r e je s tr ó w p r o c e s o r a p o d c z a s in te r p r e t o w a n i a o p e r a ­ to ró w (b łą d w r y s u n k u — z n a k & p o w in ie n b y ć u m ie sz c z o n y n a d strz a łk ą )

W celu poglądow ego p rze d staw ie n ia an a liz o w an e j d alej im p le m e n ta c ji języka F o rth n a ry s. 3 uw idoczniono sta n re je s tró w BC, DE i H L o raz sta n stosu po w ro tó w wi chw ili p o d ję cia w y k o n an ia o p e ra c ji DUP, w yrażonej w kodzie m a ­ szynow ym i w y w o łan ej podczas re a lizo w a n ia o p era cji TWO, k tó ra z kolei została w y w o łan a podczas w y k o n y w a­

n ia o p e ra c ji ONE.

J e ś li isto tn ie d y sp o n u je m y m ik ro k o m p u te re m z lis tą ro z­

kazów m ik ro p ro ce so ra In te l 8080 oraz z a p reze n to w an ą w y ­ żej im p le m e n ta c ją in te rp re te ra w ew n ętrzn eg o , to m ożem y definicję k o m p ila to ra VECTOR p rze d staw ić w p o staci : V E C T O R C R E A T E SM U D G E A L L O T

;C O D E H E X

E l C, ( P O P H ) 13 C, ( IN X D ) 19 C, ( DA D D ) E5 C, (PU SH H )

C3 C, N E X T , ( J M P N E X T ) D ECIM A L

SM U D G E

P ow yżej założono., że N E X T je s t sta łą o w arto śc i rów nej w sk az an iu n a pierw szy rozkaz in te rp re te r a w ew nętrznego.

O dw ołanie się do te j n ow ej d efin icji w ro z p a try w a n y m ju ż kontekście

5 V E C T O R S T R IN G

p o w oduje ja k u p rzednio u tw o rzen ie d efin icji o p e ra to ra STR IN G i p ow iązanie go z in n y m i o p e ra to ra m i, co p rz e d ­ staw iono n a ry s. 4. J a k ła tw o dostrzec, zo p tym alizow ana defin icja o p e ra to ra S TR IN G je st o dw a b a jty k ró tsz a i n ie za w iera ju ż pom ocniczego w sk az an ia w ystęp u jąceg o bez­

pośrednio po polu kodu, ta k ja k to w y stąp iło dla k o m p i­

la to ra VECTOR zdefiniow anego za pom ocą słów < B U IL D S

Cytaty

Powiązane dokumenty

nym dostępie (ang. m ultiple access) do ośrodka transm isji (ang. station) w sieci E thernet rozumie się pojedyncze adresowalne urządzenie, na ogół zrealizowane

W moim przekonaniu głęboko niesłuszny jest pogląd, że w przypadku produkow ania sprzętu kom puterow ego kom ­ patybilnego z wyrobam i znanych firm , należy

W ciągu ostatnich m iesięcy sytuacja w Polsce zmieniła się tak dalece, że realne stają się nawet takie sfery działań, których wcześniej nie sposób

Środowisko inform atyków, do którego przede w szystkim adresowana jest INFORMATYKA, mimo że form alnie dość jednolite, sprawia wrażenie

Wydział Elektroniki Politechniki Warszawskiej (kierunek — Informatyka).. Obecnie pracuje w II PW jako starszy

strzeżeń można by uznać za prekursorów inform atyki, jest znacznie bogatsza.. Należałoby również w ięcej m iejsca pośw ięcić każdej z prezentowanych tutaj

Odwzorowania ciągów+.

pitału. Wadą w szystkich jest brak rozpow szechniania..