ETC2

Páginas: 2 (493 palabras) Publicado: 17 de noviembre de 2014
PRÁCTICA 1:

Para resolver el problema es necesario el uso del puntero de pila SP para pasar los parámetros por registro. Hemos utilizado el registro A0 para cargar la dirección efectiva de lacadena de caracteres. En el procedimiento LETRAS que es una subrutina independiente sirve para confirmar que efectivamente son letras, también pasa al final del array A0 todos los espacios en blancosobrantes que se han llevado a cabo en la misma y cuenta las vocales, consonantes y espacios eliminados en A0. En dicha subrutina guarda el contexto de los registros necesarios antes de ser utilizados , alfinal del procedimiento recupero el contexto inicial. De los registros que no se salva y recupera contexto son de D0, D1 y D2 para poder mostrar en ellos el numero de vocales, consonantes y espacioseliminados como así se indica en el enunciado de la práctica, ya que al guardarlo por contexto no se mostrarían los valores en dichos registros.
Al recuperar el contexto hay que desapilar cadaregistro en orden inverso del que habíamos apilado.
Es importante destacar que en el código del programa , han sido llevados a cabo dos bloques, uno para controlar si la frase empieza con un soloespacio en blanco o en varios, para este bloque la variable D5 es igual a cero y solo se ejecuta siendo así, en el momento que ya encuentra en la frase varios espacios en blanco se va al otro bloque para irpasando al final del array A0 los espacios en blanco sobrantes y pone la variable D5 igual a 1 , de manera que el primer bloque ya no se ejecutara.




ALGORITMO EN PSEUDO-PASCAL

PROGRAMCADENA;
Const
N = 30;
A = 0;
B = 97;
C = 122;
D = 32;
E = 101;
F = 105;
G = 111;
H = 117
Var
Cadena: Array[0..N-1] of Char;

Procedure Letras (A0 : Puntero);Var
D0,D1,D2,D3,D4,D5 :Byte;
A1:Puntero;
Begin
A1:=A0;
Repeat
D3:=(A0);
If (D3A) then
Begin...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS