Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de...
Transcript of Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de...
![Page 1: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/1.jpg)
Abril16,Lunes
![Page 2: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/2.jpg)
Agendaparaestaclase� RepasoAED:ImplementacionesdeStack� RepasoAED:OrganizacióndeMemoria� RepasoADC:RegistrosIP,BP,ySP� Intervalo� RevisióndeTrabajo#1� Sintaxis&Semánticadeforywhile
Prof. Esp. Ing. José María Sola 96
![Page 3: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/3.jpg)
ImplementacionesdeStack
![Page 4: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/4.jpg)
// Contigua struct Stack{ unsigned n{0}; std::array<int,MAX> a; }; // Enlazada struct Node{ int val; Node* next; }; struct Stack{ Node* top{nullptr}; };
RepresentacionesdeStack:Con5guayEnlazada
Prof. Esp. Ing. José María Sola 98
![Page 5: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/5.jpg)
OrganizacióndeMemoria
![Page 6: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/6.jpg)
OrganizacióndeMemoria
Prof. Esp. Ing. José María Sola 100
Texto (Código)
Sec
ción
din
ámic
a S
ecci
ón
está
tica
Bottom Stack
Top
Heap
Res
erva
di
nám
ica
Memoria vacía
Datos Estáticos
Res
erva
es
tátic
a
Dirección más alta
Dirección más baja: 0
![Page 7: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/7.jpg)
PiladeInvocaciones&RegistrosIP,BP,ySP
![Page 8: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/8.jpg)
� Registros� IP� BP� SP
� Operaciones� CALLf
� PUSHIP� JMPf
� RET� POPIP
� Stack� PUSHsrc
� Mem[--SP]=src� POPdst
� dst=Mem[SP++]� ADD� SUB
� CallStack� StackFrame
� BP-SP
CallStackyRegistros
Prof. Esp. Ing. José María Sola 102
![Page 9: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/9.jpg)
Prof. Esp. Ing. José María Sola 103
![Page 10: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/10.jpg)
Prof. Esp. Ing. José María Sola 104
![Page 11: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/11.jpg)
![Page 12: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/12.jpg)
ForversusWhile/* Una sentencia for equivalente a una sentencia while*/ while ( expresión ) sentencia for ( ; expresión ; ) sentencia /* "Una" sentencia while equivalente a una for */ for ( expresión1; expresión2 ; expresión3) sentencia expresión1; while ( expresión2 ) { sentencia expresión3; }
![Page 13: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/13.jpg)
SintaxisySemán5caSimpledeWhileydeFor� While
� Sintaxis� SentenciaWhile→while(Expresión)Sentencia� Sentencia→…� Expresión→…
� Semántica� while(Expresión1)Sentencia1
� LN
� For(C90)� Sintaxis
� SentenciaFor→for(Expresiónopt;Expresiónopt;Expresiónopt)Sentencia� Semántica
� for(Expresión1opt;Expresión2opt;Expresión3opt)Sentencia1� LN.
Prof. Esp. Ing. José María Sola 107
![Page 14: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/14.jpg)
SintaxisySemán5caSimpledeWhileydeFor� For(C90)
� Sintaxis� SentenciaFor→for(Expresiónopt;Expresiónopt;Expresiónopt)Sentencia
� Semántica� for(Expresión1opt;Expresión2opt;Expresión3opt)Sentencia1
� LN� For(C99)
� Sintaxis� SentenciaFor→for(Expresiónopt;Expresiónopt;Expresiónopt)Sentencia� SentenciaFor→for(Declaración1Expresiónopt;Expresiónopt)Sentencia
� Semántica� for(Expresión1opt;Expresión2opt;Expresión3opt)Sentencia1
� LN.� for(Declaración1Expresión1opt;Expresión2opt)Sentencia1
� LN.
Prof. Esp. Ing. José María Sola 108
![Page 15: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/15.jpg)
Términosdelaclase#DefinircadatérminoconlabibliograJa� RepasoAED:ImplementacionesdeStack
� ImplmentaciónContiguadeStack� ImplmentaciónEnlazadadeStack
� RepasoAED:OrganizacióndeMemoria� Reservaestática� Texto� Variablesestátcias� Reservadinámica� Stack� Heap
� RepasoADC:RegistrosIP,BP,ySP� IP� BP� SP� CALLf� RET� PUSHsrc� POPdst� ADD
� SUB� CallStack� StackFrame
� RevisióndeTrabajo#1� Sintaxis&Semánticadeforywhile
� Expresión� ForgeneralizaaWhile� WhileparticularizaaFor� ForversusWhile� EspecificacióndeSintaxis� Gramática� EspecificacióndeSemántica� SintaxisySemánticadeSentenciafor� SintaxisySemánticadeSentenciawhile� Declaración� ForC99
04
Prof. Esp. Ing. José María Sola 109
![Page 16: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/16.jpg)
Tareasparalapróximaclase1. CorregirTrabajo#11. Releerde[K&R1988]desde1.2Variablesy
ExpresionesAritméticashasta1.4ConstantesSimbólicasinclusive.
1. RepasarsobreAssemblerdesdehttps://josemariasola.wordpress.com/ssl/reference#assembler
Prof. Esp. Ing. José María Sola 110
![Page 17: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/17.jpg)
![Page 18: Abril 16, Lunes 2018... · 2020-05-21 · Agenda para esta clase Repaso AED: Implementaciones de Stack Repaso AED: Organización de Memoria Repaso ADC: Registros IP, BP, y SP Intervalo](https://reader034.fdocuments.co/reader034/viewer/2022050516/5fa02ce92c58ad5eab3c0b1a/html5/thumbnails/18.jpg)