Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
La procedura mettila alla fine (dopo l'ultima chiamata ad int 21h)
P.S. Non srivere in maiuscolo ...
scusami...scrivevo in maiuscolo non per urlare ma per evidenziare di piu il messaggio dalla parte di programma.... comunque è giusto cosi? e il confronto del flag segno lo faccio dentro alla procedura?
.model small
.stack
.data
; <<inserire qui le dichiarazioni delle variabili>>
vett db 1,2,3,4,5,6,-9,-5,-1,-2
.code
inizio:
mov ax, @data
mov ds, ax
mov di,0
analisi:
call programma
inc di
jmp analisi
mov dx,bp
mov al,00h
mov ah,4ch
int 21h
programma proc near
cmp al,vett[di]
push bp
mov bp,sp
mov bx,[bp+4] ;|indirizzo di partenza
mov cx,bp
mov ax,[bp+6] ;|indirizzo
add al,bl
mov ah,0
mov [bp+8],ax
pop bp
Postato originariamente da enlallaca: scusami...scrivevo in maiuscolo non per urlare ma per evidenziare di piu il messaggio dalla parte di programma....
Per questo si usa il tasto Code
Testo quotato
comunque è giusto cosi? e il confronto del flag segno lo faccio dentro alla procedura?
No che non è giusto.
La riga
jmp analisi
non farà mai terminare il programma. Lo hai notato?
E cosa farebbe il codice dentro la subroutine? Non c'è il test e non è quello che faceva il codice di prima ... perchè tutta questa confusione?
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
Postato originariamente da enlallaca: scusami...scrivevo in maiuscolo non per urlare ma per evidenziare di piu il messaggio dalla parte di programma....
Per questo si usa il tasto Code
Testo quotato
comunque è giusto cosi? e il confronto del flag segno lo faccio dentro alla procedura?
No che non è giusto.
La riga
jmp analisi
non farà mai terminare il programma. Lo hai notato?
E cosa farebbe il codice dentro la subroutine? Non c'è il test e non è quello che faceva il codice di prima ... perchè tutta questa confusione?
perchè non capisco come funzione una procedura facendo passare i valori di un vettore... ho il libro sotto mano ma non c'è scritto nulla che mi faccia capire qualcosa
Non devi far passare nulla dato che il vettore è "globale"
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
non capisco piu niente...ho il cervello fuso ormai...ma devo farcela perchè domani ho compito su una cosa molto simile...dove sbaglio adesso?
call programma
mov si,0
mov dl,cont
add dl,30h
mov ah,02h
int 21h
mov dx,bp
mov al,00h
mov ah,4ch
int 21h
programma proc near
start:
mov al,vett[si]
inc si
test al,10000000b
jz conta
avanti:
push bp
mov bp,sp
mov bx,[bp+4]
mov cx,bp
mov ax,[bp+6]
add al,bl
mov ah,0
mov [bp+8],ax
pop bp
Non puoi chiamare prima la proc e poi azzerare si che verrà usato nella proc.
si azzeralo nella proc.
E poi continui ad usare bp quando non hai nessun parametro in ingresso!
Parti da questo
Codice sorgente - presumibilmente Altri Linguaggi
.model small
.stack
.data
vett db 1,2,3,4,5,6,-9,-5,-1,2
.code
inizio:
mov ax, @data
mov ds, ax
call analisi
add dl,30h
mov ah,02h
int 21h
mov al,00h
mov ah,4ch
int 21h
analisi proc near
mov dl,0
mov si,0
nxt:
mov al,vett[si]
inc si
test al,10000000b
jnz noneg
inc dl
noneg:
cmp si,10
jne nxt
ret
endp
end inizio
Ultima modifica effettuata da nessuno il 23/05/2010 alle 19:18
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.