![]() |
Show 150 posts per page |
.dsy:it. (http://www.dsy.it/forum/)
- Sistemi operativi I (http://www.dsy.it/forum/forumdisplay.php?forumid=269)
-- Materiale di approfondimento (http://www.dsy.it/forum/showthread.php?threadid=29961)
Materiale di approfondimento
Sul Wiki del corso serale (http://homes.dico.unimi.it/sisop/ e poi scegliere la voce WIKI) ho inserito un approfondimento riguardante la lezione del 05/03/2007.
Viene analizzato in maniera specifica i due sorgenti asm.
Spero che questo approfondimento sia gradito da tutti coloro che seguono il corso (sia serale che diurno). Ditemi pure cosa ne pensate
Ciao
Morganhk
ottimo! gradito eccome 
__________________
www.welld.ch
Sviluppo software tra Italia e Svizzera
forse però è meglio spostarlo qui: http://sl-lab.it/dokuwiki/doku.php?id=sistop:lab piuttosto che in home
o in una sotto pagina apposita ![]()
ciao
" Ed è proprio il registro AL che viene verificato per vedere se il valore contenuto è uguale alla lettera m, alla lettera b,al tasto invio (codice ASCII 13). Se non è uguale a nessuno di questi viene eseguita la ret che riporta il flusso del programma all’istruzione successiva a call waitenter. "
A me risulta invece che se non è uguale a nessuno di questi si esegue il salto a "waitenter:" e quindi si ripete la procedura..
----------------------------------------
waitenter: mov si, cont
call message
mov ah, 0
int 0x16 ; Wait for keypress
cmp al, 'm'
jz egg ; se il tasto è m salta a egg
cmp al, 'b'
jz basic ; se il tasto è b salta a basic
cmp al, 13
jnz waitenter ; se il tasto non è invio(e quindi nessuno tra m, b, invio) salta a waitenter
ret ; ret viene eseguita se il tasto è invio
Originally posted by Kurt84
" Ed è proprio il registro AL che viene verificato per vedere se il valore contenuto è uguale alla lettera m, alla lettera b,al tasto invio (codice ASCII 13). Se non è uguale a nessuno di questi viene eseguita la ret che riporta il flusso del programma all’istruzione successiva a call waitenter. "
A me risulta invece che se non è uguale a nessuno di questi si esegue il salto a "waitenter:" e quindi si ripete la procedura..
----------------------------------------
waitenter: mov si, cont
call message
mov ah, 0
int 0x16 ; Wait for keypress
cmp al, 'm'
jz egg ; se il tasto è m salta a egg
cmp al, 'b'
jz basic ; se il tasto è b salta a basic
cmp al, 13
jnz waitenter ; se il tasto non è invio(e quindi nessuno tra m, b, invio) salta a waitenter
ret ; ret viene eseguita se il tasto è invio
grazie a te per il materiale!
Io non ero presente a quella lezione, volevo sapere se questo codice è stato spiegato nei dettagli e dobbiamo conoscerlo o è stato illustrato solo in maniera "informale", a titolo di esempio.
Io sn riuscito a capirlo ma cercando un po su internet e guardando il tuo materiale, le slide sn abbastanza approssimative e non credo che in una lezione si possa implementare del codice così senza neanche un ripasso dei comandi principali ecc..
scusate, ma dove sono le slide?
si possono scaricare da qualche parte?
thanks!
http://sl-lab.it/dokuwiki/doku.php?id=sistop:home
grazie 
| All times are GMT. The time now is 04:45. | Show all 9 posts from this thread on one page |
Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.