1. INTRODUCAOA linguagem PL/I (ProgrammingLanguage One Linguagem deProgramacao Um) foi criada no final da decada de 50. Segundo suascaracteristicas, e voltada para as areas comercial, como por exemplo o COBOL (Common Business Oriented Language Linguagem Comum Orientadaaos Negocios) e cientifica, como o Fortran (Formula Translator Tradutor de Formulas).1.1. Folha de codificacao PL/INa codificacao PL/I, sao consideradas apenas 80 colunas.Porem, assim como o COBOL, havera distincao de areas na codificacao por partedo compilador. Observe a tabela abaixo: Colunas Funcoes 01 Controle de carro para Impressao da listagem do fonte 02-72 Livre para descrever todo o programa 73-80 Livre para sequenciar as linhas do programa ou documentar Explicacoes:ADurante a compilacao do programa, sera geradauma listagem. O caracter constante da coluna 1 determinara uma acao (saltarpagina, por exemplo) a ser feita pelo compilador.ATodos os comandos da linguagem PL/I seraoefetivamente codificados nas colunas iniciadas pela 02, indo ate a 72. Qualquerinstrucao fora dessas colunas sera ignorada.AAs colunas de 73 a 80 sao livres para qualquertipo de comentario, pois sao ignoradas pelo compilador.1.2. IdentificadoresOs identificadores PL/I sao regidos da seguinte maneira:APode conter apenas caracteres alfabeticos,numericos e hifen (-);AO primeiro caracter do identificador devera sersempre alfabeticos;AUm identificador contera no maximo 31caracteres, havendo algumas excecoes, como os nomes de procedimentos, queconterao no maximo 31 caracteres.1.3. Conjunto de caracteresExistem dois conjuntos de caracteres que sao disponiveispara o PL/I: o de 48 e o de 60 caracteres. Isso se deve em virtude dediferentes versoes da linguagem. O PL/IBasico utiliza o conjunto de 48 caracteres e as versoes PL/I Full e Optimizing utilizam o conjunto de 60, mantendo compatibilidade como de 48.Quando se usa o conjunto de 60 caracteres nao ha palavrasreservadas. No conjunto de 48, algumas sao reservadas ao compilador para um fimespecifico, como por exemplo LE, GT, etc.Observe a distribuicao dos conjuntos: 29 caracteres alfabeticos De 60 10 caracteres numericos 21 caracteres especiais 27 caracteres alfabeticos De 48 10 caracteres numericos 11 caracteres especiais Conjunto de caracteres: Classificacao 60 caracteres 48 caracteres Descricao Alfanumericos A a Z$@ e # A a Z$Nao disponivel AlfabeticoAlfabeticoAlfabetico 0 a 9 0 a 9 Numerico Especiais =+-*/(),.%:;&|< > ? =+-*/(),.//...,.NOTANDORLTGTNao disponivelNao disponivel BrancoIgualAdicaoSubtracaoMultiplicacao - aster.Divisao - barraAbre parenteseFecha parenteseVirgulaPontoApostrofoPorcentagemDois pontosPonto-e-virgulaNao logicoE logicoOu logicoMenor queMaior queTravessaoInterrogacao 1.4. Comandos PL/ITodos os comandos PL/I serao sempre codificados conforme asintaxe generica a seguir:<IDENTIFICADOR DE COMANDO> + <CORPO DE COMANDO>+ <;>Exemplo:GOTOSEGUE;DCLA DECIMAL FIXED;Todas as linhas de comando logicas PL/I seraofinalizadas com ponto-e-virgula (;). Na impossibilidade de ser codificadainteira em uma unica linha fisica, basta passar para a de baixo e continuar acodificacao. Virgulas (,) serao utilizadas em algumas estruturas que forem maisextensas que uma linha, como por exemplo a instrucao DECLARE que sera vistamais adiante. Mesmo assim o ponto-e-virgula devera estar obrigatoriamentefechando a ultima linha.Diferente do COBOL que admitia ponto apenas na ultimainstrucao de uma section o paragrafo, todas as instrucoes PL/I sem excecaodeverao finalizar com ponto-e-virgula.1.5. ComentariosOs textos de comentario em PL/I serao delimitados por barra asterisco no inicio e asterisco barra no final conforme a sintaxe a seguir:/*(texto de comentario) */Os comentarios podem conter varias linhas, sendo que sempreserao respeitados os delimitadores.2. VARIAVEISA declaracao das variaveis e