Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
computables.
REPRESENTACION DE CARDIAC
acc=shiftright(acc,1)
REPRESENTACION DE URM
T(m,n) m=2 n= -
S(n) n=2
Z(n) n=2
LOAD
T(m,n) //R[n]=R[m]
ADD
2-- //acc=acc+mem[-]
TAC
3-- 310 //if(acc<0)ir linea 10
C=numero codificador, n=numero
Nmeros positivos Codificacin Nmeros negativos Codificacion
1 2 -1 1
2 4 -2 3
3 6 -3 5
.. .. .. ...
N 2c(par) -n 2c-1(impar)
01:J(1,4,8) Este programa regresara cero si el nmero de su
02:S(2) codificador es impar.
03:J(1,2,7) Y regresara el valor si es par.
04:S(2) Se puede agregar una lnea conocido su codificador
05:J(1,2,8) 08:J(1,5,10)
06:J(1,1,2)
07:Z(1)
Shift 4 - -
En nmeros enteros sin signo, el desplazamiento lgico hacia la izquierda equivale a una multiplicacin por 2 y el
desplazamiento lgico hacia la derecha equivale a una divisin por 2.
Los programadores de lenguaje ensamblador usan esta propiedad para hacer multiplicaciones y divisiones rpidas, de
enteros sin signo, por una potencia de 2, en donde n desplazamientos equivalen a multiplicar o dividir por 2 n.
Ejemplo:
01:802// pc=2
01:J(1,1,2) // If(R1==R1)ir linea 2
9--
Ejemplo 20:910 //pc=21, stop
20:J(1,1,21)
21:
Por lo que s puedo ir de cardiac a URM y viceversa entonces ambos lenguajes son equivalentes. El modelo es valido en
el rango de 0 a 999 para E/S