Documentos de Académico
Documentos de Profesional
Documentos de Cultura
lA teoría de Turing
- - - --- - -- -
308 Programación de una máquina universal de Turing
solo" .
"El comportamiento del calculador [humano] está en
todo momento determinado por los símbolos que está ob-
servando y por su "estado de ánimo" en ese instante. Pode-
mos suponer que existe un límite en el número de símbolos
o de cuadrados que el calculador puede observar en un solo
acto. Si desea observar más, tendrá que recurrir a sucesivas
observaciones".3
\,.".,..
. ...
- .,. J
--
"
Progrtmuzdónde una nuíquinauniv~ de Turing 309
"Es posible inventar una única máquina que pueda ser utili-
zada para computar cualquier secuenciaque sea computable.
Si se equipa a esta máquina U con una cinta en cuyo comien-
zo esté escrita la descripción standard de alguna máquina
computadora M, entonces U computará la misma secuencia
queM".6
--- --- -
312 Programación de una máquina universal de Turing
I
Búsqueda
de
configuración
11
pasa a la Instrucción inmediata
Búsqueda
de
instrucción
NO SI
es la última SI III
instrucción
? Ejecución
de
instrucción
cam bia
de estado
da un paso a la
derecha (o a la iz-
quierda, según el
ceso)
SI
imprime (o bo-
rra, según el
caso)
cambia
de
estado
- --- - - --
Programación de una máquína univenal de 1úring 313
Máquinas y Programas
-- - - - - -
314 Programación de una máquina universal de Turing
+ marcar un símbolo
borrar un símbolo
-+
dar un paso a la derecha
dar un paso a la izquierda
. parada °12
-
. -.- - -----
"
~
- --- - ---
-- --- -- -.-
-- - - -
318 ProgramJlciónde una máquina universal de Turing
- -- -
-----------.--..
NUEVA 100
INSTRUCCION
BORRAR DERECHA
g- Q
g- -.
e
g-
e .. ee
-
e
.
-
ee
-
g-
MARCAR IZQUIERDA
TRANSFE-
RENCIA
100100100100100
PARADA
--- --
320 Programación de una máquina universal de Turing
- ----
,
Programación de una máquina universal de Turing 321
-- ----
322 Programación de una máquina universal de Turing
-- - -
Programación de una máquina univeTSlll de Turing 323
1:
,(1
SUBRUTINA DE ~tl
i!
PASO A LA
DERECHA
busca límite
final del pro-
grama
avanza tres
pasos
NO SI
- ---- ---
324 Programación de una máquina universal de Turing
SUBRUTINA DE
PASO A LA
IZQUIijRDA
busca límite
inicial del pro-
gram a
retrocede 1 paso
NO SI
imprimir un O imprimir un 1
en el intervalo si- en el intervalo si-
guiente al límite guiente al límite
Imal del progr. final del pro gr.
j
.1
ve a límite ini-
cial del progra-
ma
reconoce el tri-
plo subsiguiente
TRA-O TRA-l
PROGRAMA' PRINCIPAL
- --- -- --
326 Programación de una mJiquina universal de Turing
SUBRUTINA SUBRUTINA
DE DE
MARCAR BORRAR
,,11 ,lJ
\ I ,11
\J ,1I
vuelve a intervalo vuelve a intervalo
marcado marcado
. 8"
SUBRUTINA
DE
PARADA
---- ----
1
Prognmuu:iónde UntlmlÍquins univentll de Turing 327
JLIST
cc"c
J = J + 1
..J..J..J
560 J = J + 1
563 RE" PROGRAMA PRINCIPAL:
565 REH NUEVA INSTRUCC!üN
570 B(J) = 0
575 J = J + 1
580 B(J) = ~
585 J = J + 1
590 B(J) = 0
600 J = J - 1
605 J = J - 1
610 J = J + 1
615 J = J + 1
6Z0 J = J + 1
630 GOSUB 15000
64. ON A GOTa 11000.11000.11000.650,11000,11000.11000.4000
650 GOSUB 15000
660 ON A GOTa 11000.11000.11000.670.11000.11000.11000.6000
670 GOSUB 15000
680 ON A GOTa 11000.11000.11000.690.11000.11000,11000,8"0
690 GOSUB lS000
700 ON A GOTa 11000,11000.11000,710.11000,11000.11000.9000
710 GOSUB 15000
720 ON A GOTa 11000,11000,11000,2000,11000,11000.11000,10000
20e0 REH SUBRUTINA DE
2001 REH TRANSFERENCIAS
2ele B(J) = 0
20Z0 J = J + 1
ZI38 D(J) = 1
2048 J = J + 1
2050 B(J) = "
2860 J = J - 1
207e J = J - 1
2175 GOSUB 17000
28el GOSUB 20400
2898 J = J + 1
211e J = J + 1
-------- - --
328 Programación de una máquina universal de Turing
2110 J = J + 1
2120 B(J) = 1
2130 J = J + 1
2140 B(J) = 0
2150 J = J + 1
2160 B(J) = 1
2170 J = J - 1
2180 J = J - 1
2190 GOTO 2450
2200 RE M TRANSFER-0
2210 B(J) = 0
2220 J=J+l
2230 B(J) = 1
2240 J = J + 1
2250 B(J) = 0
2260 J = J 1 -
2270 J = J
1 -
2280 GOSUB 20400
2290 GOSUB 20200
2300 B(J) = 0
2310 J = J + 1
2320 B(J) = 0
2330 J = J + 1
2340 B(J) = 0
2350 J = J - 1
2360 J = J - 1
2370 GOSUB 20800
2380 B(J) 1=
2390 J = J + 1
2400 B(J) = 0
2410 J = J + 1
2420 B(J) = 1
2430 J = J - 1
2440 J = J - 1
2445 GOSUB 20400
2450 GOSUB 21000
2460 B(J) = 1
2470 J = J + 1
2480 B(J) = 0
2490 J = J + 1
2500 B(J) = 0
2510 J = J - 1
2520 J = J - 1
2530 GOSUB 15000
2540 ON AGOTO 11000,11000,565,2960,11000,11000,11000,2550
2550 B(J) = 0
2560 J = J + 1
2570 B(J) = 1
2580 J = J + 1
2590 B(J) = 0
2600 J = J - 1
2610 J .= J - 1
2620 GOSUB 20000
2630 J = J + 1
2640 J = J + 1
2650 J = J + 1
2655 GOSUB 17000
2660 IF ~(J) = 0 THEN 2850
11
~
.t.:
322 J J += 1
3230 B(J) = 0
3240 J = J + 1
3250 B(J) = 1
3260 J =
J - 1
3270 J =
J - 1
3275 GOSUB 17000
3280 GOTO 565
3290 GOSUB 21200
3300 B(J) = 0
3310 J = J + 1
3320 B(J) = 0
3330 J = J + 1
3340 B(J) = 0
3350 J = J - 1
3360 J = J - 1
3370 GOSUB 20400
3380 GOSUB 202j0
3385 GOSUB 17000
3390 GOTO 56:,
4000 F:EM SUBRUTINA LE PASO
4001 F:EM A LA DERECHA
4005 B(J) = ....
4010 J = J + 1
4020 B(J) = 0
4030 J = J + 1
4040 B(j) .: 1
4050 J J - .
= .1
4060 J = J - 1
4070 GOSUE: 2€\000
4080 J = J + 1
4090 J = J + 1
4100 j = J + 1
4110 IF B(J) = 1 THEN 4t.50
4120 J = J - 1
4130 IF B(J) = 1 THEN 4180
4140 GOSUB 22300
4170 GOTC' 41\"13
4180 GOUB 22\0(\
4190 J = J - 1
4200 IF 1I(J) = 1 THEN 425'
4210 GOSUB 22300
4240 GOTO 4260
4250 GOSUB 22000
4260 J = J 1 -
4270 IF B(J) = 1 THEN 4320
4280 GOSUB 22300
4310 GOTO 4330
4320 GOSUB 22000
4330 J = J - 1
4340 IF 14(J) .: 1 THEN 4390
4350 GOSUB 22300
4380 GOTO 4400
4390 GOSUB 22000
4400 J = J - 1
4410 IF B(J) = 1 THEH 4460
4420 COSU14 22300
44se COTO 4470
4461 GOSUB 2200.
--
"i.
---------
.
--
.
,
Programación de una máquina univenal de Turing 333 ,
't
¡
6690 J = J + 1
6700 IF B(J) = 1 THEN 6730
6710 GOSUB 22200
6720 GOTa 6740
6730 GOSUB 22100
6740 J = J + 1
6750 IF B(J) = 1 THEN 6780
6760 GOSUB 22200
6770 GaTO 6790
6780 GOSUB 22100
6790 J = J + 1
6800 IF 9(J) = 1 THEN 6830
6810 GOSUB 22200
6820 GOTa 6840
6830 GOSU9 22100
6840 J = J + 1
6850 IF B(J) = 1 THEN 6880
6860 GOSUB 22200
6870 GaTO 6890
6880 GOSUB 22100
6890 J = J + 1
6900 IF B(J) = 1 THEN 6930
6910 GOSUB 22200
6920 GOTO 6940
6930 GOSUB 22100
6940 GOSUB 16000
6950 ON AGOTO 7000,11000,6960,6960,11000,6960,11000,6960
6960 J=J+1
6970 J = J + 1
6980 J = J + 1
6990 GOTO 6790
7000 J = J + 1
7010 J=J+1
7020 J=J+1
7030 B(J) = 1
7040 GOSUB 20600
7045 GOSUB 1700ici
7050 GOTO 565
8000 RE M SUBRUT. DE MARCAR
8010 B(J) = 1
8020 J = J + 1
8030 B(J) = 0
8040 J = J + 1
8050 B(J) = 1
8060 J = J - 1
8070 J = J - 1
8080 GOSUB 20~00
8090 J=J+l
8100 J = J ;t 1
8110 J = J + 1
8120 BU) = 1
8130 GOSUB 20600
8135 GOSUB 170~0
8140 GaTO 565
9000 REM SUBRUT. DE BORRAR
9010 B(J) = 1
9020 J = J + 1
9030 B(J) = 0
9040 J = J + 1
-- --
334 Programación de una máquina universal de Turing
905 11(.1) = 1
9060 J = J - 1
9070 J = J - 1
9080 GOSUB 20000
9090 J = J + 1
9100 J = J ... 1
9110 J = J + 1
9120 EI(J) = 0
9125 GOSUB 17000
9130 GOSUBi0600
9135 GOSUB 17000
9140 GOTa 565
10000 REM SUBRUT. DE
10001 REM OPEP.ACION REALIZADA
10010 GOSUB 20400
11000 GOSUB 17000: END
15000 REM RECONOCEDOR DE
15001 RE" TRIPLOS A LA DERECHA
15003 J = J + 1
15005 J = J + 1
15010 J = J + 1
15015 J = J + 1
15020 J = J + 1
15030 If B(J) = 0 THEN 15170
15040 J = J - 1
15050 IF B(J) = 0 THEN 15110
15060 J = J - 1
15070 IF II{J) = 0 THEN 15090
15080 A = 1
15085 GOTO 15500
15090 A = 5
15100 GOTO 15500
15110 J = J - 1
15120 IF B(J) = 0 THEN 15150
15130 A = 3
15140 GOTO 15500
15150 A = 7
15160 GOTO 15500
15170 J = J - 1
15180 IF B(J) = 0 THEN 15240
15190 J = J - 1
15200 IF I!(J) = 0 THEN 15225
1521. A = 2
15220 GOTO 15500
15225 A = 6
15227 GOTO 15500
15240 J = J - 1
15250 IF B(J) = 0 THEN 152B0
15260 A = 4
15270 GOTO 15500
15280 A =8
15500 F:ETURN
1551. RETURN
16.0. RE" RECONOCEDOR DE
16001 RE" TRIPLOS A LA IZQ.
160.5 J = J - 1
16010 IF B(J) = 0 THEN 16090
1&020 J 11: J - -1: IF 8(J) = 0 THEN 16060
16830 J e J - 1: IF B(J) = 0 THEN 16050
''o.
J
--
l"NJgramJJción
de UIfIlmdquintl universal de Turlrig 335
16ee A = 1
16e5 GOTa 16250
16eSi A :1 5: GOTa 16250
1606e J :a J - 1: IF EI(J) = 0 THEN 16080 11
16070 A = 3: GOTO 16250
16080 A = 7: GaTO 16250
16090 J = J - 1: IF B(J) = 0 THEN 16130 1
16100 J = J - 1: IF B(J) = 0 THEN 16120
16110 A = 2: GOTO 16250
16120 A = 6: GOTa 16250
16130 J = J - 1: IF B(J) = 0 THEN 16150
16140 A = 4: GOTO 16250 .
17130 PRINT .
RETURN
.
--------
336 Programación
de una máquina universal de Turing
-- ----
,.
22010 B(J) = 1 j
!
2202 J = J - 1
22030 -RETURN I
22100 J = J - 1 I
22110 B(J) = 1 I
22120 J = J + 1
22130 RETURN
22200 J = J - 1
22210 B(J) 0 =
22222 J = J + 1
22230 RETURN
22300 J J + 1 =
22310 [qJ) 0 =
22320 J = J - 1
22330 RETURN
JRUN
INTRODUCE DIMENSION CINTA
?108
001111100010010010000010000010010010010010010010010010
..
000010010000010010010010000010010010010010000011101000
001111100010010010010110000010010010010010010010010010
..
000010010000010010010010000010010010010010000011111000
00111111000100100100000100i011001001001001~~100100i001
A
000001001000001001001001000001001001001001000001111000
001111110001001001000001000001001001001001000101001~01
..
000001001000001001001001000001001001001001000001111000
- -- -------
338 Programaciónde una máquinauniversalde Turing
001111110001001001001011008001001001001001001001001001
000101001000001001001001000001001001001001000001111000
A
0011111100010010010~1011000001001001001001001001001001
A
000001001000001001001001000001001001001001000001111000
001111111000100100100000100101100100100100100¡00100100
A
100000100100000100100100100000100100100100100000111000
001111111i0010010010i000100000100100100100100010100100
A
100000100100000100100100100000100100100100100000111000
001111111000100100100101100000100100100100100100100100
100010100100000100100100100000100100100100100000111000
A
001111111000100100100000100000100100100100100100100100
10e101100100000100100i0010000010010010010010~00~111000
A
.
0011111100010010010000010000010010010010010010010010~1
e0000100100101100100100100000100100100¡001~000~1111000
A'
e0111111eee10e10010000010000010010~1001001001001~01001
8e0e010010e0001001001001001011001001001001000001110000
A
Programación de una máquina unive7'Sll1de Turing 339
0011111100010010010000010000010010010010010010010i1001
000001001000001001001001001011001001001001000001110000
A
001111110001001001000001000001001001001001001001001001
A
000001001000001001001001000001001001001001000001110000
340 Programación de una máquina universal de Turing
NOTAS
- - --- ---
Programación de'una máqui1lllunivenal de Turing 341
I
BIBLIOGRAFIA t
- - - -
----
342 Programación de una máquina universal de Turing