🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.lenguajes
Article #158

Re: Programacion con GOTO

#158
From: David
Date: Sat, 18 Nov 2000 00:00
63 lines
3971 bytes
Hola Pedro

"Pedro Maicas" <www@direccion.es> escribi� en el mensaje
news:vpoa1tc0cg7go25021sfiajav8p4qa5e1v@4ax.com...
> Es imposible programar en ensamblador sin usar saltos incondicionales
(jmp)

En absoluto.
Estoy de acuerdo con que es mucho m�s f�cil encontrar saltos incondicionales
en un programa en ensamblador que en uno en lenguaje de alto nivel. Pero su
uso es totalmente evitable. Por ejemplo, si quieres saltar a fin_proc si el
resultado de la �ltima operaci�n ha generado un acarreo y, si no, tienes que
saltar a cont_proc, puedes escribir:

...
jc fin_proc
jmp cont_proc
...

Pero esto es totalmente evitable. Lo correcto hubiera sido escribir:

...
jc fin_proc
jnc cont_proc
...

Pero bueno, se ahorran ciclos al evaluar el flag de acarreo y tal (aunque el
tiempo perdido aqu� es una minucia, comparado con otros tiempos de espera).

Si vas a http://udigital.homepage.com/libro/src/dmap.html te encontrar�s con
un programa en C y ensamblador (realizado por el, en mi opini�n, mejor
programador en ensamblador que he conocido, Ciriaco Garc�a de Celis, Ciri
para los amigos), en el que s�lo te encontrar�s con 2 jmps en la parte en
ensamblador. Casualmente, estos jmps son de los que mencionaba antes como
'evitables'. Por supuesto, no te encontrar�s con ning�n goto en la parte en
C :-)

> Adem�s un salto condicional es 'tan goto' como como uno incondicional.

�Einnn? �Norrrrrl!. Nabsoluto. �Tas de co�a? Con eso me est�s diciendo que
un for, un do-while o un while (incluso un if) no son m�s que gotos
maquillados. Si no �c�mo se traducen a ensamblador estas estructuras de
control?

> Saludos :-)           -Pedro-

Saludos. Sigue el hilo, que me est� molando est� discusi�n. No es broma, la
defensa / criminalizaci�n del uso del goto es una controversia muy fuerte.
Hay ayatollahs en ambos bandos, y convencernos mutuamente va a ser
virtualmente imposible, pero �y lo que se puede aprender?

Como curiosidad, te dir� que 'goto' es una palabra clave reservada en java.
Sin embargo, no aparece como estructura de control por ning�n lado.
�����?????

Y yo, lo m�s parecido a 'goto' que he utilizado en mi vida como programador
(salvando aquellos tiernos tiempos en que programaba en Basic) es el
'gotoxy' de Pascal. Y no tiene nada que ver con lo que estamos hablando,
pero ya desvar�o.

De nuevo, saludos y, �por qu� no? un abrazo

David
Technical Details
Message-ID: <8v5q8s$jb2$1@titan.bt.es>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <zXhQ5.698$cQ5.16259@m2newsread.uni2.es> <8uto1a$t5g$1@titan.bt.es> <vpoa1tc0cg7go25021sfiajav8p4qa5e1v@4ax.com>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: 1135b7,9ebb41239b0c5eaa
X-Google-Attributes: gid1135b7,public
X-Google-Thread: 10d088,9ebb41239b0c5eaa
X-Google-Attributes: gid10d088,public
X-Google-Thread: 105378,9ebb41239b0c5eaa
X-Google-Attributes: gid105378,public
X-Google-Thread: f78ff,9ebb41239b0c5eaa
X-Google-Attributes: gidf78ff,public
X-Google-Thread: f59de,9ebb41239b0c5eaa
X-Google-Attributes: gidf59de,public
X-Google-Thread: f86c8,9ebb41239b0c5eaa
X-Google-Attributes: gidf86c8,public
X-Google-Thread: 1116f3,9ebb41239b0c5eaa
X-Google-Attributes: gid1116f3,public
From: "David" <davidrodrNOS@PAMexcite.es>
Subject: Re: Programacion con GOTO
Date: 2000/11/18
Message-ID: <8v5q8s$jb2$1@titan.bt.es>
X-Deja-AN: 695063985
Content-Transfer-Encoding: 8bit
References: <zXhQ5.698$cQ5.16259@m2newsread.uni2.es> <8uto1a$t5g$1@titan.bt.es> <vpoa1tc0cg7go25021sfiajav8p4qa5e1v@4ax.com>
X-Priority: 3
Content-Type: text/plain; charset="iso-8859-1"
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400
X-Complaints-To: abuse@bt.es
X-Trace: titan.bt.es 974548060 19810 212.22.41.100 (18 Nov 2000 11:47:40 GMT)
Organization: BT Tel. Netnews service (readers)
X-MSMail-Priority: Normal
Mime-Version: 1.0
NNTP-Posting-Date: 18 Nov 2000 11:47:40 GMT
Newsgroups: es.comp.lenguajes,es.comp.lenguajes.java,es.comp.lenguajes.misc,es.comp.os.linux.programacion,es.comp.os.ms-windows.programacion,es.foro.lenguajes,esp.comp.so.linux.programacion