Når nu man kun har en stackstørrelse på 8, OG man gerne vil anvende subrutiner BÅDE i hovedprogrammet OG i interruptrutinerne er konklusionen så, at man IKKE anvender call/return ?
Hvis NEJ: Hvordan F..... holder man så styr på stackens størrelse ? Findes der så en smart måde at gemme stacken på ved et interrupt ? Hvad gør man ellers ?
Hvis JA: Det bliver da noget værre rodet kode ! Hvad gør man ellers ?
"HKJ" skrev i en meddelelse news:41ac89f2$0$174$ snipped-for-privacy@dtext01.news.tele.dk...
Jeg har nu nøje kontrolleret programmet, og der anvendes max 3 niveauer i hovedprogram og max 2 niveauer i interruptet.
Og vil så verificere dette med følgende:
1) sætte interruptet hhv. hovedprogrammet ud af drift
2) køre programmet 'et stykke tid' - længe nok til alt har været kørt
3) stoppe
4) se hvor mange røde adresser, der er i stack'en
Er det rigtigt opfattet, at disse røde tal viser det maximale antal niveauer, der er 'brugt' ?
HVIS dette er rigtigt - er der noget galt i interruptet, idet dette viser 4 "røde" - og vel dermed 4 niveauer !!! (er det noget med interrupt'et bliver interrupt'et ?) - Der BURDE dog stadig være plads i stack'en.
Sættes hovedprogram og interrupt i drift samtidig får jeg alligevel stackoverflow.
Hvad er det typisk begyndere laver galt her - nogen ideer ?
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.