co powoduje błąd w kompilacji?

DM
  • Rejestracja:ponad 20 lat
  • Ostatnio:ponad 18 lat
  • Postów:176
0

zrobiłem sobie taki mały programik dla treningu:

Kopiuj
.model small
.code
start:
      mov     dl,     65
      mov     ah,     2
      int     33         ; 21h
      mov     ah,     9
      int     22         ; 16h
      xor     ah,     ah
      int     33         ; 21h
end start

i gdy go chcę zlinkować, to pojawia się błąd no stack( czy coś takiego). Co powoduje ten typ błędu?


programowanie to sztuka bardzo życiowa... Wciąż trzeba kombinować..
ADuch
  • Rejestracja:ponad 20 lat
  • Ostatnio:około 13 lat
0

Domyślam się że chcesz wygenerować plik typu EXE, i kompilator czepia się że nie ma stosu :)

Kopiuj
.model small
.stack 200h
.code
start:
mov dl, ;">65

mov ah, ;">2

int ;">33 ; 21h

mov ah, ;">9

int ;">22 ; 16h

xor ah, ah
int ;">33 ; 21h
end start

Tylko trochę zmodyfikowałem początek. Myślę że nie trzeba komentować?? </asm>


Nie ma ludzi zdrowych psychicznie, są tylko źle zbadani...
DM
  • Rejestracja:ponad 20 lat
  • Ostatnio:ponad 18 lat
  • Postów:176
0

więc się ciebie tylko zapytam czy mam rację mniemając, że

Kopiuj
.stack liczba

to przydział pamięci na stos? Jeśli tak, to w jakiej jesdnostce, bajtach?


programowanie to sztuka bardzo życiowa... Wciąż trzeba kombinować..
ADuch
  • Rejestracja:ponad 20 lat
  • Ostatnio:około 13 lat
0

Z tego co wiem tak :) Ja zawsze używam 200h(512bajtów) i z tego co widze inni też.


Nie ma ludzi zdrowych psychicznie, są tylko źle zbadani...
Dryobates
  • Rejestracja:ponad 22 lata
  • Ostatnio:prawie 6 lat
0

Dream Maker: widze, ze uczysz sie asm, wiec zebys nie nabieral zlych nawykow... nr przerwan przez konwencje pisze sie szesnastkowo... wiec zamiast pisac:
int 33 ; 21h
pisz raczej:
int 21h ; 33
To ulatwia innym programistom zrozumienie :)

P.S. w MS DOS pod 33h jest sterwonik myszki... tak, jakbys kiedys szukal ;)


Jest jeszcze jeden błąd :)
Unix is user friendly. It's just very particular about who it's friends are.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.