Odpowiedz 
 
Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
AVR STUDIO - ASM
JaHo Offline
Nowicjusz
*

Liczba postów: 35
Dołączył: 24-06-2011
Post: #17
RE: AVR STUDIO - ASM
(Poniżej, wszystkie linki będą do angielskojęzycznych wersji tekstów jako że nie znam równie dobrych polskich.)
Wydaje mi się że celowe jest rozróżnienie abstrakcyjnej struktury danych zwanej "stosem" (stack) od jej pewnej szczególnej implementacji hardware'owej zwanej "call stack" / "machine stack" (stos maszynowy).
To co opisuje SP5FCS powyżej dotyczy właśnie tego "szczególnego przypadku". Zdecydowanie nie zgodzę się jednak ze stwierdzeniem:
"W językach wysokopoziomowych występuje dodatkowo stos danych wykorzystywany do przekazywania parametrów do wywoływanych funkcji. Oba stosy są rozłączne, mają odrębne wskaźniki i pracują niezależnie od siebie."
Wręcz przeciwnie, w wysokopoziomowych językach kompilowanych to właśnie "call stack" / "machine stack" (stos maszynowy) jest używany do tego wszystkiego. Co więcej, istnieją specjalne reguły zwane "calling conventions" które prezycyjnie opisują jak "należy" go używać i czego się można spodziewać od kompilatorów (np. kiedy miesza się kawałki kodu napisane w róźnych językach, w tym napisane w asemblerze).
Kiedy zachodzi potrzeba, programista może zaimplementować swoje własne stosy programowe ("software stacks") na swoje własne potrzeby (całkowicie niezależne od hardware'owego "call stack" / "machine stack" (stosu maszynowego), umieszczane w jakoś zaalokowanych kawałkach pamięci RAM) ... przykładowe implementacje znaleźć można na samej stronie z opisem abstrakcyjnej struktury danych zwanej "stosem" (stack).
Takimi "programowymi stosami" posługują się całe klasy języków interpretowanych, a niektóre (np. PostScript, Forth, kalkulatory z Reverse Polish notation) są wręcz na nich zbudowane.
11-04-2012 22:09
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
Odpowiedz 


Wiadomości w tym wątku
AVR STUDIO - ASM - SQ6ADE - 14-10-2010, 0:06
RE: AVR STUDIO - ASM - SP5FCS - 14-10-2010, 22:39
RE: AVR STUDIO - ASM - SQ6ADE - 15-10-2010, 21:04
RE: AVR STUDIO - ASM - SQ6ADE - 28-10-2010, 21:55
RE: AVR STUDIO - ASM - SQ6OXK - 28-10-2010, 23:53
RE: AVR STUDIO - ASM - SP9FKP - 14-11-2010, 14:36
RE: AVR STUDIO - ASM - SP9FKP - 02-12-2010, 8:47
RE: AVR STUDIO - ASM - SQ6ADE - 02-12-2010, 14:08
RE: AVR STUDIO - ASM - SP4EJT - 10-04-2012, 15:11
RE: AVR STUDIO - ASM - SP5FCS - 10-04-2012, 22:22
RE: AVR STUDIO - ASM - JaHo - 10-04-2012, 16:52
RE: AVR STUDIO - ASM - SP4EJT - 10-04-2012, 19:05
RE: AVR STUDIO - ASM - SQ6ADE - 10-04-2012, 19:10
RE: AVR STUDIO - ASM - SP4EJT - 10-04-2012, 19:31
RE: AVR STUDIO - ASM - SQ6ADE - 10-04-2012, 20:48
RE: AVR STUDIO - ASM - SQ6ADE - 10-04-2012, 22:25
RE: AVR STUDIO - ASM - JaHo - 11-04-2012 22:09
RE: AVR STUDIO - ASM - SP5FCS - 11-04-2012, 23:02
RE: AVR STUDIO - ASM - JaHo - 12-04-2012, 10:29
RE: AVR STUDIO - ASM - SP5FCS - 12-04-2012, 12:44
RE: AVR STUDIO - ASM - JaHo - 12-04-2012, 16:03

Skocz do:


Użytkownicy przeglądający ten wątek: 3 gości