spacer.png, 0 kB

Torna indietro   Roboitalia.com - Il primo portale in Italia sulla robotica amatoriale > Robotica di base > Informatica > P. in Assembler

Rispondi
 
Strumenti discussione Modalità  visualizzazioe
  #1  
Vecchio 01-10-2010, 14.29.34
L'avatar di SoldatoSemplice
SoldatoSemplice SoldatoSemplice non è collegato
Robottaro master
 
Data registrazione: 06-07-2009
Residenza: Roma
Età : 36
Messaggi: 263
Potenza reputazione: 132
SoldatoSemplice La sua reputazione è oltre la sua famaSoldatoSemplice La sua reputazione è oltre la sua famaSoldatoSemplice La sua reputazione è oltre la sua famaSoldatoSemplice La sua reputazione è oltre la sua famaSoldatoSemplice La sua reputazione è oltre la sua fama
Predefinito La data memory programmando in assembler come si dichiara?

Questa parrà essere una domanda decisamente semplicistica ma devo comunque chiarificare un dubbio che persiste mentre programmo in assembler.

Io sono un programmatore nativo dell'assembler per quanto riguarda i PICmicro, ma solo recentemente mi sono accorto di un dettaglio che non riesco a dipanare.
Durante la normale programmazione con l'ambiente di sviluppo MPLAB, faccio uso anche di uno strumento visuale gratuitamente disponibile all'interno dell'MPLAB stesso che si chiama "Memory usage gauge", che in pratica mi dice quanta memoria programma e quanta data memory stò usando nel mio PIC, ebbene sembra che qualunque programma io faccia con l'assembler non usi nemmeno un bit di data memory, cosa che mi lascia alquanto perplesso.

Io ho sempre creduto che in assembler le variabili si ponevano all'interno della data memory usando la coppia di comandi

Codice:
CBLOCK 0X020
...
ENDC
Ciò nonostante sembra comunque che la data memory stessa resti inutilizzata.

A questo punto la mia domanda è: lo strumento di cui faccio uso: il memory usage gauge, è in qualche modo inaffidabile se si fa uso di assembler, oppure sbaglio io le dichiarazioni e realmente non faccio uso di data memory?

Spero di essermi spiegato e aspetto consigli

Cordiali saluti

Leonardo.
Rispondi citando
  #2  
Vecchio 01-10-2010, 17.11.25
L'avatar di sergio_camici
sergio_camici sergio_camici non è collegato
Administrator
 
Data registrazione: 24-05-2002
Residenza: Binasco (MI)
Età : 55
Messaggi: 2,665
Potenza reputazione: 303
sergio_camici La sua reputazione è oltre la sua famasergio_camici La sua reputazione è oltre la sua famasergio_camici La sua reputazione è oltre la sua famasergio_camici La sua reputazione è oltre la sua famasergio_camici La sua reputazione è oltre la sua famasergio_camici La sua reputazione è oltre la sua famasergio_camici La sua reputazione è oltre la sua fama
Predefinito

Non ricordo bene, ma c'era una dichiarazione apposta...
RD forse?
__________________
ciao
Sergio
---
Hai deciso di costruire un robot? Bene...
Cominciamo dalle brutte notizie: non e' facile...
Rispondi citando
  #3  
Vecchio 01-10-2010, 20.39.53
L'avatar di SoldatoSemplice
SoldatoSemplice SoldatoSemplice non è collegato
Robottaro master
 
Data registrazione: 06-07-2009
Residenza: Roma
Età : 36
Messaggi: 263
Potenza reputazione: 132
SoldatoSemplice La sua reputazione è oltre la sua famaSoldatoSemplice La sua reputazione è oltre la sua famaSoldatoSemplice La sua reputazione è oltre la sua famaSoldatoSemplice La sua reputazione è oltre la sua famaSoldatoSemplice La sua reputazione è oltre la sua fama
Predefinito

Mi dispiace ma con quel comando nulla di fatto, ho tentato anche con gli obsoleti res ed equ ma non ottengo nulla.
Rispondi citando
  #4  
Vecchio 10-02-2011, 22.13.12
Robert8 Robert8 non è collegato
Nuovo robottaro
 
Data registrazione: 09-02-2011
Residenza: Milano
Età : 60
Messaggi: 3
Potenza reputazione: 0
Robert8 E' per ora ancora un mistero
Predefinito

Per definire campi in Data Memory del PIC:

UDATA_ACS 0x0000
miaVariabile_a RES 1
miaVariabile_a RES 3
etc.

dove UDATA_ACS significa che le variabili vengono poste nella parte di DATA MEMORY ad accesso diretto, cioè senza la necessità di specificare
il banco.

Altrimenti si puo usare:

UDATA 0x0400

per mettere variabili bel banco 0400.

Comunque è meglio leggere bene il data sheet del proprio PIC
ed anche l'Help del MPLAB IDE dove trovi esempi per il PIC16 ed il PIC18.

Spero che quanto sopra possa esserti utile.
Ciao.
Rispondi citando
  #5  
Vecchio 11-02-2011, 09.21.27
L'avatar di SoldatoSemplice
SoldatoSemplice SoldatoSemplice non è collegato
Robottaro master
 
Data registrazione: 06-07-2009
Residenza: Roma
Età : 36
Messaggi: 263
Potenza reputazione: 132
SoldatoSemplice La sua reputazione è oltre la sua famaSoldatoSemplice La sua reputazione è oltre la sua famaSoldatoSemplice La sua reputazione è oltre la sua famaSoldatoSemplice La sua reputazione è oltre la sua famaSoldatoSemplice La sua reputazione è oltre la sua fama
Predefinito

Citazione:
Orginalmente inviato da Robert8 Visualizza messaggio
Per definire campi in Data Memory del PIC:

UDATA_ACS 0x0000
miaVariabile_a RES 1
miaVariabile_a RES 3
etc.

dove UDATA_ACS significa che le variabili vengono poste nella parte di DATA MEMORY ad accesso diretto, cioè senza la necessità di specificare
il banco.

Altrimenti si puo usare:

UDATA 0x0400

per mettere variabili bel banco 0400.

Comunque è meglio leggere bene il data sheet del proprio PIC
ed anche l'Help del MPLAB IDE dove trovi esempi per il PIC16 ed il PIC18.

Spero che quanto sopra possa esserti utile.
Ciao.
Grazie!! ma questo è valido per l'assembly? A prima vista a me sembra più C...
Rispondi citando
Rispondi


Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 ospiti)
 
Strumenti discussione
Modalità  visualizzazioe

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code è Attivato
Le smilies sono Attivato
[IMG] è Attivato
Il codice HTML è Disattivato

Vai al forum

Discussioni simili
Discussione Autore discussione Forum Risposte Ultimo messaggio
raw data e cv 2.0 giuseppe500 OpenCV 6 10-05-2010 16.28.22
OpenCV: errore Out Of Memory nothing387 OpenCV 9 24-03-2010 18.28.06
PIC18f2680 access data memory tgb99 P. in Basic per micro 0 27-06-2009 09.17.40
Lettore mp3 e memory stick drako Elettronica 3 02-07-2005 23.28.51
Memory card tail Forum generale 5 13-05-2003 20.21.58


Tutti gli orari sono GMT. Adesso sono le: 03.59.21.


Basato su: vBulletin Versione 3.8.8
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Realizzazione siti web Cobaltica Foligno
spacer.png, 0 kB