Torna indietro   Hardware Upgrade Forum > Software > Programmazione

iPhone 17 Pro: più di uno smartphone. È uno studio di produzione in formato tascabile
iPhone 17 Pro: più di uno smartphone. È uno studio di produzione in formato tascabile
C'è tanta sostanza nel nuovo smartphone della Mela dedicato ai creator digitali. Nuovo telaio in alluminio, sistema di raffreddamento vapor chamber e tre fotocamere da 48 megapixel: non è un semplice smartphone, ma uno studio di produzione digitale on-the-go
Intel Panther Lake: i processori per i notebook del 2026
Intel Panther Lake: i processori per i notebook del 2026
Panther Lake è il nome in codice della prossima generazione di processori Intel Core Ultra, che vedremo al debutto da inizio 2026 nei notebook e nei sistemi desktop più compatti. Nuovi core, nuove GPU e soprattutto una struttura a tile che vede per la prima volta l'utilizzo della tecnologia produttiva Intel 18A: tanta potenza in più, ma senza perdere in efficienza
Intel Xeon 6+: è tempo di Clearwater Forest
Intel Xeon 6+: è tempo di Clearwater Forest
Intel ha annunciato la prossima generazione di processori Xeon dotati di E-Core, quelli per la massima efficienza energetica e densità di elaborazione. Grazie al processo produttivo Intel 18A, i core passano a un massimo di 288 per ogni socket, con aumento della potenza di calcolo e dell'efficienza complessiva.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 27-06-2003, 16:53   #1
Bubble
Senior Member
 
Iscritto dal: Dec 2000
Messaggi: 329
Assembly <- DLX

Ciao ,
Sto studiando l'assembly con windlx e ho trovato un esempio dove non capisco il perchè di tre righe di comando ........ qualcuno mi potrebbe spiegare a che servono :
;*********** WINDLX Ex.1: Read a positive integer number *************
;*********** (c) 1991 Günther Raidl *************
;*********** Modified 1992 Maziar Khosravipour *************

;-----------------------------------------------------------------------------
;Subprogram call by symbol "InputUnsigned"
;expect the address of a zero-terminated prompt string in R1
;returns the read value in R1
;changes the contents of registers R1,R13,R14
;-----------------------------------------------------------------------------

.data

;*** Data for Read-Trap
ReadBuffer: .space 80
ReadPar: .word 0,ReadBuffer,80

;*** Data for Printf-Trap
PrintfPar: .space 4

SaveR2: .space 4
SaveR3: .space 4
SaveR4: .space 4
SaveR5: .space 4


.text

.global InputUnsigned
InputUnsigned:
;*** save register contents
sw SaveR2,r2
sw SaveR3,r3
sw SaveR4,r4
sw SaveR5,r5

;*** Prompt
sw PrintfPar,r1
addi r14,r0,PrintfPar
trap 5

;*** call Trap-3 to read line
addi r14,r0,ReadPar
trap 3

;*** determine value
addi r2,r0,ReadBuffer
addi r1,r0,0
addi r4,r0,10 ;Decimal system

Loop: ;*** reads digits to end of line
lbu r3,0(r2)
seqi r5,r3,10 ;LF -&gt; Exit
bnez r5,Finish
subi r3,r3,48 ;´0´
multu r1,r1,r4 ;Shift decimal
add r1,r1,r3

addi r2,r2,1 ;increment pointer
j Loop

Finish: ;*** restore old register contents
lw r2,SaveR2
lw r3,SaveR3
lw r4,SaveR4
lw r5,SaveR5
jr r31 ; Return


le tre righe sono quelle in rosso.
Il programma deve acquisire da tastiera e cercare il carattere ascii 10 (NL line feed, new line).
Bubble è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2003, 17:10   #2
maxithron
Senior Member
 
L'Avatar di maxithron
 
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2817
Sintassi: ADD dest,src
ADD dest,imm

Flags modificati: CF, OF, PF, SF, ZF, AF

esegue la somma tra due operandi, salvando il risultato in un 'dest'.

Sintassi: SUB dest,src
SUB dest,imm

Flags modificati: CF, OF, PF, SF, ZF, AF

esegue la differenza tra due operandi, salvando il risultato in un 'dest'.

Sintassi: MUL src

Flags modificati: CF, OF (PF, SF, ZF, AF non definiti)

L'istruzione MUL esegue la moltiplicazione senza segno tra il registro accumulatore (AL a 8 bit, AX a 16 bit, EAX a 32 bit) e il registro src. Se src è un registro a 16 bit il risultato viene salvato in DX:AX; se src è a 32 bit il risultato va in EDX:EAX.
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n;
Utilizzando atomi trivalenti drogheremo il silicio di tipo p;
Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo
maxithron è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2003, 17:21   #3
Bubble
Senior Member
 
Iscritto dal: Dec 2000
Messaggi: 329
Problemino

Grazie per la risposta,
però c'è un problemino , io conosco come assembly solo il dlx e nemmeno bene visto che ho cominciato a studiarlo l'altro ieri .
Cmq le operazioni svolte ho capito che sono una sottrazione immediata, una moltiplicazione senza segno e un addizione, il mio problema è:
perchè bisogna farli???
o meglio a che cosa servono ai fini del programma?
Bubble è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2003, 17:26   #4
maxithron
Senior Member
 
L'Avatar di maxithron
 
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2817
Re: Assembly <- DLX

Quote:
Originally posted by "Bubble"

Ciao ,

;Subprogram call by symbol "InputUnsigned"
;expect the address of a zero-terminated prompt string in R1
;returns the read value in R1
;changes the contents of registers R1,R13,R14
Se l'hai scritto correttamente servono a darti proprio ciò che è scritto nella descrizione iniziale.
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n;
Utilizzando atomi trivalenti drogheremo il silicio di tipo p;
Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo
maxithron è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2003, 17:33   #5
Bubble
Senior Member
 
Iscritto dal: Dec 2000
Messaggi: 329
Ti ringrazio maxithron
Bubble è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2003, 17:43   #6
maxithron
Senior Member
 
L'Avatar di maxithron
 
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2817
Quote:
Originally posted by "Bubble"

Ti ringrazio maxithron
E di che?
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n;
Utilizzando atomi trivalenti drogheremo il silicio di tipo p;
Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo
maxithron è offline   Rispondi citando il messaggio o parte di esso
Old 19-09-2003, 13:08   #7
maxithron
Senior Member
 
L'Avatar di maxithron
 
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2817
ma che fine hai fatto poi?
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n;
Utilizzando atomi trivalenti drogheremo il silicio di tipo p;
Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo
maxithron è offline   Rispondi citando il messaggio o parte di esso
Old 19-09-2003, 16:45   #8
Bubble
Senior Member
 
Iscritto dal: Dec 2000
Messaggi: 329
Quote:
Originariamente inviato da maxithron
ma che fine hai fatto poi?

Io sono sempre qui !!!

Comunque alla fine l'ho imparato (anche se per fare un programmino che con il C forse avrei usato due o tre righe di comando ci sono stato 4 giorni ), ho fatto l'esame e nella parte riguardante l'assembly ho preso il max......


comunque grazie per l'aiuto che mi avevi dato!!!
Bubble è offline   Rispondi citando il messaggio o parte di esso
Old 19-09-2003, 17:03   #9
maxithron
Senior Member
 
L'Avatar di maxithron
 
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2817
E di che?
Stavo scavando un pò tra i vecchi post quando ho ritrovato appunto questo 3D!!

A presto

__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n;
Utilizzando atomi trivalenti drogheremo il silicio di tipo p;
Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo
maxithron è offline   Rispondi citando il messaggio o parte di esso
Old 29-06-2006, 12:22   #10
exetera
Junior Member
 
Iscritto dal: Jun 2006
Messaggi: 10
Avevo postato una domanda alla quale ho trovato risposta.Grazie lo stesso

Ultima modifica di exetera : 29-06-2006 alle 12:39. Motivo: RISOLTO!
exetera è offline   Rispondi citando il messaggio o parte di esso
Old 05-07-2007, 17:59   #11
ozmosis
 
Messaggi: n/a
Salve ragazzi, finalmente ho trovato qualcuno che usa il DLX.
Non capisco come far funzionare questo simulatore.
Il codice per esempio che ha scritto Bubble, lo capisco, ma come si manda in esecuzione in WinDLX?
Cioè ho mandato in esecuzione questo programma e mi appare la schermata di input, con sfondo bianco, che dovrei scrivere li dentro per esempio?
Riferendomi a questo programma di Bubble.
Vi ringrazio in anticipo per la risposta!
  Rispondi citando il messaggio o parte di esso
Old 18-01-2013, 00:50   #12
Stark85
Junior Member
 
Iscritto dal: Jan 2013
Messaggi: 1
Pure io, finalmente, ho trovato qualcuno che usa il DLX !!!

Potreste aiutarmi a capire qual'è l'operazione svolta da questa sequenza ?

ADDI R1, R0, 800H
LOOP: SUBI R1, R1, 2
LHU R2, A(R1)
LHU R3, B(R2)
LHU R2, C(R3)
SH A(R1), R2
BNEZ R1, LOOP
Stark85 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


iPhone 17 Pro: più di uno smartphone. È uno studio di produzione in formato tascabile iPhone 17 Pro: più di uno smartphone. &Eg...
Intel Panther Lake: i processori per i notebook del 2026 Intel Panther Lake: i processori per i notebook ...
Intel Xeon 6+: è tempo di Clearwater Forest Intel Xeon 6+: è tempo di Clearwater Fore...
4K a 160Hz o Full HD a 320Hz? Titan Army P2712V, a un prezzo molto basso 4K a 160Hz o Full HD a 320Hz? Titan Army P2712V,...
Recensione Google Pixel Watch 4: basta sollevarlo e si ha Gemini sempre al polso Recensione Google Pixel Watch 4: basta sollevarl...
Disney+ cambia: arriva Hulu, ma il servi...
Google annuncia Gemini Enterprise: l'IA ...
Battlefield 6 debutta tra code infinite ...
Gli iPhone di seconda mano dominano il m...
Pavel Durov (Telegram) lancia l'allarme:...
Occhiali Smart come lo smartphone: il fu...
Arriva NVIDIA GB300 NVL72, il cluster di...
Copilot si collega a OneDrive, Gmail e D...
Il Liquid Glass di iOS 26 è stato...
I biocarburanti fanno più danni d...
ELF, il Frankenstein di Mercedes che ant...
Da Kia arriva il passaporto per le batte...
The Elder Scrolls 6 renderà omagg...
YouTube dà una 'seconda chance' a...
Attacco hacker a Oracle E-Business Suite...
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: 23:15.


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