Está en la página 1de 13

InstitutoTecnolgicoSuperiordelosRos

Balancan,Tabasco.

Nombredelalumno(a):HildaVirginiaLpezGutirrez

Carrera:Ing.EnSistemasComputacionales

Asignatura:SistemasProgramables

Grado:7semestre

Grupo:A

Catedrtico:Ing.LuisAlbertodelaCruzDaz

NDICE
Introduccin...........................................................................3
4Programacindemicroscontroladores...........................................4
4.1Modelodeprogramacin.................................4
4.2EstructuradelosregistrosdelCPU.....................................5
4.3Modosdedireccionamiento.................................6
4.4Conjuntodeinstrucciones....................................8
4.5Lenguajesensambladores...................................10

INTRODUCCIN
En el presente trabajo de investigacin hablaremos de la programacin de un micro
controlador,tambincomoUnmodelopermiteabstraerlascaractersticasfundamentalesde
laaplicacinydarunacaracterizacindelamismasuficientementedetalladacomopara
poder obtener, utilizando algn lenguaje informtico, el cdigo que cumpla con los
requisitosyespecificacionesdepartida.

4Programacindemicrocontrolador.
Laopcindeprogramarencsedebealhechodequelosmicroscontroladoressedisean
conunrepertoriodeinstruccionesoptimizadoparasuprogramacinenc.
Sehandesarrolladotodotipodelenguajesparalosmicroscontroladores,perolosms
usadossonelEnsamblador,elBASICyelC.
LoslenguajesdealtonivelcomoelBASICyelCsonmsfcilesdecomprenderypor
tantodedisear.
http://sai.azc.uam.mx/material/sd/Unidad4/capitulo4.pdfv
https://sites.google.com/site/ulisesisael502/unidad4
4.1Modelodeprogramacin.
Laopcindeprogramarencsedebealhechodequelosmicroscontroladoressedisean
conunrepertoriodeinstruccionesoptimizadoparasuprogramacinenc.
Los lenguajes, bien sean de programacin, de marcado o de consulta, representan el
mascarndeproadelainformtica.Sinembargo,antesdeproporcionarlasecuenciade
frasesdeunlenguajequeconstituyeelcdigo,queafindecuentaseslaesenciadetoda
aplicacininformtica,cabepreguntarsesiesposible,onecesario,darunacaracterizacin
previadelastareasqueconducenalaconsecucindedichoobjetivo.
Unmodelopermiteabstraerlascaractersticasfundamentalesdelaaplicacinydaruna
caracterizacindelamismasuficientementedetalladacomoparapoderobtener,utilizando
algnlenguajeinformtico,elcdigoquecumplaconlosrequisitosyespecificacionesde
partida.
Unlenguajeinformticoseajustasiempreaundeterminadoparadigmadeprogramacin
por ejemplo, el paradigma imperativo, y a un determinado modelo por ejemplo, el
modelo de objetos. Un modelo de programacin provee un marco abstracto en el que
entender la sintaxis de los lenguajes concretos que siguen el modelo, y representa la
semnticadelmismo,ascomounafilosofadeusodedichasemntica.
Para proporcionar modelos de diseo que permitan caracterizar el desarrollo de
aplicacionesutilizandounlenguajedeprogramacinsenecesitaunlenguajedemodelado
que sea capaz de capturar la semntica del modelo al que se ajusta el lenguaje de
programacin.
Elproblemadedarunmodelodediseodeunaaplicacinhipermediaesquenohayuna
semnticafijaquemodelar(comoenelcasodeUMLyelmodelodeobjetos),nisiquiera

hay un consenso sobrelos elementos concretos que hayque modelar. Porejemplo, se


puedenmodelarenlacesunariosoenlacesnarios.
Haymodeloshipermediapropiamentedichos(porej.elModeloTrellis)quecaracterizana
una aplicacin de tal manera que incluso especifican cul va a ser su semntica de
navegacin(porej.elmodoenquelainformacinvaaservisitadaypresentadaalusuario
(Stotts, 1989)).Otros son modelos de referencia, con los que contrastar los modelos
hipermedia(porej.elmodeloDexter).
Finalmente,existenmetodologas(porej.OOHDM)cuyafinalidadesproporcionaruna
seriedediagramasqueguenlaconstruccindeunaaplicacinhipermedia.
https://es.scribd.com/doc/44443758/U4Microcontroladores
4.2EstructuradelosregistrosdelCPU
RegistrosdelaCPU

Parapoderhacerestascosas,laCPUnecesitaalmacenaralgunosdatostemporalmente.
Deberecordarlaposicindelaltimainstruccindeformaquesepadndeirabuscarla
siguiente. Necesita almacenar instrucciones y datos temporalmente mientras una
instruccinestsiendoejecutada.Enotraspalabras,laCPUnecesitaunapequeamemoria
interna.
EnlaestructurainternadelaCPUseindicanloscaminosdetransferenciadedatosyde
control lgico, que incluyen un elemento con el rtulo bus interno de la CPU. Este
elementoesnecesarioparatransferirdatosentrelosdiversosregistrosylaALU,yaque
staenrealidadslooperacondatosdelamemoriainternadelaCPU.DentrodelaCPU
hayunamemoriainternacompuestaporunconjuntoderegistros.LosregistrosdelaCPU
son:
Registrosvisiblesalusuario:Permitenalprogramadordelenguajedemquinao

ensambladorminimizarlasreferenciasamemoriaprincipaloptimizandoelusode
losregistros.
Registros decontrol: Sonutilizados porlaunidaddecontrolparacontrolarel

funcionamientodelaCPUyporprogramasprivilegiadosdelsistemaparacontrolar
laejecucindeprogramas.
Registrodeestado: Seutilizaparatomardecisionesenfuncindeoperaciones

realizadas.
Registropunteroapila.

Registrosvisiblesalusuario
Unregistrovisiblealusuarioesaqulquepuedeserreferenciadopormediodellenguaje
mquinaqueejecutalaCPU.PrcticamentetodoslosdiseoscontemporneosdeCPUs
estnprovistosdevariosregistrosvisiblesalusuario,enoposicinadisponerdeunnico
acumulador.
Podemosclasificarlosen:
UsoGeneral
Datos
Direcciones
CdigosdeCondicin
Losregistrosdeusogeneralpuedenserasignadosporelprogramadoradiversasfunciones.
Aveces,suusodentrodelrepertoriodeinstruccionesesparacontenereloperandopara
cualquiercdigodeoperacin.Estoproporcionaunautilizacinderegistrosdeautntico
usogeneral.
En algunos casos los registros de uso general pueden ser utilizados para funciones de
direccionamiento.Enotroscasoshayunaseparacinclaraoparcialentreregistrosdedatos
y registros de direcciones. Los registros de datos pueden ser usados nicamente para
contenerdatosynosepuedenemplearenelclculodeunadireccindeoperando.
El caso ms conocido es el puntero a pila. La cantidad de registros generales o
especializadosesunacuestindediseo.
http://www.clubensayos.com/Tecnolog
%C3%ADa/EstructuraDeLosRegistrosDel/1321037.html
4.3Modosdedireccionamiento
LaslocalidadesdelamemoriaRAMsepuedenaccesardirectamenteoindirectamente.
Direccionamientodirecto:
Elmododedireccionamientodirectoserealizapormediodedireccionesdenuevebits.La
direccindeloperandoseobtieneuniendolossietebitsdeunadireccindirectaindicadaen
elcdigodelainstruccin,conlosbitsRPOyRP1delregistroSTATUS,talcomose

muestraenlafigura.CualquieraccesoalosregistrosF(fileregisters)esunejemplode
direccionamientodirecto.UnfileregistersescualquierregistroSFRoGRP.
bsf

STATUS,RPO

;Seleccionaelbanco1.

movlw

OxFF

;CargaenWunOxFF.

Movwf

TRISA

; La direccin del registro


TRISA.
;estomadadelcdigodela
;Instruccinmovwf.

Direccionamientoindirecto:
Eldireccionamientoindirecto,adiferenciadeldirecto,notomaunadireccindelcdigode
unainstruccin,sinoquelaconstruyeconlaayudadelbitIRPdelregistroSTATUSydel
registroFSR.LalocalidaddireccionadaesaccesadavaelregistroINDFelcualcontiene,
enefecto,eldatodeladireccinindicadaporFSR.
Porejemplo,siunregistrodepropsitogeneral(GPR)enladireccin0Fhcontieneun
valorde20,alescribirunvalorde0FhenelregistroFSRyleerelregistroINDFse
obtendr el valor de 20, lo cual indica que se estar leyendo el GPR sin accesarlo
directamente(perosivaFSReINDF).
Unejemplodedireccionamientoindirectoeselsiguiente,dondeseenvaungrupodedatos
porcomunicacinserietrabajandoconbufferendices,borrandounapartedelamemoria
RAM(16localidades):

LOOP

Movlw

0x0C

;Establecedireccin
deinicio

Movwf

FSR

; FSR apunta a la
direccin0x0C.

ClrfINDFF

;INDF=0.

IncfFSR

;Direccin=
direccininicial+1.

BtfssFSR,4

;Estnlimpiastodas
laslocs?

GotoLOO

;Noregresaalciclo.

;Sicontinuaconel
programa.

4.4Conjuntodeinstrucciones
Unconjuntodeinstruccionesorepertoriodeinstrucciones,juegodeinstruccionesoISA
(delinglsInstructionSetArchitecture,ArquitecturadelConjuntodeInstrucciones)esuna
especificacinquedetallalasinstruccionesqueunaCPUdeunordenadorpuedeentender
yejecutar,oelconjuntodetodosloscomandosimplementadosporundiseoparticularde
una CPU. El trmino describe los aspectos del procesador generalmente visibles a un
programador, incluyendo los tipos de datos nativos, las instrucciones, los registros, la
arquitecturadememoriaylasinterrupciones,entreotrosaspectos.
Existen principalmente de 3 tipos: CISC (Complex Instruction Set Computer), RISC
(ReducedInstructionSetComputer)ySISC(SpecificInstructionSetComputer).
Laarquitecturadelconjuntodeinstrucciones(ISA)seempleaavecesparadistinguireste
conjuntodecaractersticasdelamicroarquitectura,quesonloselementosytcnicasquese
emplean para implementar el conjunto de instrucciones. Entre estos elementos se
encuentraslasmicroinstruccionesylossistemasdecach.
Ellenguajemquina
Ellenguajemquinaestconstruidoapartirdelosestadosdiscretosoinstrucciones.Enla
arquitecturadeprocesamiento,unainstruccindadapuedeespecificar:
Registros particulares para operaciones aritmticas, de direccionamiento o de
control.
Ubicacionesparticularesdememoria
Modosdedireccionamientoparainterpretaroperandos
Implementacindelconjuntodeinstrucciones
Cualquierconjuntodeinstruccionessepuedeimplementardevariasmaneras. Todaslas
manerasdeimplementarunconjuntodeinstruccionesdanelmismomodeloprogramado,y

todas pueden hacer funcionar los mismos ejecutables binarios. Las varias maneras de
implementarunconjuntodeinstruccionesdandiversascompensacionesentreelcoste,el
funcionamiento,elconsumodeenerga,eltamao,eletc.
HaytambinalgunosnuevosdiseosdeCPUquecompilanelconjuntodeinstruccina
unaRAMescribibleoFLASHdentrodelaCPU(talcomoelprocesadorRecursivyel
Imsys Cjip), o FPGA(computacin reconfigurable). Western Digital MCP1600 es un
ejemploantiguo,usandounaROMdedicada,separadadelmicrocdigo.
Los detalles de la implementacin tienen una influencia fuerte en las instrucciones
particulares seleccionadas para el conjunto de instruccin. Por ejemplo, muchas
implementacionesdelainstruccinpipelinepermitensolamenteunacargadememoria
(load) o almacn en memoria (store) por instruccin, llevando a cargaalmacena
arquitectura(RISC).
Diseodelconjuntodeinstrucciones
LadensidaddelcdigoEncomputadorasantiguas,lamemoriadelprogramaeracostosa,
asqueminimizareltamaodeunprogramaparaasegurarquevaacaberenlamemoria
limitadaeraamenudocentral.
Las computadoras conaltadensidaddelcdigotambintenanamenudoinstrucciones
complejasparalaentradadelprocedimiento,losretornosparametrizados,loslazosetc.
Sinembargo,"instruccionesCISC"combinansimplementeunaoperacinbsicadela
ALU,talcomo"add",conelaccesodeunoomsoperandosenmemoria(usandomodos
dedireccintalescomodirecto,indirecto,indexado).
Las computadoras mnimas del conjunto de instrucciones (MISC) son una forma de
mquina apilada, donde hay pocas instrucciones separadas (1664), para poder caber
instruccionesmltiplesenunasolapalabrademquina.
Los detalles de la implementacin tienen una influencia fuerte en las instrucciones
particulares seleccionadas para el conjunto de instruccin. Por ejemplo, muchas
implementacionesdelainstruccinpipelinepermitensolamenteunacargadememoria
(load) o almacn en memoria (store) por instruccin, llevando a cargaalmacena
arquitectura (RISC). Por otro ejemplo, algunas maneras de implementar la instruccin
pipelinellevaronaunaranuraderetardo.Lademandadeprocesamientodesealdigital
de alta velocidad ha empujado en el sentido contrario forzando la implementacin de
instruccindemaneraparticular.Porejemplo,pararealizarlosfiltrosdigitalesesbastante
insuficiente,lainstruccindelMACenunprocesadortpicodesealdigital(DSP)sedebe
implementarusandounaarquitecturadeHarvardquepuedatraerunainstruccinydos
palabrasdedatossimultneamente,yrequiereunsolociclo.

Las caractersticas que se pretende que tenga un conjunto de instrucciones son cuatro,
principalmente:
Completo:Quesepuedarealizarenuntiempofinitocualquiertareaejecutablecon
unordenador(computableodecididle).
Eficiente:Quepermitaaltavelocidaddeclculosinexigirunaelevadacomplejidad
en su UC y ALU y sin consumir excesivos recursos (memoria), es decir, debe
cumplirsutareaenuntiemporazonableminimizandoelusodelosrecursos.
Autos contenidos: Esto es, que contengan en s mismas toda la informacin
necesariaparaejecutarse.
Independientes:Quenodependandelaejecucindealgunaotrainstruccin.
4.5Lenguajesensambladores
El lenguajeAssembly (avecesmalllamado"Ensamblador"porsutraduccinliteralal
espaol)esuntipodelenguajedebajonivelutilizadoparaescribirprogramasinformticos,
y constituye la representacin ms directa del cdigo mquina especfico para cada
arquitecturadecomputadoraslegibleporunprogramador.
Fue usado principalmente en los inicios del desarrollo de software, cuando an no se
contabaconlospotenteslenguajesdealtonivel.Actualmenteseutilizaconfrecuenciaen
ambientes acadmicos y de investigacin, especialmente cuando se requiere la
manipulacindirectadehardware,sepretendenaltosrendimientosounusoderecursos
controladoyreducido.
Muchosdispositivos programables (comolosmicros controladores)auncuentanconel
lenguajeAssemblycomolanicamaneradesermanipulados.
Caractersticas:
ElcdigoescritoenlenguajeAssemblyposeeunaciertadificultaddeserentendido

directamenteporunserhumanoyaquesuestructuraseacercamsbienallenguaje
mquina,esdecir,lenguajedebajonivel.
EllenguajeAssemblyesdifcilmenteportable,esdecir,uncdigoescritoparaun

microprocesador,suelenecesitarsermodificado,muchasvecesensutotalidadpara
poderserusadoenotramquinadistinta,aunconelmismomicroprocesador.
Los programas hechos en lenguaje Assembly son generalmente ms rpidos y

consumen menos recursos del sistema (memoria RAM y ROM). Al programar

cuidadosamenteenlenguajeAssemblysepuedencrearprogramasqueseejecutan
msrpidamenteyocupanmenosespacioqueconlenguajesdealtonivel.
ConellenguajeAssemblysetieneuncontrolmuyprecisodelastareasrealizadas

porunmicroprocesadorporloquesepuedencrearsegmentosdecdigodifcilesde
programarenunlenguajedealtonivel.
Tambin se puede controlar el tiempo en que tarda una rutina en ejecutarse, e

impedirqueseinterrumpadurantesuejecucin.
https://es.scribd.com/doc/44443758/U4Microcontroladores

BIBLIOGRAFA

http://sai.azc.uam.mx/material/sd/Unidad4/capitulo4.pdfv
https://sites.google.com/site/ulisesisael502/unidad4

https://es.scribd.com/doc/44443758/U4Microcontroladores

http://www.clubensayos.com/Tecnolog
%C3%ADa/EstructuraDeLosRegistrosDel/1321037.html

https://es.scribd.com/doc/44443758/U4Microcontroladores

También podría gustarte