Download - ANALISIS,DISEÑO Y PROGRAMACION DE SISTEMAS
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
1/34
Autor: M.C. Norma Ramrez HernndezM.S.I Graciela Lara Lpez
M.A.S.I. Salomn Eduardo Ibarra ChvezRevisorTcnico: Ing. Valentn Martnez Lpez
Principio de funcionamiento del Software de Sistemas
ANLISIS,DISEO Y PROGRAMACIN
DE SISTEMAS
ANLISIS,DISEO Y PROGRAMACIN
DE SISTEMASPrincipio de funcionamiento del Software de Sistemas
Autor: M.C. Norma Ramrez HernndezM.S.I Graciela Lara Lpez
M.A.S.I. Salomn Eduardo Ibarra ChvezRevisorTcnico: Ing. Valentn Martnez Lpez
Principio de funcionamiento del Softwarede Sistemas
ANLISIS,DISEO Y PROGRAMACIN
DE SISTEMAS
ANLISIS,DISEO Y PROGRAMACIN
DE SISTEMASPrincipiodefuncionamientodelSoftwarede Sistemas
9 789707 648036
ISBN 970764803-1
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
2/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
3
CONTENIDO
1 INTRODUCCIN 7
1. ESTRUCTURADELACOMPUTADORA 11
1.1. HISTORIA 11
1.1.1. 3000ACBACOCHINA 11
1.1.2. SIGLOXVIIREGLADECLCULONAPIER,GUNTHER,PASCAL,LEIBNIZ 11
1.1.3. SIGLOXIXMAQUINADIFERENCIALBABBAGE,BYRON,JACQUARD(TARJETAS
PERFORADAS)
12
1.1.4. 1944MARKIAIKEN 13
1.1.5. 1944ENIACECKERT,MAUCHLY 14
1.1.6. 1946EDVACJOHNVONNEUMANN 14
1.2. GENERACIONES 16
1.2.1. GENERACIN0(19421945) 16
1.2.2. PRIMERAGENERACIN(19511958) 16
1.2.3. SEGUNDAGENERACIN(19591954) 17
1.2.4. TERCERAGENERACIN(19641971) 17
1.2.5. CUARTAGENERACIN(19721984) 18
1.3.ARQUITECTURADELACOMPUTADORA
20
1.3.1. ARQUITECTURADEJOHNVONNEUMANN 25
1.3.2. ARQUITECTURADEHARVARD 34
1.4. ESTRUCTURALGICADELPROCESADOR 37
1.4.1. LENGUAJEMQUINA 39
1.4.2. SISTEMASDENUMERACIN 41
1.5. CONJUNTODEREGISTROSYMODELODEPROGRAMACIN 45
1.5.1. CONCEPTOSDEMODELODEPROGRAMACIN 45
1.5.2. DIRECCIONAMIENTOSSIMPLES.(INHERENTE,INMEDIATO,DIRECTOYEXTENDIDO) 51
1.5.3. DIRECCIONAMIENTORELATIVODE8BITS 53
1.5.4.DIRECCIONAMIENTORELATIVODE16BITS.
55
1.5.5. DIRECCIONAMIENTOINDEXADO. 56
1.5.6. OTROSDIRECCIONAMIENTOS. 58
1.5.6.1. RELATIVODE9 58
1.5.6.2. MLTIPLES 59
1.5.6.3. MSCARA 59
1.6. EJERCICIOSDEFINDECAPITULO 61
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
3/34
nrh
______________________________________________________________________________ Introduccin/ Historia4
2. ENSAMBLADORES 67
2.1. RELACINARQUITECTURADEMQUINASYENSAMBLADOR 67
2.1.1. CARACTERSTICAS DEPENDIENTESDELAMAQUINA. 74
2.1.2. CARACTERSTICAS INDEPENDIENTESDELAMAQUINA. 75
2.2.MODALIDADESDEENSAMBLADO
81
2.3. TCNICASDEENSAMBLADO 87
2.3.1. ENSAMBLADOR DEUNPASO. 88
2.3.2. ENSAMBLADORDEDOSOMSPASOS. 89
2.3.2.1. PRIMERPASO(TABSIM:TABLADESMBOLOS) 89
2.3.2.2. SEGUNDOPASO(S19) 91
2.4. GESTINDEMEMORIAENELENSAMBLADOR 93
2.5. DISEOYPROGRAMACIN DELENSAMBLADORDEDOSPASOS 101
2.5.1. ALGORITMODEPROGRAMACIN 103
2.5.2. ALGORITMOSYPSEUDOCDIGOSEJEMPLOS 108
2.5.3. FORMATODEARCHIVOOBJETO. 120
2.6. EJEMPLOS 121
2.7. FUNCIONAMIENTODELENSAMBLADOR 127
2.8. EJERCICIOSDEFINDECAPITULO 129
3. CARGADOR LIGADOR 137
3.1. CLASESDECARGADOR 137
3.1.1. LIGADODINMICO 142
3.1.2.EJEMPLODECARGADORCYBER
144
3.1.3. EJEMPLODEEDITORDELIGADO370 145
3.1.4. EJEMPLODEEDITORDELIGADOVAX 145
3.2. RELACINCARGADOR SISTEMAOPERATIVO 147
3.2.1. SISTEMASOPERATIVOS 150
3.3. FUNCIONESDELEDITORDEENLACE 151
3.4. PROBLEMADELIGASDEOBJETOSYMTODOSDESOLUCIN 154
3.5. DISEOYPROGRAMACIN DEUNCARGADOR 159
3.5.1. CARGADORABSOLUTO(EJEMPLO) 159
3.5.2. CARGADORRELOCALIZABLE(EJEMPLO) 160
3.6.EJERCICIOSDEFINDECAPITULO
164
4 MACROPROCESADORES 171
4.1. IMPORTANCIATERICADEMACROEXPRESIONESYUSOSDEUNMACROPROCESADOR 176
4.1.1. CONCEPTOSCLAVE 179
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
4/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
5
4.2. MACROPROCESADORESCONARGUMENTOSYMACROPROCESADORESRECURSIVOS 181
4.3. INCORPORACINDELPROCESADORDEMACROSALENSAMBLADOR 182
4.3.1. EJEMPLOS 183
4.4. EJERCICIOSDEFINDECAPITULO 185
5.ANEXOS
189
5.1. CODIGOASCII 189
5.2. SECCIONESDELMANUALDEREFERENCIADELHC12 190
5.2.1. MODELODEPROGRAMACION 190
5.2.2. MODOSDEDIRECCIONAMIENTODELHC12 191
5.2.3. TABLADEOPERACIONESINDEXADAS 192
5.2.4. HOJADEDATOSDEINSTRUCCIN 193
5.2.5. INSTRUCCINABREVIADA 193
5.3. TABLAINDICE 194
5.4. TABLADEILUSTRACIONES 196
6. REFERENCIAS 197
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
5/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
7
1 Introduccin
ELOBJETIVOGENERAL DE ESTE TEXTO ES COMPRENDER, EN UN NIVEL OPERATIVO, LOS
PRINCIPIOS
DE
FUNCIONAMIENTO
DE
LAS
COMPUTADORAS
BASADAS
EN
EL
MODELO
DE
VON
NEWMANN Y ARQUITECTURAS DE HARVARD. ENTENDER Y MANEJAR LAS DIVERSAS
MODALIDADESYMECANISMOSDEENSAMBLADO,CARGA,MACROPROCESAMIENTOYEJECUCIN
DEPROGRAMAS,LOSOBJETIVOSESPECFICOS SON EXPRESADOS EN CADA MDULO DEL
CONTENIDO
Antes de entrar de lleno al contenido propio de lamateria hay que aclarar que dicha
materia pertenece a la academia SOFTWARE DE SISTEMAS, pero que significan estos
conceptos?,empecemos.
La informtica es la ciencia que se
encargade laautomatizacindelmanejode
lainformacin.La informtica,porsurapidez
de crecimiento y expansin, ha venido
transformando rpidamente las sociedades
actuales. La computadora, a diferencia de
otrasherramientas
que
en
general
apoyan
el
esfuerzofsicodeloshumanos,fueinventada
parafacilitareltrabajointelectual.
El lenguaje de programacin es el
mediodecomunicacinentreelhombrey la
mquina. Sistema de smbolos y reglas que
permitelaconstruccindeprogramasconlos
quela
computadora
puede
operar
as
como
resolver problemas de manera eficaz. Estos
contienen un conjunto de instrucciones que
nospermitenrealizaroperacionesdeentrada
/ salida, calculo, manipulacin de textos,
lgica / comparacin y almacenamiento /
recuperacin. La programacin tiene como
objetivo el tratamiento de la informacin
correctamente, con loque seesperaqueun
programade el resultado correcto y nouno
errneo. As que cada aplicacin debe
funcionar segn lo esperado en trminosde
programacin,esta
pretende
que
sus
programasseantilesyeficientes
Un sistema es un conjunto de
componentesque interaccionanentresipara
lograr un objetivo comn. Las personas se
comunicanconellenguaje,queesunsistema
muy desarrollado formado por palabras y
smbolosque
tienen
significado
que
tienen
significadoparaelquehablayparaquieneslo
escuchan,lomismoesparalascomputadoras
lascualestienensistemasysecomunicanpor
mediodecomputadoras.
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
6/34
nrh
______________________________________________________________________________ Introduccin/ Historia8
La programacin es el proceso de
convertir las especificaciones a grandes
rasgos de los sistemas en instrucciones de
mquina que produzcan los resultados
deseados.
Por lo tanto la Programacin de
Sistemas se refiere a la creacin de
programas cuya finalidad es servir a otros
programas (software): ejemplos:
Ensambladores,Cargadores
yLigadores,
Compiladores,Intrpretes.
ElSoftwaredeSistemaseselsoftwarequecontrolaycoordina laoperacindelequipoqueexisteenun sistema computacional.El tipoms importantede Softwarede Sistema esel
Sistema Operativo. Este supervisa y controla todas las actividades de entrada/salida y
procesamientodeunsistemadecomputacin.Ademstodoelhardwareysoftwaresecontrola
pormediodeunsistemaoperativo.
LlamamosSoftwaredesistemasalconjuntodeprogramasqueseencargandecontrolarelfuncionamientodelosprogramasqueseejecutanydelagestininternadelosrecursosfsicosde
lacomputadora.Comoesnatural,elsistemaoperativoformapartedelsoftwaredesistema.
El Software es un conjunto de programas, documentos, procedimientos, y rutinas
asociadosconlaoperacindeunsistemadecmputo.Distinguindosedeloscomponentesfsicos
llamadoshardware.Elhardwareporsisolonopuedehacernada,puesesnecesarioqueexistael
software.
Elsoftwaredemanerageneral,podemosclasificarloen:
Software de sistema: enalgunas ocasiones tambin
denominadosoftwaredebase,
consiste en un software que
sirve para controlar e
interactuar con el sistema,
proporcionando control sobre
elhardware y dando soporte
aotrosprogramas.
Software de aplicacin: Elsoftware de hoja de clculo,
de diseo asistido por
computadoras (CAD), de
procesamiento de texto, de
manejo de Bases de Datos,
perteneceaestacategora.
Softwaredeusogeneral:esteofrece la estructura para un
gran nmero de aplicaciones
empresariales, cientficas y
personale; es decir, con
software y documentacin
orientadaalosusuarios
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
7/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
9
El trabajodeunprogramadorde sistemasesseleccionar,modificarymantenerelcomplejo
softwaredel sistema operativo. Por lo tanto, los programadoresde sistemas desempean una
funcindeapoyoalmantenerelambientedelsoftwaredelsistemaoperativoenelquetrabajan
losprogramadoresdeaplicacionesy losoperadoresde lascomputadoras.Tambinparticipanen
lasdecisiones
relativas
areducciones
o
ampliaciones
de
hardware
y/o
software.
Programacin
de
Sistemas Conceptos y Aplicaciones Se entiende por programacin de sistemas el conjunto de
programasnecesarioparaqueunacomputadoradeuna imagencoherenteymonolticaantesus
usuarios. Es un rea especializada dentro de las ciencias de la computacin. As,mediante la
programacindesistemas,nosolosemanejanlascomputadoraspormediodellenguajemaquina
(0y1)sinoporotrossistemasoperativos,sinlocualseramuydifcillainteraccinconlamaquina.
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
8/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
1. ESTRUCTURADELACOMPUTADORA
OBJETIVO: ENTENDER CON DETALLE LOS PROCESOS LOGICOS QUE SUCEDEN EN UNA
COMPUTADORAPARAQUEPUEDAEJECUTARUNPROGRAMAENLENGUAJEMAQUINADEUNA
PLATAFORMAQUE
YA
ESTA
DEFINIDA.
1.1.HistoriaPodemos definir a la computadora como un dispositivo electrnico capaz de recibir un
conjunto de instrucciones y ejecutarlas realizando clculos sobre los datos numricos, o
compilandoycorrelacionandootrostiposde informacinparaobtenerotroconjuntodedatoso
informacincomorespuesta.Lainformtica,porsurapidezdecrecimientoyexpansin,havenido
transformandorpidamentelassociedadesactuales.
1.1.1. 3000ACBACO - CHINADesarrollada por los chinos y utilizado por civilizaciones
griegasyromanas.Estedispositivoesmuysencillo,constadeun
marcorectangulardemaderaensartadodevarillasen lasquese
desplazaban bolas agujereadas de izquierda a derecha. Al
desplazar las cuentas (bolas) sobre las varillas, sus posiciones
representanvaloresalmacenados,yesmedianteestasposiciones
quese
representa
yalmacena
datos.
A
este
dispositivo
no
se
le
puede llamar computadora pues carece de un elemento
fundamental:programa. Ilustracin 1 Abaco
1.1.2. SigloXVIIREGLADECLCULONAPIER,GUNTHER,PASCAL,LEIBNIZEl creciente inters en Europa por la
astronoma y la navegacin, impuls a
simplificar los clculos, en ese entonces se
encontraba en uso "la regla del clculo",
calculadora basada en las invenciones de y
Napier,GuntherBissaker.
En 1614, el escocs Napier haba
anunciado el descubrimiento de los
logaritmospermitiendoque losresultadosde
complicadasmultiplicaciones se redujeran a
unprocesosimpledesuma;EdmundGunther
se encarga de enmarcar los logaritmos de
Napierenlneas,porsuparteBissakercoloca
las lneas de ambos sobre un pedazo de
madera,creandodeestamanera laregladel
clculo.
11
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
9/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
45
1.5.Conjuntoderegistrosymodelodeprogramacin
1.5.1. Conceptosdemodelodeprogramacin
La arquitectura de un
microprocesador o de cualquier procesador
decomputadora,sedefineporsuconjuntode
instrucciones y por elmodo en como stas
acceden a los datos en memoria para su
procesamiento.
Las instrucciones que obedece un
microprocesador estn codificadas como
dgitos binarios en su sistema de memoria.
Cada instruccin puede dividirse en uno o
mscamposdebits.Todas las instrucciones
tienen un campo de cdigo de operacin
(COP),que
define
el
propsito
de
la
instruccin.Adems, la instruccin completa
puede tener campos para operandos o
direcciones de memoria que especifican en
donde estn almacenados los datos. Lo
anteriordelimitaelconceptode"formatode
instruccin".
Lasinstrucciones
por
su
complejidad
pueden ser sencillas o compuestas. Los
microprocesadores que ejecutan
instrucciones sencillas son los llamados RISC
(Reduced Instruction Set Computer), como
por ejemplo el PIC16C84 deMicroChip o el
propio Sparc de SUN y el PPC604 de
Motorola. Por otra parte tenemos a los
microprocesadores con instrucciones
compuestas,los
CISC
(Complex
Instruction
Set Computer ), como el 6809 deMotorola,
SIC/XE y la serie 80X86 de Intel. Existen
algunosprocesadoreshbridosmuyeficientes
como los famososK6,K6II yK6IIIdeAMD.
Enestepuntosevedeacuerdoalmanualde
referencia del dispositivo a tratar. Para
nuestro curso elmicroprocesador a ver ser
elHC12.
Elmodelodeprogramacin
representalaestructurademanipulacinde
datosquesoportaelconjuntode
instrucciones,usualmentecompuestapor:
Unidadaritmticaylgica
Losregistros
de
trabajo
Elregistrodecondiciones
Lamemoriadedatos
http://www.microchip.com/http://www.microchip.com/http://www.microchip.com/http://www.microchip.com/http://www.microchip.com/http://www.amd.com/http://www.amd.com/http://www.amd.com/http://www.amd.com/http://www.amd.com/http://www.amd.com/http://www.amd.com/http://www.amd.com/http://www.amd.com/http://www.amd.com/http://www.amd.com/http://www.amd.com/http://www.amd.com/http://www.amd.com/http://www.amd.com/http://www.amd.com/http://www.microchip.com/ -
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
10/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
67
2. ENSAMBLADORES
Objetivo:ENTENDERYMANEJARLOSDIFERENTESESQUEMASDEENSAMBLADO.DISEARUN
ENSAMBLADORDE2PASOS.
2.1.RelacinArquitecturademquinasyensambladorLa evolucin de los sistemas comienza con un ENSAMBLADOR, se sigue con los
CARGADORESqueeselmodulo3paranuestrocasodeestudio,MACROPROCESADORESqueesel
modulo4,COMPILADORESySISTEMASOPERATIVOS.
Al inicio de los tiempos, el
programador tena que interpretar el
fundamentode
la
instruccin,
se
escriban
unaseriedeunosyceros(lenguajemaquina)
ysegrababanen lamemoriadeldispositivo,
entonces el dispositivo interpretaba como
estocomounainstruccin. Los
programadores encontraban esta tarea (leer
oescribiren lamemoria)muy lenta,asque
se introdujo el concepto de MNEMONICO,
que sustituyealconjuntodeUNOSyCEROS,
yal
conjunto
de
estos
mnemnicos
LENGUAJE
ENSAMBLADOR. La entrada de dicho
programaselellamaPROGRAMAFUENTEya
la salida PROGRAMA OBJETO (que es la
traduccindedichas instruccionesa lenguaje
maquina.
Por lo tanto, los ensambladores son
programasque
procesan
los
enunciados
del
programa origen en lenguaje ensamblador y
lostraducenenarchivosenlenguajemquina
quesonejecutadosporunmicroprocesadoro
unmicrocontrolador,estospermitenquelos
programasorigen seescriban y seeditenen
una computadora para generar un cdigo
ejecutableenotracomputadora.Elarchivoen
lenguajeobjetoejecutableresultantesecarga
(CARGADOR) y se ejecuta en el sistema
destino.
Lenguajeensambladoresel lenguaje
simblicoque
se
utiliza
para
codificar
los
programas origen que se procesan por el
ensamblador es llamado lenguaje
ensamblador.Este lenguajeesuna coleccin
de smbolos mnemnicos que representan:
operaciones (mnemnicos de instrucciones
para la mquina o de directrices para el
ensamblador), nombres simblicos,
operadoresysmbolosespeciales.Ellenguaje
ensamblador proporciona cdigos de
operacinde losmnemnicospara todas las
instruccionesde lamquinacontenidasen la
listadeinstrucciones.
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
11/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
69
.Ejemplos
Mnemnico C.o. Explicacin Ejemplosdeuso
NOP A7Nooperacin,incrementaelcontadorde
programaperonohacenadaSolounuso:nop
Cpy DependedesuusoComparael contenidodel registroYcon
unvalorespecificadoCPY04
ABA 1806Sumaelcontenidodelacumuladoracon
elb,elresultadoquedaenaSolounuso:aba
Rola 45Rota todos los bits del acumulador A
hacialaderechaSolounuso:rola
LDAA DependedesuusoCarga al acumulador un valor
especificado
Ldaa #01, ldaa $01,
etc
Un ensambladoresunprogramaquetraducelasinstruccionesalenguajemaquina,estos
deben serescritos conformea las especificaciones delensamblador.Unprograma consisteen
declaraciones (llamadas lnea cdigo) lnea por lnea. Su sintaxis es la siguiente: nombre del
campo,operaciondelcampo,operandodelcampo,sintaxisdelcampo,ejemplo:
ETIQUETA
MNEMONICO
Operando
(S)
COMENTARIO
(antepone
;)
LDAA #5 ;cargaalregistroA un5
Num1: JMP $10 ;saltoincondicionalaladireccin10
CampodeEtiquetas:estapuedeaparecer
por si sola en una lnea. El ensamblador
interpreta esto como "establece el valor
de la etiqueta igual al valor actual del
contadordeprograma(PC)".Elcampode
etiquetasaparece
como
el
primer
campo
dentrodeunenunciadoorigen.Elcampo
deetiquetaspuedeadoptarcualquierade
lassiguientesformas:
o Unasterisco (* )comoelprimer
carcterenelcampodeetiquetas
indicaqueelrestodelenunciado
origen es un comentario. Los
comentariosson ignoradosporel
ensambladoreimpresos
en
el
listado origen solamente como
informacindeprogramacin.
o Unespaciodecarcterenblanco
(TAB o espacio) como primer
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
12/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
75
direccionamientos, no todos son
aplicablesalosmicros.
MNEMONICO: las
instrucciones aunque en concepto
podran ser lasmismas, se enuncian
dediferentemanera,esdecir:
Funcin MNHC12 MNHC08
CargoalacumuladorA LDAA LDA
ComparaalacumuladorA CMPA CMP
..yas
podramos
seguir
enumerando
encontrando
las
caractersticas
que
hacen
exclusivo
al
micro.
2.1.2. CaractersticasIndependientesdelamaquina.
Lascaractersticas independientesde lamquinasonaquellasrelacionadasmsbiencon
eltipodeimplementacindelprogramaysusestructurasdedatosqueconlamquinaobjeto.
DIRECTIVAS: Tambinexisten las llamadasDIRECTIVASoPSEUDOINSTRUCCIONES, las
cualesespecificanaccionesauxiliaresquesellevanacaboporelensamblador.
PERIFERICOS: tododispositivoquesercontroladoporelmicro
ARCHIVOSAUXILIARES:*.LST,*.OBJ,*.S19,*.TABSIM,etc,dependiendodelalgoritmocon
quesetrabaje
.De
igual
manera
podramos
seguir
numerando
caractersticas
globales
para
los
micros
DIRECTIVAS:Lasdirectivasdeensambladorcontrolanaccionesauxiliaresquese realizan
durante el proceso de ensamblado, tales como reservar posiciones de memoria, inicializar
posicionesdememoriaaundeterminadovalor,definiretiquetas, indicarel inicioyel finaldel
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
13/34
nrh
______________________________________________________________________________ ENSAMBLADORES/ RelacinArquitecturademquinasyensamblador76
programa, o definir macros. Las directivas no son traducibles a cdigo mquina. Nota: las
directivasNOtienencdigomaquina.
ORG
Especificarelpuntoenelcualsecomienzaaensamblarunaseccindecdigo.Estadirectivadebeutilizarsesiempreantesdecomenzaradeclararcdigoozonasdememoria.
END
Especificael findeunarchivoencdigo fuenteensamblador.Estadirectivadeberserincluidaobligatoriamentealfinaldecadaarchivo.Cualquierexpresindeclaradadespusdeestadirectivaserignorada.
START Especificacindelcomienzodeunaseccindecdigoensambladoadireccin$0.Equ Sustituye un identificador por una cadena de texto previamente especificada en
cualquier parte del programa por el valor declarado. Esto permite una granversatilidada lahoradedeclararconstantesyposicionesdememoriadeespecialintersparaelprogramador.
contloc
LINEADE
PROGRAMA
COP
E1EQU$800ORG$4000
4000 JMPE1 060800END
DC.B
LasdirectivasDByDWpermitendeclararoreservarzonasdememoria,tantoparavaloresnumricoscomoparacadenasdetexto.Estasdirectivasposeenunaampliasintaxisquepermiteunagranflexibilidadalahoradedefinirreasdememoria. Loselementos definidos mediante las directivas DB y DW deben ir separados porcomas.Para reservarespacioen lamemoria sinespecificarun valor concreto, sepuedeemplearelsignodeinterrogacin.Laespecificacindecadenasdetextodebehacersemediantelaexpresinliteraldelacadenaentrecomillas.
DC.W
contloc LINEADEPROGRAMA COPORG$4000
4000
DC.B
00
4001 DC.W 00004003 DC.B15 0F4004 DC.B20,21,22 1415164007 DC.BH 484008 DC.WH 0048400A DC.BH,O,L,A 484F4C41
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
14/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
10
2.5.Diseoyprogramacindelensambladordedospasos
Los lenguajes son sistemas de
comunicacin.Un lenguajedeprogramacin
consisteen
todos
los
smbolos,
caracteres
y
reglas de uso que permiten a las personas
"comunicarse" con las computadoras.
Existen por lo menos varios cientos de
lenguajes y dialectos de programacin
diferentes. Algunos se crean para una
aplicacin especial,mientras que otros son
herramientas de uso general ms flexibles
que son apropiadas para muchos tipos de
aplicaciones. En todo caso los lenguajes de
programacindebentenerinstruccionesque
pertenecena las categorasya familiaresde
entrada/salida, clculo/manipulacin de
textos, lgica / comparacin y
almacenamiento/recuperacin.
Los lenguajes de programacin se
dividen en 4 principales paradigmas:
imperativo, funcional,orientadoaobjetos y
lgico.
Para la creacindeun programa es
necesarioseguircincopasos:
1. Diseo del algoritmo: se plantea el
problemaa resolverysepropone la
mejor solucin, creando diagramas
esquemticos utilizados para el
mejorplanteamientodelasolucin.
2. Codificacindelmismo: consisteen
escribir el programa en algn
lenguajede
programacin;
en
este
caso especfico en ensamblador,
tomando como base la solucin
propuestaenelpasoanterior.
3. Traduccin a lenguaje mquina, es
lacreacindelprogramaobjeto,esto
es, el programa escrito como una
secuenciadecerosyunosquepueda
serinterpretadoporelprocesador.
4. La prueba del programa: verificar
que el programa funcione sin
errores,osea,quehagaloquetiene
quehacer.
5. Depuracin La ltima etapa es la
eliminacin de las fallas detectadas
enel
programa
durante
la
fase
de
prueba . La correccin de una falla
normalmente requiere la repeticin
de los pasos comenzando desde el
primerooelsegundo.
Un algoritmo es una serie de pasos
lgicospararealizarunaaccin,programao
tareaya
que
es
el
primer
paso
para
realizar
un programa. Los algoritmos se pueden
expresarpor frmulas,diagramasde flujo,y
pseudocdigos. Los algoritmos tienen
ciertascaractersticasqueson:
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
15/34
nrh
______________________________________________________________________________ ENSAMBLADORES/Diseoyprogramacindelensambladordedospasos106
Ilustracin 23 Diagrama de flujo de un Ensamblador de 2 pasos PASO 1
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
16/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
10
Ilustracin 24 Diagrama de flujo de un Ensamblador de 2 pasos PASO 2
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
17/34
nrh
______________________________________________________________________________ ENSAMBLADORES/Diseoyprogramacindelensambladordedospasos120
2.5.3.FormatodeArchivoobjeto.UnarchivodesalidadeMotorolaesunarchivotipoASCII,Motorolamaneja3tipos:
S19 paradireccionamientode16bits
S2
paradireccionamiento
de
24
bits
S3 paradireccionamientode32bits
Estos archivos son una opcional tabla de informacin, con datos especficos para ser
cargadosenmemoria:
Moduloderegistro esteesopcional,contieneelnombredelmodulo.
Registrodesmbolos encasodesernecesariounsmbolorecalculable.
Registrodeencabezado S0
Registrodedato
o S1
(2bytes)
dato
o S2 (3bytes)dato
o S3 (4bytes)dato
Registrodetrmino
o S7 archivode32bitsdedireccin
o S8 archivode24bitsdedireccin
o S9 archivode16bitsdedireccin
Recordemosqueesteessolounformatoparaelcargadordelsimulador,parafacilitar la
vidadelprogramador, lonicoexactoysinvarianzadeberserelCOPresultante. Paranuestro
casodelHC12deMotorolaelformatodesalidaserunS19conlassiguientescaractersticas:
TIPODEDATO
NUMERODE
DATOSALO
LARGODELAFILA,
REPRESENTADO
POR1BYTE
DIRECCIONDEL
DATO(2BYTES)
DATO
(
eltamaoes
variable)
checksum
S0
S1
.S1
S9ORDENDECALCULOCOMOSIGUE
1 4 2 3 5
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
18/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
12
2. Mediante el algoritmo de 2 pasos, obtenga el formato de salida S19, del siguiente
programaenlenguajeensamblador:
1.asm
ORG$4000
JMPINI
INI JMP 4,Y
JMP4,Y
JMP40,Y
ORG$4012
JMP 40,Y
JMPA,Y
END
PASO1,SERESEVALOCALIDADESDEMEMORIA
YSEGENERALATABSIMENSUCASO
PASO 2: SEOBTIENE EL COP Y SEGENERA EL
FORMATODESALIDAS19
Eje1.asm
contloc Cop ORG$4000
4000 06hhll JMPINI
4003 05xb INI JMP 4,Y
4005
05xb
JMP
4,
Y
4007 05xbff JMP40,Y
400 ORG$4012
4012 05xbff JMP 40,Y
4015 05xb JMPA,Y
4017 END
Eje1.asm
contloc cop ORG$4000
4000 064003 JMPINI
4003 055C INI JMP 4,Y
4005
056C
JMP
4,
Y
4007 05E828 JMP40,Y
400A ORG$4012
4012 05E9D8 JMP 40,Y
4015 05EC JMPA,Y
4017 END
4000 Elcdigohhllsesustituyeporelporelvalordelavariablequeseencuentradeclarada
enlatabladesimbolos
4003 El cdigo xb se sustituye de acuerdo al modulo anterior (1.6.5 Modo de
direccionamientoindexado)porlaformula:rr0nnnnn,donde:
1=31(ascii,hexadecimal)ver
anexos
Retornodecarro=13H
TABSIM
INI=$4003
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
19/34
nrh
______________________________________________________________________________ ENSAMBLADORES/ EJEMPLOS124
r r 0 n n n n n
y 4
0 1 1 1 1 0 0
5 C
4005 El cdigo xb se sustituye de acuerdo al modulo anterior (1.6.5 Modo de
direccionamientoindexado)porlaformula:rr1pnnnn,dondep=posicindelsignopre=0,
mientras que el signo del registro (para cuestiones de clculo se toma para el
desplazamiento:
r r 1 p n n n n
y 4
0
1
0
1
1
0
0
6 C
4007 Deigualmaneraquelasanteriores:xbsesustituyepor111rr0zs,dondezeseltamaodel
operador,siendo0cuandosutamaoesde1byte,ysrepresentaelsignodeloperador,
siendos=0cuandoesteespositivo,porlotantoeloperador40eslavariableff
1 1 1 r r 0 z S
y 1BYTE POSITIVO
0 1 0 0
E 8
4012 Eselmismoformatoanterior,soloqueaqueloperadoresnegativoasiquenosresultara
s=1,porlotantoelCOPresultantepara 40,yseriaE9D8.
400D Ahorael1eroperadoreselregistrointernoA,porlotantolescomosigue:
1 1 1 r r 1 a a
y A
0 1 0 0
E C
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
20/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
12
FORMATODESALIDAS191.s19
S0 04 0000 31 CA
S1 0D 4000 0640003055C056C05E828 83
S1 05 4012 05E9D805EC
S9 03 4017 A5
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
21/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
13
3. CARGADOR - LIGADOR
Objetivo:ENTENDERELFUNCIONAMIENTO DELOSESQUEMASMASIMPORTANTESDELACARGA
YLIGADEMODULOSOBJETO.
3.1.ClasesdecargadorEninformtica,uncargadoreslapartede
un sistemaoperativoque es responsablede
cargarprogramasenmemoria.Elcargadores
usualmenteunapartedelncleodelsistema
operativoyescargadoal iniciarel sistemay
permaneceenmemoriahastaqueelsistema
es reiniciado o apagado. Algunos sistemas
operativos que tienen un ncleo paginable
pueden tener el cargador en una parte
paginablede lamemoria,entoncesavecesel
cargadorintercambiadememoria.
Los sistemas operativos que soportan
la carga de programas tienen cargadores.
Algunos sistemas operativos empotrados de
computadoras altamente especializadas
corren un nico programa y no existen
capacidades de carga de programas, por lo
tantonousancargadores.Ejemplosdeestos
sistemas embebidos se encuentran en
equipos
de
audio
para
automviles.
En
los
sistemas Unix, el cargador es el manejador
para la llamadadelsistemaexecve().Algunas
computadoras necesitan cargadores
relocalizables, los cuales ajustan direcciones
dememoria(punteros)enunejecutablepara
compensar las variaciones en la cual la
memoriadisponibledelaaplicacinempieza.
Lascomputadorasquenecesitandelos
cargadores relocalizables sonaquellosen los
cualeslos
punteros
son
direcciones
absolutas
en vez de compensaciones de direcciones
basedelprograma.Unejemplomuyconocido
estenlosmainframesIMBSistema360ysus
descendientes, incluyendo la serie de los
sistemasZ9.Losligadoresdinmicossonotro
tipo de cargador que carga y liga libreras
dinmicas(comodll's).
Muchoscargadorespermitenalusuario
especificar opciones que modificar el
procesamiento estndar descrito. Algunas
veces existe un archivo independiente de
entrada al cargador que contiene esas
proposiciones de control o esas mismas
proposiciones tambin pueden estar
intercaladasen
el
flujo
primario
de
entrada
entre los programas objeto. En ciertos
sistemas el programador puede incluso
introducir proposiciones de control del
cargador en el programa fuente, y el
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
22/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
15
3.5.DiseoyprogramacindeunCargadorAlgoritmodecargador
1. colocarunprogramaobjetoenlamemoria
2. Iniciarsu
ejecucin.
3. Si tenemos un cargador que no necesita realizar las funciones de ligado y
relocalizacin de programas, su operacin es simple pues todas las funciones se
realizanenunsolopaso.
4. Se revisa el registro de encabezamiento para comprobar si se ha presentado el
programacorrectoparalacarga(entrandoenlamemoriadisponible).
5. Amedida que lee cada registro de texto, el cdigo objeto que contiene pasa a
direccindelamemoriaindicada.
6. Cuandose
encuentra
el
registro
de
fin,
el
cargador
salta
ala
direccin
especificada
parainiciarlaejecucindelprogramacargado.
3.5.1. Cargadorabsoluto(ejemplo)Hay dos aspectos del programa
cargador que requieren una mayor
explicacin: la variable dir_byte y el campo
dir_ini.El
proceso
de
carga
absoluta
del
siguiente cargador es: La variable dir_byte
quesedeclaracomoapuntadorauncarcter
o sea es la direccin de un carcter. Es
razonable suponer que se almacena un
carcterusandounbytedememoria yque,
por consiguiente, la variable dir_byte
contieneladireccindeunbytedememoria.
Inicialmente,estavariableseasignaigualala
constante DIR_CARGA.En cada iteracin del
lazowhile,
ala
posicin
de
memoria
identificada por dir_byte se le asigna el
siguientebytedelarchivoejecutable;despus
seincrementaenunoelvalordedir_byte.De
esta manera, el contenido del archivo
ejecutablesecopiaaposicionesconsecutivas
de la memoria a partir de DIR_CARGA.
/***definirlaestructuradelregistroencabezado***/
structenc_ejec
{unsignedintdir_ini;
/*lasotraspartesdelencabezadodelarchivoejecutable*/
http://www.monografias.com/trabajos7/regi/regi.shtmlhttp://www.monografias.com/trabajos7/regi/regi.shtml -
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
23/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
17
4 MACROPROCESADORES
Objetivo:Entenderelfuncionamientodelasdiversasmodalidadesdelmacroprocesamiento.
Conelfindeevitaralprogramador la
tediosa repeticinde partes idnticas deun
programa, losensambladoresycompiladores
cuentan con macro procesadores que
permiten definir una abreviatura para
representar una parte de un programa y
utilizar esa abreviatura cuantas veces sea
necesario.Para
utilizar
una
macro,
primero
hay que declararla. En la declaracin se
estableceelnombrequeseledaralamacro
y el conjunto de instrucciones que
representar.
El programador escribir el nombre
delamacroencadaunodeloslugaresdonde
serequiera
la
aplicacin
de
las
instrucciones
por ella representadas. La declaracin se
realiza una sola vez, pero la utilizacin o
invocacina lamacro (macrollamada)puede
hacerse cuantas veces sea necesario. La
utilizacin demacros posibilita la reduccin
del tamao del cdigo fuente, aunque el
cdigoobjetotiendeasermayorquecuando
seutilizanfunciones.
El Macroensamblador es un
ensamblador modular, descendiente de los
ensambladores bsicos. Hacen todo lo que
puede hacer un ensamblador, y adems
proporcionan una serie de Directivas para
definir y ejecutar macro instrucciones (o
simplemente,Macros).Cuandoejecutamosa
una"macro",sta seexpandeal cuerpoque
hayamosdefinido.
Es tan comn el empleo de
macroinstrucciones se les considera como
una extensin de los lenguajes. De manera
similar se considera al procesador de
macroinstruccionesomacroprocesadorcomo
unaextensindelensambladorocompilador
utilizado.Elmacroprocesador seencarga,en
una primera pasada, de registrar todas las
declaracionesde
macros
yde
rastrear
el
programa fuente para detectar todas las
macrollamadas. En cada lugar donde
encuentre una macro llamada, el macro
procesador har la sustitucin por las
instrucciones correspondientes. A este
proceso de sustitucin se le denomina
expansin de lamacro. Elmacroprocesador
elaboratablasparaelmanejodelasmacros:
Tabladenombresdemacros: consisteen
losnombresdelasmacrosyunndiceque
le permite localizar la definicin de la
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
24/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
17
ReservadelocalidadesdememoriaconunaMacro
Reservade
localidades
de
memoria
con
una
Rutina
como sepuedeapreciar,el tamaodelCOP resultanteesmayorelde laMacroqueelde la
Rutina,asuvezlaMacrotienemenortiempodeejecucin.
M1 MACRO
1ERPASO
M1 MACRO
LDAA[1,X] LDAA[1,X]
LDAA
[2,X]
LDAA
[2,X]
LDAA[3,X] LDAA[3,X]
LDAA[4,X] LDAA[4,X]
ENDM ENDMORG$4000 ORG$4000
M1 4000 M1
ET1 JMPET1 4010 06hhll ET1 JMPET1
M1 4013 M1
END 4023 END
ORG$4000 ORG$4000
JSRM1 4000 16hhll JSRM1ET1 JMPET1 4003 06hhll ET1 JMPET1
JSRM1 4006 16hhll JSRM1
JMPFIN 4009 06hhll JMPFIN
M1 LDAA[1,X] 400C 05xbeeff M1 LDAA[1,X]
LDAA[2,X] 4010 05xbeeff LDAA[2,X]
LDAA[3,X] 4014 05xbeeff LDAA[3,X]
LDAA[4,X]
4018
05
xb
eeff
LDAA
[4,X]
RTS 401C 3D RTSFIN END 401D FIN END
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
25/34
nrh
______________________________________________________________________________ MACROPROCESADORES/ Importanciatericademacroexpresionesyusosdeunmacro
procesador176
4.1.Importanciatericademacro-expresionesyusosdeunmacro-procesador
Un macroinstruccin (abreviado
frecuentementecomomacro),noesmsque
una conveniencia notaciones para el
programador. Una macro representa un
grupo de proposiciones utilizadas
comnmenteenellenguajedeprogramacin
fuente, para el caso, ensamblador. El
procesador de macros reemplaza cada
macroinstruccin con el grupo
correspondiente de proposiciones del
lenguaje fuente, lo que se denomina
expansindemacros.Portodoloanterior,las
macroinstruccionespermitenalprogramador
escribir una versin abreviada de un
programa,
dejando
que
el
procesador
de
macros maneje los detalles internos. Las
funciones bsicas de un procesador de
macrosson:
Sustitucin de lneas de cdigo por una
referenciasimblica.
Calcular las direcciones efectivas de las
referencias.
Expansin de las referencias en un
archivointermedio.
Elprocesadordemacros,comopuede
verse,nointentaningnanlisisnitraduccin
a cdigo objeto del programa fuente, ms
bien parece que el procesador hace que
aumente el tamao de ste. Esto es un
elementoclaveparaelprogramador,puesel
uso indiscriminado de macros puede hacer
queeltamaodelcdigoobjetoseaenorme
ypocoprctico,alcontrariodelasllamadasa
subrutinas.
Claroque tambin sepagaunprecio
alto por el empleo de las llamadas, pues se
pierdetiempo importanteen lagestinde la
pila, donde usualmente se pasan los
parmetros. El macroprocesador requiere
tres estructuras de datos para su exitosa
operacin.
La tabla de nombres de macros
(TABNOM).
Latabladecdigodemacros(TABDEF).
Latabladeargumentos(TABARG).
Ah se guarda toda la informacin
pertinente a las macros, mientras el
ensamblador analiza la expansin y hace la
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
26/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
18
4.3.1. Ejemplos
1. MEDIANTEELALGORITMODE2PASOS,OBENGAELFORMATODESALIDADELSIGUIENTEPROGRAMA EN LENGUAJE ENSAMBLADOR, TOME EN CUENTA QUE EL RETORNO DECARROES13H.
M1 MACRO
1ERPASO
M1 MACRO TABSIMLDAA[1,X] LDAA[1,X] ET1=4010
LDAA[2,X] LDAA[2,X]
LDAA[3,X] LDAA[3,X] TABNOM
LDAA[4,X] LDAA[4,X] M1
ENDM ENDM
ORG$4000 ORG$4000 TABDEFM1 4000 M1 A6E30001
ET1 JMPET1 4010 06hhll ET1 JMPET1 A6E30002
M1 4013 M1 A6E30003
END 4023 END A6E30004
.Recuerdaelconceptodeexpansin?LaMACRO,seexpansionaysevereflejadaenelformato
desalidaS19.
PD.Heomitidoelnombredelarchivo,porcuestionesprcticaspero,definitivamenteesundato
requerido.
S0
S1 13 4000 A6E30001A6E30002A6E30003A6E30004 7ES1 13 4010 064010A6E30001A6E30002A6E30003A6 FF
S1 06 4020 E30004 B2
S9
03
4023
D9
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
27/34
nrh
______________________________________________________________________________ MACROPROCESADORES/ Incorporacindelprocesadordemacrosalensamblador184
2. MEDIANTEELALGORITMODE2PASOS,OBENGAELFORMATODESALIDADELSIGUIENTEPROGRAMA EN LENGUAJE ENSAMBLADOR, TOME EN CUENTA QUE EL RETORNO DECARROES13H.ESTEEJERCICIODENOTAELUSODELADIRECTIVALOCAL
M1 MACRO
1ERPASO
M1 MACRO TABSIM
E1 LOCAL E1 LOCAL E1=4000,400A,
JMPE1 JMPE1 E2=4008JMPE2 JMPE2 TABNOM
LDAA#1 LDAA#1 M1
ENDM ENDM
ORG$4000 ORG$4000 TABDEF
M1 4000 M1 06hhll
E2 LDAA#2 4008 86ii E2 LDAA#2 06hhll
M1 400A M1 86ii
END 4012 END.Recuerdaelconceptodeexpansin?LaMACRO,seexpansionaysevereflejadaenelformato
de
salida
S19.
PD.Heomitidoelnombredelarchivo,porcuestionesprcticaspero,definitivamenteesundato
requerido.
S0
S1 13 4000 0640000640088601860206400A064008 6BS1 05 4010 8601 23S9 03 4012 AA
NOTA:
La1erparte(0640000640088601)perteneceala1erllamadaalamacro(laqueseencuentraenlalocalidad4000,la2dallamadaalamacroesaquelcdigomostradoenletracursiva(06400A0640088601).
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
28/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
18
5.ANEXOS
5.1.CODIGOASCIIElcdigoASCII(acrnimo inglsdeAmericanStandardCodeforInformation Interchange
Cdigo Estadounidense Estndar para el Intercambio de Informacin), pronunciadogeneralmente [ski],esuncdigodecaracteresbasadoenelalfabeto latinotalcomoseusaeninglsmodernoyenotraslenguasoccidentales.Fuecreadoen1963porelComitEstadounidensede Estndares (ASA, conocido desde 1969 como el Instituto Estadounidense de EstndaresNacionales, o ANSI) como una refundicin o evolucin de los conjuntos de cdigos utilizadosentoncesentelegrafa.Mstarde,en1967,seincluyeronlasminsculas,yseredefinieronalgunoscdigosdecontrolparaformarelcdigoconocidocomoUSASCII.
El cdigo ASCII define una relacin entre caracteres especficos y secuencias de bits;
ademsde
reservar
unos
cuantos
cdigos
de
control
para
el
procesador
de
textos,
yno
define
ningnmecanismoparadescribir laestructurao laaparienciadeltextoenundocumento;estosasuntosestnespecificadosporotroslenguajescomoloslenguajesdeetiquetas.
ASCII Hex Smbolo
01234567
89101112131415
01234567
89ABCDEF
NULSOHSTXETXEOTENQACKBEL
BSTABLFVTFFCRSOSI
ASCII Hex Smbolo
1617181920212223
2425262728293031
1011121314151617
18191A1B1C1D1E1F
DLEDC1DC2DC3DC4NAKSYNETB
CANEMSUBESCFSGSRSUS
ASCII Hex Smbolo
3233343536373839
4041424344454647
2021222324252627
28292A2B2C2D2E2F
(espacio)!"#$%&'
()*+,-./
ASCII Hex Smbolo
4849505152535455
5657585960616263
3031323334353637
38393A3B3C3D3E3F
01234567
89:;?
ASCII Hex Smbolo
646566676869
70717273747576777879
404142434445
464748494A4B4C4D4E4F
@ABCDE
FGHIJKLMNO
ASCII Hex Smbolo
808182838485
86878889909192939495
505152535455
565758595A5B5C5D5E5F
PQRSTU
VWXYZ[\]^_
ASCII Hex Smbolo
96979899100101
102103104105106107108109110111
606162636465
666768696A6B6C6D6E6F
`abcde
fghijklmno
ASCII Hex Smbolo
112113114115116117
118119120121122123124125126127
707172737475
767778797A7B7C7D7E7F
pqrstu
vwxyz{|}~
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
29/34
nrh
______________________________________________________________________________ ANEXOS/ SECCIONESDELMANUALDEREFERENCIADELHC12190
Ilustracin 29 Tabla ASCII5.2.SECCIONESDELMANUALDEREFERENCIADELHC12
5.2.1. MODELODEPROGRAMACIONElmodelodeprogramacinde cualquierdispositivo loobtenemosdelmismoproveedor,quien
noslo
hace
saber
por
medio
de
su
manual
de
referencia.
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
30/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
19
5.2.2. MODOSDEDIRECCIONAMIENTODELHC12
Ilustracin 30 Tabla de modos de direccionamiento del HC12
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
31/34
nrh
______________________________________________________________________________ ANEXOS/ SECCIONESDELMANUALDEREFERENCIADELHC12
5.2.3. TABLADEOPERACIONESINDEXADAS
Ilustracin 31 Formulario indexados
192
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
32/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
19
5.2.4. HOJADEDATOSDEINSTRUCCIN
5.2.5.INSTRUCCINABREVIADA
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
33/34
nrh
______________________________________________________________________________ ANEXOS/ TABLADEILUSTRACIONES196
5.4.TABLADEILUSTRACIONESIlustracin1Abaco______________________________________________________________________11Ilustracin2MaquinadePascal____________________________________________________________12Ilustracin3Maquinadiferencial___________________________________________________________13Ilustracin4Tarjetasperforadas___________________________________________________________13Ilustracin5MARKI_____________________________________________________________________14Ilustracin6ENIAC______________________________________________________________________14Ilustracin7JOHNNVONNEUMANN _______________________________________________________15Ilustracin8EDVAC_____________________________________________________________________15Ilustracin9Abstraccindelacomputadora__________________________________________________20Ilustracin10DiagramaabloquesdeunCPUsimple___________________________________________27Ilustracin11Memoria __________________________________________________________________29Ilustracin12EsquemadeArquitecturaVonNeumann_________________________________________34Ilustracin13EsquemadelaArquitecturaHarvard____________________________________________35Ilustracin14ModosdedireccionamientoaplicablesalHC12____________________________________50Ilustracin15Formularioindexados________________________________________________________57Ilustracin16Registrodesegmento________________________________________________________82Ilustracin17Jerarquadememorias_______________________________________________________97Ilustracin18Asignacindedireccionesencompilacin ________________________________________97Ilustracin19Asignacindedireccionesencarga______________________________________________98Ilustracin20Asignacindedireccinenejecucin____________________________________________98Ilustracin21Espaciosdememorialgicosyfsicos____________________________________________99Ilustracin22Solapamientoenensamblador________________________________________________100Ilustracin23DiagramadeflujodeunEnsambladorde2pasosPASO1___________________________106Ilustracin24DiagramadeflujodeunEnsambladorde2pasosPASO2___________________________107Ilustracin25Ligador___________________________________________________________________151Ilustracin26Editordeligado____________________________________________________________152Ilustracin27Problemadeligadeobjetos__________________________________________________154Ilustracin28Cargadoyllamadadeunasubrutina(ligadodinmico)_____________________________157Ilustracin29TablaASCII________________________________________________________________190Ilustracin30TablademodosdedireccionamientodelHC12___________________________________191Ilustracin31Formularioindexados_______________________________________________________192
-
8/9/2019 ANALISIS,DISEO Y PROGRAMACION DE SISTEMAS
34/34
ANALISIS, DISEO Y PROGRAMACIN DE SISTEMAS
6.REFERENCIAS
Bibliografa
SYSTEMPROGRAMMING JOHNDONOVAN
CPU12REFERENCE
MANUAL
MOTOROLA.COM/SEMICONDUCTORS
COMPILADORES:Principios,tcnicasyherramientas
Aho,Sethi&Ullman,Ed.Addison,iberoamericana
MODERN COMPILER IMPLEMENTATION INCBasictechniques
Appel,AndrewW. Ed.Cambridge
TheIntelMicroprocessors8086/8088,80186/80188,80286,80386,80486,Pentium,andPentiumProProcessorArchitecture,Programming,andInter facing
BREY,BARRYB.6a.edicin,NewJersey,Merril,2002.
Microcomputersystem BYRD,JosephS.;Pettus,RobertO.NewJersey,PrenticeHall,1993
Introductionto
Embedded
Microcomputer
SystemsVALVANO,
Jonathan
W.
Motorola
6811/6812Simulations,USA,Thomson,2003
Manualestcnicosdemicrocomputadorescomerciales,HC11,PICs,HC08,etc
MicroprocesadoresavanzadosdeIntel BarryBrey, PrenticeHall
SoftwaredeSistema Beck,Leland,.AddisonWesley
DiseodeProgramacindeSistemas NormaRamrezHernndez 2008
www.nramirez.com
http://www.n-ramirez.com/http://www.n-ramirez.com/http://www.n-ramirez.com/http://www.n-ramirez.com/