13.07.2015 Views

The PowerPC 604 RISC Microprocessor - eisber.net

The PowerPC 604 RISC Microprocessor - eisber.net

The PowerPC 604 RISC Microprocessor - eisber.net

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

4Pascal implementation: Compiler and Assembler/InterpreterCompiler Listing57 (" steckoleite - minimum alto (or 1 steekelement121_ette form: structform of58k"steckel122scalar: (case scelkindi doclkind of59 ntackel scm(sli other al-conatante) 123 declared: ((coned ctp));60 charmax ■ scm(chersize,charal) 124 put:range& (rangetypet etp; m1n,maxt valu),61 scm smalleet common multiple 125 pointer: (sitypet stp),62 lca(termarketock 4"ptreitnimnx(x-ales) 126 powers (cleat, sip),63 • klAsteckeleiee A)127 errL/st (aeltype,inxtypet etp);64 maxetack 1; 128 records! ((etfIdt ctp; recvart etp);65 pormnl eteckell 129 Most (filtype: etp);66 parmeise stockelsixe: 130 tegfldt (tegfieldpt ctp; fotvar: stp);61 recd; - etackal; 131 variant! (nxtvar,subvar: etp; vArvalt vale)613 filebuffor ■ 4; 132 end;69 mexaddr mexint; 13370 13471 13572 13673 type ("describing: ")137 idcless (typee,konst,vars,field,proc,func);(AAAAAAAAAAAAA)74 138 eetofide - set of 1dcleas;15 139 idkind (actuel,formel);76 140 alpha .• packed array (1,.(1) of char;71 ("bneic symbols")141711 (AAAAAAAAAAAAAAA)142 identifier ■ packed record79 143 name: alpha; llink, rllnk: ctp;80 symbol - (ldent,lntconst,realconot,stringconst,notey,mulop,addop,relop, 144 1dtypo: stp; next: ctp;81 1parent,rparent,lbrack,rbreck,comma,semicolon,period,arrow, 145 case klassi 1dclees of82 colon,bocomoe,laboley,co<strong>net</strong>ey,typeey,verey,funcey,progey, 146 ko<strong>net</strong>: (values: valu),03 procey,setey,packedey,arreyey,recordey,fileey,forwardey, 147 vertu (vkindi idklnd; vlev: levrange; vaddr: eddrrange),84 beginey,ifey,casetty,repeetey,whilesy,forey,withey, 148 field: (fldaddr: eddrrange);85 gotosy,encley,eiseey,untiley,ofey,doey,tosy,downtotty, 149 proc,86 theney,othorey), 150 tune: (case pideckind: declklnd of01 operator .• (mul,rdiv,andop,idiv i lmod,plun,mlnua,orop,ltop,loop,geop,gtop, 151 standard: (key, 1..15);88 neop,eqop,lnop,noop); 152 declared: (pflev: levrange; p(nnmc: Integer;09 sotofeyo - set of symbol; 153 case pfkindt ldkind of90 chtp - (letter,numbor,epoclal,illogal, 154 actual: (forwdecl, extern:91 chstrquo,chcolon,chporiod,chlt,chgt,chlparen,chopece), 155 boolean)))92 156 end;93 ("constants") 15794 (AAAAAAAAAAA)15095 159 dieptange ■ 0..diapllmit;96 cetclase (rcel,peet,strg); 160 where (61ck,crec,vrec,rec);97 cep - " constant; 16190 co<strong>net</strong>nnt record case cciette: cetcleee of 162 ("expresslona")99 reel: (rvalt pecked array (1..otrglgthj of char); 163 (ss AAAAA 401A41014)100 peat: (pvalt set of setlow—sothigh), 164 attrkind (cst,varbl,expr);101 etrg: (elgth: 0..etrglgth; 165 vaccoos (drct ; indrct,inxd);102 ovals packed array (1..strglgth) of char) 166103 end; 167 attr record typtr: stp;104 168 case kind: attrklnd of105 valu record case intvell boolean of ("intval never sat nor teated") 169 coat (cvalt val.);106 true: (ival, integer); 110 varbl: (case Access: vaccess of107 false: (yelp: cep) 171 drct1 (vlevel: levrange; dplmtt eddrrange);108 and; 172 lndrctt (idplmt: eddrrange))109 173 end;110 ("date structures") 114111 •(AAAAAAAAAAA AAAAA A) 175 testy " testpotnter;112 levrange ■ 0..maxlevel; eddrrange ■ 0..maxeddr; 176 testpointer pecked record113 etructform (ecaler,eubrangc,pointer,power,arreye,recordo,filee, Ill eltl,elt2 stp;114 tegfld,varient)1 176 leetteetp t teetp115 declkind ■ (stsndard,declared); 179 end;116 stp " structure; ctp ■ " identlfiet; 1 180117 181 ("labels")118 structure packed record 182119 marked: boolnan; ("for test phase only") 183 lbp " labl;120 size' eddrrange{ 184 1abl record nextlab: lbp; defined: boolcon;

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!