Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione DJI Mini 5 Pro: il drone C0 ultra-leggero con sensore da 1 pollice
Recensione DJI Mini 5 Pro: il drone C0 ultra-leggero con sensore da 1 pollice
DJI Mini 5 Pro porta nella serie Mini il primo sensore CMOS da 1 pollice, unendo qualità d'immagine professionale alla portabilità estrema tipica di tutti i prodotti della famiglia. È un drone C0, quindi in un peso estremamente contenuto e che non richiede patentino, propone un gimbal rotabile a 225 gradi, rilevamento ostacoli anche notturno e autonomia fino a 36 minuti. Caratteristiche che rendono il nuovo drone un riferimento per creator e appassionati
ASUS Expertbook PM3: il notebook robusto per le aziende
ASUS Expertbook PM3: il notebook robusto per le aziende
Pensato per le necessità del pubblico d'azienda, ASUS Expertbook PM3 abbina uno chassis particolrmente robusto ad un pannello da 16 pollici di diagonale che avantaggia la produttività personale. Sotto la scocca troviamo un processore AMD Ryzen AI 7 350, che grazie alla certificazione Copilot+ PC permette di sfruttare al meglio l'accelerazione degli ambiti di intelligenza artificiale
Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo
Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo
Abbiamo provato per diversi giorni una new entry del mercato italiano, la Gowow Ori, una moto elettrica da off-road, omologata anche per la strada, che sfrutta una pendrive USB per cambiare radicalmente le sue prestazioni
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 12-09-2005, 18:23   #21
Bandit
Senior Member
 
L'Avatar di Bandit
 
Iscritto dal: Sep 2003
Messaggi: 9431
In seguito all'esecuzione del seguente programma assembly, quanto vale il registro D0?
ORG $8000
START MOVE.W A,D0
MOVEA.L #B,A0
ADD.W (A0)+,D0
JMP SYSA

A DC.W $10
B DC.W 8
SYSA EQU $1000
END START

cioè come faccio a calcolarmelo?
A vale 16


p.s se poniamo A DC.W 1, dopo l'esecuzione dell'istruzione MOVE.L #A,A0 il registro A0 conterrà, l'indirizzo di memoria corrispondente all'etichetta A; quando poniamo MOVEA.L #A,A0 , A0 cosa contiene?
__________________
1)P4 2.4-Asrock p4i65- Sapphire Hd3450 512mb agp- 2GB ddr400-Hd 80gb WD- Thermaltake Litepower 450W
2)Amd 3200-Msi K8n Neo4 Platinum - 2*512 MB pc3200-Asus N6600gt- HD WD 160GB-enermax noisetacker 370.

Ultima modifica di Bandit : 12-09-2005 alle 18:27.
Bandit è offline   Rispondi citando il messaggio o parte di esso
Old 13-09-2005, 11:35   #22
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da Bandit
In seguito all'esecuzione del seguente programma assembly, quanto vale il registro D0?
ORG $8000
START MOVE.W A,D0
MOVEA.L #B,A0
ADD.W (A0)+,D0
JMP SYSA

A DC.W $10
B DC.W 8
SYSA EQU $1000
END START
cioè come faccio a calcolarmelo?
A vale 16
Quindi d0 = 16 dopo la move. A0 punta a B, che vale 8. Quindi la add produce $10 + 8 = $18 = 24.
Quote:
p.s se poniamo A DC.W 1, dopo l'esecuzione dell'istruzione MOVE.L #A,A0 il registro A0 conterrà, l'indirizzo di memoria corrispondente all'etichetta A; quando poniamo MOVEA.L #A,A0 , A0 cosa contiene?
Sempre l'indirizzo di memoria di A.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 13-09-2005, 11:47   #23
Bandit
Senior Member
 
L'Avatar di Bandit
 
Iscritto dal: Sep 2003
Messaggi: 9431
Quote:
Originariamente inviato da Bandit

MOVEA.L #B,A0
A0 punta a B lo si capisce da questa istruzione,giusto?

quindi il jump Sysa non serve a nulla? possiamo anche non considerarlo?
__________________
1)P4 2.4-Asrock p4i65- Sapphire Hd3450 512mb agp- 2GB ddr400-Hd 80gb WD- Thermaltake Litepower 450W
2)Amd 3200-Msi K8n Neo4 Platinum - 2*512 MB pc3200-Asus N6600gt- HD WD 160GB-enermax noisetacker 370.
Bandit è offline   Rispondi citando il messaggio o parte di esso
Old 13-09-2005, 12:21   #24
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da Bandit
A0 punta a B lo si capisce da questa istruzione,giusto?
Sì, perché carichi in A0 il "valore" di B, cioé il suo indirizzo...
Quote:
quindi il jump Sysa non serve a nulla? possiamo anche non considerarlo?
Beh, non so cosa dovrebbe fare esattamente questo codice. Se SysA è l'indirizzo di una funzione del s.o. per far terminare un task, questo salto sicuramente ci vuole. Altrimenti potrebbe bastare una RTS o altro.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 13-09-2005, 12:24   #25
Bandit
Senior Member
 
L'Avatar di Bandit
 
Iscritto dal: Sep 2003
Messaggi: 9431
ok grazie ancora
__________________
1)P4 2.4-Asrock p4i65- Sapphire Hd3450 512mb agp- 2GB ddr400-Hd 80gb WD- Thermaltake Litepower 450W
2)Amd 3200-Msi K8n Neo4 Platinum - 2*512 MB pc3200-Asus N6600gt- HD WD 160GB-enermax noisetacker 370.
Bandit è offline   Rispondi citando il messaggio o parte di esso
Old 16-09-2005, 13:25   #26
Bandit
Senior Member
 
L'Avatar di Bandit
 
Iscritto dal: Sep 2003
Messaggi: 9431
il passaggio di questa istruzione nei flag N, V, C cosa comporta?

Move #$FFF0,Do
ADD #$F016,Do

il riporto (C) sicuramente,poi forse anche N visto che i bit + significativi sono alti e per V?


Oggi ho scoperto che la rappresentazione in Binary Code D....su 8 bit si fa così:
per esempio 32 3=0011 2=0010 ------>32=00110010
ma allora come si chiama la rappresentazione di 32 così: 01000000?

ciao
__________________
1)P4 2.4-Asrock p4i65- Sapphire Hd3450 512mb agp- 2GB ddr400-Hd 80gb WD- Thermaltake Litepower 450W
2)Amd 3200-Msi K8n Neo4 Platinum - 2*512 MB pc3200-Asus N6600gt- HD WD 160GB-enermax noisetacker 370.
Bandit è offline   Rispondi citando il messaggio o parte di esso
Old 16-09-2005, 13:34   #27
Bandit
Senior Member
 
L'Avatar di Bandit
 
Iscritto dal: Sep 2003
Messaggi: 9431
Ho un 'istruzione C++ pari a void (int VETT1,int VETT2,int riemp, int &min,int &mag)
gli offsett come si devono mettere, dopo aver inizializzato il frame pointer e salvato l'indirizzo di ritorno sullo stack?

VETT1 offset 8
VETT2 " 10
riemp " 12
min "
mag "

e poi?
__________________
1)P4 2.4-Asrock p4i65- Sapphire Hd3450 512mb agp- 2GB ddr400-Hd 80gb WD- Thermaltake Litepower 450W
2)Amd 3200-Msi K8n Neo4 Platinum - 2*512 MB pc3200-Asus N6600gt- HD WD 160GB-enermax noisetacker 370.
Bandit è offline   Rispondi citando il messaggio o parte di esso
Old 19-09-2005, 11:30   #28
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da Bandit
il passaggio di questa istruzione nei flag N, V, C cosa comporta?

Move #$FFF0,Do
ADD #$F016,Do

il riporto (C) sicuramente,poi forse anche N visto che i bit + significativi sono alti e per V?
Anche V dovrebbe essere settato, perché se ho visto bene, il valore risultante, considerandolo come signed, eccede il range delle word signed.
Quote:
Oggi ho scoperto che la rappresentazione in Binary Code D....su 8 bit si fa così:
per esempio 32 3=0011 2=0010 ------>32=00110010
ma allora come si chiama la rappresentazione di 32 così: 01000000?

ciao
Binaria.

La rappresentazione BCD serve ad altro, ma ormai è praticamente in disuso...
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 19-09-2005, 11:31   #29
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da Bandit
Ho un 'istruzione C++ pari a void (int VETT1,int VETT2,int riemp, int &min,int &mag)
gli offsett come si devono mettere, dopo aver inizializzato il frame pointer e salvato l'indirizzo di ritorno sullo stack?

VETT1 offset 8
VETT2 " 10
riemp " 12
min "
mag "

e poi?
Perché devi usare lo stack? Puoi mettere tutto nei registri: il 68000 ne ha ben 8 per i dati e 7 per gli indirizzi.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 19-09-2005, 13:33   #30
Bandit
Senior Member
 
L'Avatar di Bandit
 
Iscritto dal: Sep 2003
Messaggi: 9431
Quote:
Originariamente inviato da cdimauro
Perché devi usare lo stack? Puoi mettere tutto nei registri: il 68000 ne ha ben 8 per i dati e 7 per gli indirizzi.
e considerando lo stack?
__________________
1)P4 2.4-Asrock p4i65- Sapphire Hd3450 512mb agp- 2GB ddr400-Hd 80gb WD- Thermaltake Litepower 450W
2)Amd 3200-Msi K8n Neo4 Platinum - 2*512 MB pc3200-Asus N6600gt- HD WD 160GB-enermax noisetacker 370.
Bandit è offline   Rispondi citando il messaggio o parte di esso
Old 19-09-2005, 13:34   #31
Bandit
Senior Member
 
L'Avatar di Bandit
 
Iscritto dal: Sep 2003
Messaggi: 9431
Quote:
Originariamente inviato da cdimauro
Anche V dovrebbe essere settato, perché se ho visto bene, il valore risultante, considerandolo come signed, eccede il range delle word signed.

Binaria.

quindi 111?
se era unsigned?011?
__________________
1)P4 2.4-Asrock p4i65- Sapphire Hd3450 512mb agp- 2GB ddr400-Hd 80gb WD- Thermaltake Litepower 450W
2)Amd 3200-Msi K8n Neo4 Platinum - 2*512 MB pc3200-Asus N6600gt- HD WD 160GB-enermax noisetacker 370.
Bandit è offline   Rispondi citando il messaggio o parte di esso
Old 20-09-2005, 10:14   #32
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da Bandit
e considerando lo stack?
In C/C++ normalmente gli argomenti vengono "pushati" nello stack in ordine inverso.

le istruzioni di push dovrebbero essere le seguenti:

Codice:
    pea    mag
    pea    min
    move.l #riemp,-(sp)
    move.l #VETT2,-(sp)
    move.l #VETT1,-(sp)
Poi c'è la jsr alla routine, che dovrebbe avere il seguente entry point:
Codice:
    move.l  sp,a6
A questo punto, supponendo che a6 sia il frame pointer, per accedere agli argomenti gli offset dovrebbero essere i seguenti:
Codice:
VETT1 = 4
VETT2 = 8
riemp = 12
min   = 16
mag   = 20
E' da molto che non programmo in assembly 68000, quindi prendi tutto col beneficio del dubbio...
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 20-09-2005, 10:16   #33
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da Bandit
quindi 111?
se era unsigned?011?
Che il dato sia intero come signed o unsigned è indifferente. Se i flag sono mappati come NVC, il risultato dovrebbe essere sempre 111.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 20-09-2005, 11:10   #34
Bandit
Senior Member
 
L'Avatar di Bandit
 
Iscritto dal: Sep 2003
Messaggi: 9431
Quote:
Originariamente inviato da cdimauro
In C/C++ normalmente gli argomenti vengono "pushati"
Codice:
VETT1 = 4
VETT2 = 8
riemp = 12
min   = 16
mag   = 20
E' da molto che non programmo in assembly 68000, quindi prendi tutto col beneficio del dubbio...
cioè fino a 12, forse l'avevo capito anche io, il fatto che non ho capito il 16 ed il 20. Min e mag sono 2 longword?

ciao
__________________
1)P4 2.4-Asrock p4i65- Sapphire Hd3450 512mb agp- 2GB ddr400-Hd 80gb WD- Thermaltake Litepower 450W
2)Amd 3200-Msi K8n Neo4 Platinum - 2*512 MB pc3200-Asus N6600gt- HD WD 160GB-enermax noisetacker 370.
Bandit è offline   Rispondi citando il messaggio o parte di esso
Old 20-09-2005, 11:16   #35
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Ho considerato sizeof(int) = 4 byte.

Coi 680x0 non è possibile effettuare push sullo stack di byte o di dimensioni dispari. In generale comunque è sempre meglio effettuare push di valori a 32 bit; eventualmente i push di word (2 byte) è meglio "accoppiarli" (farne due di seguito), in modo che il prossimo indirizzo risultante continui ad essere allineato a 32 bit...
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 20-09-2005, 11:22   #36
Bandit
Senior Member
 
L'Avatar di Bandit
 
Iscritto dal: Sep 2003
Messaggi: 9431
No cmq le risposte esatte almeno per quel che ti ho postato io all'inizio 8/10/12 sono quelle corrette volevo sapere però il resto
__________________
1)P4 2.4-Asrock p4i65- Sapphire Hd3450 512mb agp- 2GB ddr400-Hd 80gb WD- Thermaltake Litepower 450W
2)Amd 3200-Msi K8n Neo4 Platinum - 2*512 MB pc3200-Asus N6600gt- HD WD 160GB-enermax noisetacker 370.
Bandit è offline   Rispondi citando il messaggio o parte di esso
Old 20-09-2005, 11:36   #37
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Se vuoi sapere come definire le costanti, ti basta usare EQU:

VETT1Offset EQU 4

Se è qualcos'altro, non ho capito.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 20-09-2005, 11:41   #38
Bandit
Senior Member
 
L'Avatar di Bandit
 
Iscritto dal: Sep 2003
Messaggi: 9431
VETT1 offset 8
VETT2 " 10
riemp " 12
min "
mag "

Volevo sapere che numeri ci andavano dopo questi e per qual motivo.

p.s. le " stanno ad indicare offset
__________________
1)P4 2.4-Asrock p4i65- Sapphire Hd3450 512mb agp- 2GB ddr400-Hd 80gb WD- Thermaltake Litepower 450W
2)Amd 3200-Msi K8n Neo4 Platinum - 2*512 MB pc3200-Asus N6600gt- HD WD 160GB-enermax noisetacker 370.
Bandit è offline   Rispondi citando il messaggio o parte di esso
Old 20-09-2005, 11:56   #39
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da Bandit
VETT1 offset 8
VETT2 " 10
riemp " 12
min "
mag "

Volevo sapere che numeri ci andavano dopo questi e per qual motivo.

p.s. le " stanno ad indicare offset
Fermo restando che per me i numeri sono 4, 8, 12, 16 e 20 rispettivamente per VETT1, VETT2, ecc. la giustificazione è la seguente:
1) il primo offset, 4, indica che il valore di VETT1 si trova esattamente dopo l'indirizzo di ritorno dalla subroutine;
2) tutti gli altri offset si ricavano partendo da questo, e sommando via via la dimensione delle variabili. VETT2 offset = VETT1 offset + sizeof(VETT1) = 4 + 4 = 8.

Se tu consideri sizeof(int) = 2, allora gli offset sono 4, 6, 8, 10, 14.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 20-09-2005, 19:08   #40
Bandit
Senior Member
 
L'Avatar di Bandit
 
Iscritto dal: Sep 2003
Messaggi: 9431
si ma credo si parte da 8....


Cmq il problema è quanto sono grandi min e mag
__________________
1)P4 2.4-Asrock p4i65- Sapphire Hd3450 512mb agp- 2GB ddr400-Hd 80gb WD- Thermaltake Litepower 450W
2)Amd 3200-Msi K8n Neo4 Platinum - 2*512 MB pc3200-Asus N6600gt- HD WD 160GB-enermax noisetacker 370.
Bandit è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione DJI Mini 5 Pro: il drone C0 ultra-leggero con sensore da 1 pollice Recensione DJI Mini 5 Pro: il drone C0 ultra-leg...
ASUS Expertbook PM3: il notebook robusto per le aziende ASUS Expertbook PM3: il notebook robusto per le ...
Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo Test ride con Gowow Ori: elettrico e off-road va...
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design   Recensione OnePlus 15: potenza da vendere e batt...
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media AMD Ryzen 5 7500X3D: la nuova CPU da gaming con ...
Obbligati ad acquistare una scheda madre...
GTA VI su PC? La data non c'è, ma...
Monopattini elettrici, a un anno dal dec...
Tesla Robotaxi, autista di sicurezza si ...
Samsung Galaxy S26: svelate le combinazi...
Microsoft Ignite: arriva Edge for Busine...
OPPO e Lamine Yamal uniscono sport e tec...
Microsoft, NVIDIA e Anthropic siglano un...
SpaceX potrebbe comunicare alla NASA rit...
Scoperte cavità sotterranee scava...
OnePlus anticipa l'arrivo di due nuovi p...
DJI lancia Osmo Action 6: la prima actio...
NASA: conferenza stampa sulla cometa int...
Ex CEO di TSMC passa a Intel: aperta un'...
Gigabyte X870E Aorus Elite X3D, una moth...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:29.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v