PDA

View Full Version : Aiuto programma in C


stronzio1989
23-09-2008, 15:53
ho un grosso problema. devo fare un progetto con un microcontrollore 80c552.
ho già fatto e testato il programma in assembler. unico problema che il mio prof mi ha chiesto di farlo anche in c.
il problema è che io conosco a memoria l'assembler ma poco, quasi nulla il c
la mia domanda è questa:
esiste un modo per convertire un programma in assembler in c?
grazie anticipatamente

yorkeiser
23-09-2008, 17:00
Normalmente i compilatori c permettono di inserire direttamente codice assembler all'interno del sorgente.
Ad esempio, nel vecchio VisualStudio 5.0, la direttiva era _asm se non ricordo male:

_asm
{
[... codice assembler ...]
}

Se invece il tuo prof vuole che tu converta proprio il codice, il mio consiglio è di armarti di un buon manuale c. Se programmi bene in asm, imparare qualche rudimento di c e convertire il codice sarà uno scherzo per te... è molto più facile convertire da basso ad alto livello che non il contrario.

stronzio1989
23-09-2008, 22:44
quindi se ho ben capito con la stringa che mi hai scritto te inserisco solo un testo in assembler che poi converte in automatico?
perchè io a dire la verità avevo bisogno proprio che dal mio soft di una ventina di pagine venisse fuori la conversione in c.
tipo per esempio:
; Write a character to the serial port
;
WRCHR: JNB S0CON.1,$ ;Wait for the bit
CLR S0CON.1 ;Indicte we are sending
MOV S0BUF,A ;Write out char
RET

questo è assembler.
venisse fuori un qualcosa tipo
printf.......e vario.
non è possibile farlo?

Tommo
23-09-2008, 22:57
quindi se ho ben capito con la stringa che mi hai scritto te inserisco solo un testo in assembler che poi converte in automatico?
perchè io a dire la verità avevo bisogno proprio che dal mio soft di una ventina di pagine venisse fuori la conversione in c.
tipo per esempio:
; Write a character to the serial port
;
WRCHR: JNB S0CON.1,$ ;Wait for the bit
CLR S0CON.1 ;Indicte we are sending
MOV S0BUF,A ;Write out char
RET

questo è assembler.
venisse fuori un qualcosa tipo
printf.......e vario.
non è possibile farlo?

Non c'è speranza :rolleyes:
Però se sei stato in grado di imparare a questi livelli l'ASM il C dovrebbe essere un gioco da ragazzi... mi sa che fai prima a vedere quello :D

stronzio1989
23-09-2008, 23:25
quindi mi sa che mi tocca applicarmi e imparare il c al più presto. problema sarà capire come inizializzare l'adc del micro e far funzionare il pwm....mi sa che ho un bel po da fare...
il fatto è che ho cambiato classe e io ho sempre fatto assembler mentre qua si fa c.
me devo mettere a studiare mi sa!
cmq grazie a tutti quelli che mi hanno dato una mano