24.11.2012 Aufrufe

Diplomarbeit - Hochschule für Technik und Wirtschaft Dresden

Diplomarbeit - Hochschule für Technik und Wirtschaft Dresden

Diplomarbeit - Hochschule für Technik und Wirtschaft Dresden

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>Diplomarbeit</strong>: Modulares System Anhang<br />

/* Zeichenklassenvektor */<br />

static char vZKI[256]=<br />

/* 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 1 2 3 4 5 6 7 8 9 A B C D E F */<br />

/*--------------------------------------------------------------------------------*/<br />

/* 0 */ {7,7, 7,7,7,7,7,7,7,7,7,7,7,7, 7,7, //<br />

/* 1 */ 7,7, 7,7,7,7,7,7,7,7,7,7,7,7, 7,7, //<br />

/* 2 */ 7,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0, // ! " # $ % & ' ( ) * + , - . /<br />

/* 3 */ 1,1, 1,1,1,1,1,1,1,1,3,0,5,4, 6,0, // 0 1 2 3 4 5 6 7 8 9 : ; < = > ?<br />

/* 4 */ 0,2, 2,2,2,2,2,2,2,2,2,2,2,2, 2,2, // @ A B C D E F G H I J K L M N O<br />

/* 5 */ 2,2, 2,2,2,2,2,2,2,2,2,0,0,0, 0,0, // P Q R S T U V W X Y Z [ \ ] ^ _<br />

/* 6 */ 0,2, 2,2,2,2,2,2,2,2,2,2,2,2, 2,2, // ` a b c d e f g h i j k l m n o<br />

/* 7 */ 2,2, 2,2,2,2,2,2,2,2,2,8,0,9, 0,0, // p q r s t u v w x y z { | } ~<br />

/* 8 */ 0,0, 0,0,0,0,0,0,0,0,0,0,0,0, 0,0, // € ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ Ž<br />

/* 9 */ 0,0, 0,0,0,0,0,0,0,0,0,0,0,0, 0,0, // ‘ ’ “ ” • - — ˜ š › œ ž Ÿ<br />

/* A */ 0,0, 0,0,0,0,0,0,0,0,0,0,0,0, 0,0, // ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯<br />

/* B */ 0,0, 0,0,0,0,0,0,0,0,0,0,0,0, 0,0, // ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿<br />

/* C */ 0,0, 0,0,0,0,0,0,0,0,0,0,0,0, 0,0, // À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï<br />

/* D */ 0,0, 0,0,0,0,0,0,0,0,0,0,0,0, 0,0, // Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß<br />

/* E */ 0,0, 0,0,0,0,0,0,0,0,0,0,0,0, 0,0, // à á â ã ä å æ ç è é ê ë ì í î ï<br />

/* F */ 0,0, 0,0,0,0,0,0,0,0,0,0,0,0, 0,0}; // ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ<br />

/* Schaltmatrix des Automaten */<br />

static char vSMatrix[9][12]=<br />

/* So Zi Bu ':' '=' '' Space { }<br />

. " */<br />

/*-------0--------1-------2-------3-------4-------5--------6-------7-------8-------<br />

9-------10-------11------*/<br />

/* 0 */ {0+ifslb, 1+ifsl, 2+ifgl, 3+ifsl, 0+ifslb, 4+ifsl, 5+ifsl, 0+ifl, 6+ifl,<br />

0+ifslb, 0+ifslb, 8+ifl, // normal<br />

/* 1 */ 0+ifb, 1+ifsl, 0+ifb, 0+ifb, 0+ifb, 0+ifb, 0+ifb, 0+ifb, 0+ifb,<br />

0+ifb, 7+ifsl, 0+ifb, // oNumber<br />

/* 2 */ 0+ifb, 2+ifsl, 2+ifgl, 0+ifb, 0+ifb, 0+ifb, 0+ifb, 0+ifb, 0+ifb,<br />

0+ifb, 0+ifb, 0+ifb, // char<br />

/* 3 */ 0+ifb, 0+ifb, 0+ifb, 0+ifb, 0+ifslb, 0+ifb, 0+ifb, 0+ifb, 0+ifb,<br />

0+ifb, 0+ifb, 0+ifb, // :<br />

/* 4 */ 0+ifb, 0+ifb, 0+ifb, 0+ifb, 0+ifslb, 0+ifb, 0+ifb, 0+ifb, 0+ifb,<br />

0+ifb, 0+ifb, 0+ifb, // <<br />

/* 5 */ 0+ifb, 0+ifb, 0+ifb, 0+ifb, 0+ifslb, 0+ifb, 0+ifb, 0+ifb, 0+ifb,<br />

0+ifb, 0+ifb, 0+ifb, // ><br />

/* 6 */ 6+ifsl, 6+ifsl, 6+ifsl, 6+ifsl, 6+ifsl, 6+ifsl, 6+ifsl, 6+ifsl,<br />

6+ifsl,0+iflb, 6+ifsl, 6+ifsl, // {}<br />

/* 7 */ 0+ifb, 7+ifsl, 0+ifb, 0+ifb, 0+ifb, 0+ifb, 0+ifb, 0+ifb, 0+ifb,<br />

0+ifb, 0+ifb, 0+ifb, // fNumber<br />

/* 8 */ 8+ifsl, 8+ifsl, 8+ifsl, 8+ifsl, 8+ifsl, 8+ifsl, 8+ifsl, 8+ifsl,<br />

8+ifsl,8+ifsl, 8+ifsl, 0+iflb // ""<br />

};<br />

// Symboltabelle<br />

const int vWSymbCount=19;<br />

char* vWSymb[vWSymbCount]={"BEGIN", "CALL", "CONST", "DO", "ELSE", "END", "IF",<br />

"ODD", "PROCEDURE", "FUNCTION", "THEN", "VAR", "WHILE", "PROGRAM", "INTEGER",<br />

"FLOAT", "STRING", "GET", "PUT"};<br />

Abbildung A.2 - Tabellen der lexikalischen Analyse in PL0<br />

26.07.2004 Seite 73 von 85

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!