Banda Ancha EU

Comunidad de usuarios
de fibra, móvil y ADSL

hosting en interdominios
279 lecturas y 24 respuestas
  • Cerrado

    Boca de Pez Boca de Pez
    6

    direccionamiento en ensamblador

    hola voy a empezar a aprender ensamblador y una de las primeras cosas que estoy viendo es que en los primeros procesadores intel 80x86 las direcciones de memoria se componen de dos registros pequeños en lugar de uno grande (porque grandes no habia grandes registros), es decir, se componen de segmento y desplazamiento (16xsegmento+desplazamiento). ahora viendo que el tamaño de los registros es como minimo de 32, me planteo las siguientes dudas.
    1-¿se utiliza este direccionamiento en procesadores modernos, como pentium 4, core duo, o amd?
    2-¿en caso contrario como se escriben las direcciones ahora?
    3-¿a partir de que momento se cambio el sistema?
    4-¿en procesadores nuevos se pueden utilizar ambos sistemas de direccionamiento (en caso de que haya otro nuevo, claro)?

    ¿que mas cosas basicas que hayan cambiado desde los 8086 deberia saber, pese a empezar por estudiar los antiguos?
    merece la pena molestarse en aprender ensamblador o mejor solo lenguajes de alto nivel?
    no me pongais links, sino explicarmelo de una manera facil, por favor.
    pd: plantee anteriormente una duda igual y la vuelvo a poner, esta vez en el foro adecuado.
    gracias

    Este tema es antiguo y puede contener información obsoleta. Abre un nuevo tema para publicar tu mensaje.
    • Cerrado

      Boca de Pez Boca de Pez
      6

      responderme alguno, que antes de seguir tiene que quedarme…

      responderme alguno, que antes de seguir tiene que quedarme todo esto claro.
      gracias

    • Cerrado

      [Editado]

      http://www.monografias.com/trabajos14/lenguaje-ensamblador/leng…

    • Cerrado

      Boca de Pez Boca de Pez
      6

      Para que quieres aprender ensamblador? Para que crees que te…

      Para que quieres aprender ensamblador? Para que crees que te va a servidor? Trabajaras con ello? Por aficion?

    • Cerrado

      Boca de Pez Boca de Pez
      6

      Normalmente se usan varios modelos de desplazamiento, y los…

      Normalmente se usan varios modelos de desplazamiento, y los más comunes son:

      Directo.
      Indirecto.
      Relativo a registro indice.
      Relativo a registro base.

      No se cual usan en los pentium o AMD actuales (si es que no usan todos), pero te interesaría tener claros los modos de direccionamiento, y luego ver cual de ellos se usan en los pentium/AMD actuales.

    • Cerrado

      Boca de Pez Boca de Pez
      6

      Por cierto, de muy poco o nada te va a servir saber…

      Por cierto, de muy poco o nada te va a servir saber ensamblador. Te recomiendo Java (Orientacion a objetos), C y si quieres algun paradigma funcional (Lisp), aunque este ultimo tampoco te valdrá de mucho, suele ser didáctico.

      • Cerrado

        Boca de Pez Boca de Pez
        6

        c ya se. ensamblador quiero aprender lo basico. entender el…

        c ya se.
        ensamblador quiero aprender lo basico. entender el lenguaje, no aprenderlo para hacer grandes programas.
        explicarme un porquillo el direccionamiento en ensamblador por favor, que visito enlaces, pero casi no se entienden y no se centran mucho en la parte de memoria.
        gracias

        • Cerrado

          Boca de Pez Boca de Pez
          6

          Para "aprenderlo por aprender" tienes mucho interes sólo en…

          Para "aprenderlo por aprender" tienes mucho interes sólo en ese apartado...

          Logicamente, es por algun motivo, nadie actualmente aprende ensamblador por aprender, a no ser que busque una finalidad (crackear algun aparato y otros menesteres).

            • Cerrado

              Boca de Pez Boca de Pez
              6
              Había sacado los apuntes de estructura de computadores para…

              Había sacado los apuntes de estructura de computadores para ponertelo, pero que narices, que te den. Limítate a buscar por google como hacen los demás.

                • Cerrado

                  Boca de Pez Boca de Pez
                  6
                  De malas maneras? Se te ha preguntado para que lo quieres. Ya…

                  De malas maneras? Se te ha preguntado para que lo quieres. Ya es sabido que existen tecnicas para piratear el plus, programar los chips...

                  TU te niegas a buscar información en google o en los enlaces que te han dado, ya que dices que es "confuso". El tema es que SOLO quieres saber eso y a modo secreto.

                  Por mi parte, no te ayudo, intolerante.

            • Cerrado

              Dejando aparte del porque quieres saber solo el…

              Dejando aparte del porque quieres saber solo el direccionamiento de memoria, ya que es bien sabido que un cuchillo de cocina no sirve necesaria y exclusivamente para matar... siempre es bueno seguir indagando, buscando por la Red la información que pides si en un sitio no hay respuestas, o las que hay, no et satisfacen.

              Evidentemente, por aquí va a ser muy difícil que alguien te de unas clases ya que el tema es largo o no, según se mire, y si después de ver los enlaces aún no te ha quedado ni 'medio' claro eso, no creo que alguien te repita lo mismo.

              Claro está, que cada uno puede hacer lo que quiera y puedes seguir esperando, pero el autoaprendizaje, junto a la práctica es lo mejor... menos sencillo y cómodo que si te lo explican y te lo dan 'mascado', pero a la larga adquieres más conocimientos.

              Podrías empezar con sencillos ejemplos y hacerlos correr en máquinas de 32 o 64bit y así 'experimentar' y salir de alguna duda.

              Slds. :-)

              • Cerrado

                Boca de Pez Boca de Pez
                6
                gracis, por fin alguien que ayuda. a ver en primer lugar…

                gracis, por fin alguien que ayuda.
                a ver en primer lugar estoy estudiando ingeniaria informatica.
                estoy en primero y solo enseñan c y yo quiero tener unos conocimientos minimos de ensamblador, como buen programador que quiero ser.
                lo estoy aprendiendo por mi cuenta con un libro que tiene 15 años y por eso pregunto que como se especifican las direcciones en los pentium de ahora, que aunque tienen compatibilidad con el juego de instrucciones, supongo que al ser los registros de 32 bits ya no hace falta complicarse la vida con un segmento*16+ offset.
                la duda es si se hace de otra manera, si se sigue haciendo igual o si se puede la manera vieja y la nueva. porque en el libro solo ponen la manera vieja.
                es solo eso en 10 lineas podria quedar perfectamente explicado por alguien que sepa programar.
                gracias

                • Cerrado

                  Boca de Pez Boca de Pez
                  6
                  Ensamblador es un lenguaje de programación viejo por…

                  Ensamblador es un lenguaje de programación viejo por concepción, en el sentido que parece que te molesta el estar viéndolo en un libro viejo. Seguramente será la única manera en que lo verás, a lo viejo.

                  Tus inquietudes las veo justificadas, y te recomiendo que te "conformes" con aprender la filosofía de cómo trabaja el ensamblador del 8086. Pero como futuro ingeniero antes tienes que ahondar más en la estructura del computador, ir más bajo, comprender los componentes hardware, como está estructurado un computador. Seguramente tendrás en primero alguna asignatura tipo informática básica, que complementarás luego con otras como estructura de computadores y arquitectura de computadores.

                  A partir de ese conocimiento entenderás las instrucciones en ensamblador y, desoyendo los comentarios de más de un palurdo que no le ven sentido al ensamblador, comprenderás la programación a más alto nivel, con mayor abstracción. Será una herramienta poderosa para comprender en sus últimas instancias el funcionamiento de un computador, que como ingeniero, es más que necesario.

                  Saludos

                  • Cerrado

                    Yo hice las 2 asignaturas, y por ahora son de las asignaturas…

                    Yo hice las 2 asignaturas, y por ahora son de las asignaturas que mas me han gustado, a pesar de que suelen ser el "hueso" para algunos...

                    Poder hacer ciertas máquinas a tu antojo es muy entretenido :D

                  • Cerrado

                    Boca de Pez Boca de Pez
                    6
                    gracias por tu comentario. pero joder, simplemente decirme si…

                    gracias por tu comentario.
                    pero joder, simplemente decirme si hay alguna manera de especificar las direcciones en los pentium que no sea por segmentacion, que le estoy dando vueltas a eso y no me he vuelto a poner a leer el libro hasta que me quede eso claro.
                    gracias

                    • Cerrado

                      Boca de Pez Boca de Pez
                      6
                      he leido algo del direccionamiento directo o algo asi, pero…

                      he leido algo del direccionamiento directo o algo asi, pero no encuentro ninguna web donde lo expliquen.
                      los pentium 4 por poner un ejemplo, soportan segmentacion y direccionamiento dinamico (es decir, los dos tipos)?
                      a partir de cuando se introdujo?
                      gracias

                • Cerrado

                  [Editado]

                  Pues da gracias que te enseñan C. Cuando yo estaba en la…

                  Pues da gracias que te enseñan C. Cuando yo estaba en la facultad (1990-1995) y el plan era de 6 años (no acabé), tenías que llegar a 4º sabiendo C para las prácticas de Unix ... el problema era que en los 3 años anteriores no enseñaban C, sino Modula-2 y pseudocódigo de alto nivel; y con dicha base en el veranito pues a empollarse el Kernighan & Ritchie para salir del paso ...

                  • Cerrado

                    Boca de Pez Boca de Pez
                    6
                    no entiendo tu comentario, yo estoy en primero y aprendi c…

                    no entiendo tu comentario, yo estoy en primero y aprendi c por mi cuenta antes de que me lo enseñaran, igual que estoy intentando aprender ensamblador, es decir leyendo libros.
                    pero como cuando escribieron el libro solo habia pentium 1. no se que cosas han cambiado desde entonces (ademas del juego de instrucciones logicamente).
                    tu que pareces tener idea, me puedes decir que cambios se han hecho en la programacion en ensambaldor desde los primeros 8086 hasta los core 2 duo (repito que aparte del juego de instrucciones, solo me refiero a cosas como el escribir una direccion en una instruccion)
                    gracias

                    • Cerrado

                      [Editado]

                      Yo soy de la escuela antigua, de Zilog y Motorola. No…

                      Yo soy de la escuela antigua, de Zilog y Motorola. No controlo de Intel x86, sorry.

                      El Intel 8086 y sus derivados son micros extraños y sobre todo feos. Cuando dieron el salto a los 16 bits con el 80286, las ampliaciones de los direccionamientos anteriores de 8 bits fueron muy enrevesadas y metidas como un parche, más que con cabeza. El modo real de 32 bits con el 80386 parece que arregló la cosa. Luego las instrucciones MMX y SSE1/2/3/4 que han ido metiendo, son casi como coprocesadores independientes con juegos propios, que no tienen mucho que ver con el juego original y se estudian aparte.

                      De todas formas a mí nunca me han gustado los x86 por dentro y les cogí manía, ¡qué te voy a decir!. Están a años luz de la elegancia de los Motorola 68000/20/30/40 y del exitoso diseño del Zilog Z80 que hoy en día sigue usándose como rey de los 8 bits, aunque sea ahora en ascensores o lavadoras. Además, sabiendo 68000 y Z80 era una gozada crackear la Sega Megadrive.

                      ¿Por qué te crees que en la Universidad se empieza por pseudocódigo de bajo nivel y luego cuando tienes cogidos los conceptos de los buses de datos, buses de direcciones, procesamiento de la microinstrucción por ciclos (sí, en el pasado 1 única instrucción duraba varios ciclos de reloj), etc ... lo que te enseñan es el Z80 de 8 bits?

                      No es buena idea empezar con los micros x86 aunque sea "lo práctico" debido a su expansión universal.

              • Cerrado

                Boca de Pez Boca de Pez
                6
                no quiero saber solo el direccionamiento de memoria, quiero…

                no quiero saber solo el direccionamiento de memoria, quiero saber todo, solo que eso es lo unico que no viene en el libro, las modificaciones que se han hecho en los procesadores modernos.

                • Cerrado

                  Boca de Pez Boca de Pez
                  6
                  No sé si te refieras a los modos de direccionamiento que…

                  No sé si te refieras a los modos de direccionamiento que trabajan con la memoria, como el inmediato, base, base indexado. Si es así pues tan fácil como manejar en los operandos localidades de memoria siempre y cuando sólo uno de los operandos haga referencia a las localidades de memoria, y sí, yo he manejado registros de 16 bist en los "nuevos" procesadores como el core duo y sin problema, claro, no utilizas toda la potencia de esos registros, pero si consideras que la mayoria de los datos no sobrepasan los 16 bits, no hay problema, el problema es que trabajes con procesadores con registros más pequeños. Y para aquellos que no le encuentran uso al assembler ¿Con qué crees que se manejan los periféricos?

                  • Cerrado

                    No se si te diste cuenta, pero respondes a un post del 2008 y…

                    No se si te diste cuenta, pero respondes a un post del 2008 y a un usuario al que no le llegará aviso alguno.

                    Cierro por reflote. :)