Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Google Pixel 11: non ha l'HiLight dei Pro, ma è il Pixel più equilibrato di sempre
Recensione Google Pixel 11: non ha l'HiLight dei Pro, ma è il Pixel più equilibrato di sempre
Abbiamo provato Google Pixel 11, il più accessibile della nuova gamma: chip Tensor G6 condiviso con i modelli Pro, fotocamera 48 MP con Magic Capture e Stili Fotografici, display Actua da 3000 nit e batteria da 4985 mAh. Ecco come si comporta nell'uso quotidiano, e cosa cambia davvero rispetto a Pixel 11 Pro e Pro XL
Google Pixel 11 Pro XL: fotocamera al top, batteria indietro. Luci e ombre del nuovo flagship
Google Pixel 11 Pro XL: fotocamera al top, batteria indietro. Luci e ombre del nuovo flagship
Google Pixel 11 Pro XL debutta in Italia con il nuovo Tensor G6, lo Zoom Pro fino a 120x, il display Super Actua da 3600 nit e la new entry HiLight riservata ai modelli Pro: lo abbiamo provato in anteprima per diversi giorni prima del lancio commerciale, tra fotocamera generativa, ricarica ancora indietro rispetto ai rivali e un prezzo che parte da 1399 euro
Non sai programmare? Ecco cosa si può fare con un LLM e una GeForce RTX 5070 Ti
Non sai programmare? Ecco cosa si può fare con un LLM e una GeForce RTX 5070 Ti
Con un semplice dialogo in linguaggio naturale e la potenza di una scheda video di fascia alta è possibile costruire software funzionante da zero, senza scrivere una riga di codice e senza inviare un solo byte dei propri dati a server esterni
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 11-11-2013, 17:45   #1
g0t3nk5
Member
 
Iscritto dal: Oct 2005
Città: AP
Messaggi: 169
Linguaggi di programmazione con tipi statici

Sto studiando per un'esame sui linguaggi di programmazione. Mi sono imbattuto in questa domanda..

Si consideri il seguente frammento in uno pseudolinguaggio con tipi statici, dove f e una certa funzione di due argomenti:

int i,j;
float y,z;
y = f(i,j);
z = f(y,i);

Si fornisca (i) una possibile intestazione per la funzione f e (ii) le ipotesi che occorre fare sul sistema di tipi dello pseudolinguaggio anche l'intestazione data in (i) sia corretta.


La prima risposta che mi viene in mente è che se il linguaggio supporta funzioni polimorfe, potrei semplicemente avere una funzione f così definita:

float f(<T1> param1, <T2> param2)

__________________
The Grand essentials of happiness are: something to do, something to love, and something to hope for.

Ultima modifica di g0t3nk5 : 12-11-2013 alle 01:59.
g0t3nk5 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 09:13   #2
Riordian
Senior Member
 
L'Avatar di Riordian
 
Iscritto dal: Mar 2006
Città: Genova
Messaggi: 2457
cavolo la teoria è anni che non la vedo in questi termini... tieni conto di una cosa. A una funzione che richiede float puoi passare degli int quindi la firma
potrebbe essere benissimo float f(float paramA, float paramB) e funzionare tranquillamente
__________________
tag XBOX live Aldair74
Nick PSNRiordian
Affari conclusi con: Anf3t4m1n Krocca magomagnani amoredipippa mone_82 raszagale bizzy89 Andrew_db
Riordian è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 09:38   #3
Oceans11
Senior Member
 
L'Avatar di Oceans11
 
Iscritto dal: Sep 2005
Città: Torino
Messaggi: 606
Quote:
tieni conto di una cosa. A una funzione che richiede float puoi passare degli int quindi la firma potrebbe essere benissimo float f(float paramA, float paramB) e funzionare tranquillamente
in realtà potrebbe anche essere:
int f (int paramA, int paramB)
come pure:
double f (double paramA, double paramB)
e ogni possibile combinazione di tipi numerici dei parametri e del valore di ritorno.
In alcuni casi perdi precisione o avrai troncamento, in altri "sprechi" memoria.

Mentre non credo che tu possa usare tipi parametrici, vista la tipizzazione statica.
__________________
"Se proprio dovete piratare un prodotto, preferiamo che sia il nostro piuttosto che quello di qualcun altro." [Jeff Raikes]
"Pirating software? Choose Microsoft!"
Oceans11 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 10:36   #4
Riordian
Senior Member
 
L'Avatar di Riordian
 
Iscritto dal: Mar 2006
Città: Genova
Messaggi: 2457
Quote:
Originariamente inviato da Oceans11 Guarda i messaggi
in realtà potrebbe anche essere:
int f (int paramA, int paramB)
come pure:
double f (double paramA, double paramB)
e ogni possibile combinazione di tipi numerici dei parametri e del valore di ritorno.
In alcuni casi perdi precisione o avrai troncamento, in altri "sprechi" memoria.

Mentre non credo che tu possa usare tipi parametrici, vista la tipizzazione statica.
non penso che in questo caso gli convenga fare una cosa del genere perchè, come dici giustamente anche te, avresti perdita dei dati. A un int non puoi passare float a meno di cast, il compilatore darebbe un errore o comunque, anche se il compilatore facesse dei cast impliciti e non ti desse errore (con c# per esempio non compila proprio comunque, appena provato), perderesti info sul dato. Per esempio se passi un float 3.5 a un int questo legge 3 e perdi info. Visto che questa è la domanda di un test secondo me meglio non fare una cosa del genere
__________________
tag XBOX live Aldair74
Nick PSNRiordian
Affari conclusi con: Anf3t4m1n Krocca magomagnani amoredipippa mone_82 raszagale bizzy89 Andrew_db

Ultima modifica di Riordian : 12-11-2013 alle 10:44.
Riordian è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 11:04   #5
Oceans11
Senior Member
 
L'Avatar di Oceans11
 
Iscritto dal: Sep 2005
Città: Torino
Messaggi: 606
Quote:
Originariamente inviato da Riordian Guarda i messaggi
non penso che in questo caso gli convenga fare una cosa del genere perchè, come dici giustamente anche te, avresti perdita dei dati. A un int non puoi passare float a meno di cast, il compilatore darebbe un errore o comunque, anche se il compilatore facesse dei cast impliciti e non ti desse errore (con c# per esempio non compila proprio comunque, appena provato), perderesti info sul dato. Per esempio se passi un float 3.5 a un int questo legge 3 e perdi info. Visto che questa è la domanda di un test secondo me meglio non fare una cosa del genere
Codice:
#include <stdio.h>

int f (int paramA, int paramB) {
	return paramA+paramB;
}

int main(int argc, char *argv[]) {
	float a = 5.5f;
	float b = 6.6f;
	printf("somma: %d\n", f(a,b));
	
	return 0;
}
codice stupido, tanto per provare.
compilato con
Codice:
gcc -Wall -pedantic -o test test.c
neanche un warning. Dà il risultato che mi aspettavo senza cast.
gcc 4.8.2

tra l'altro c# permette i generici, non credo sia un linguaggio fortemente tipizzato
__________________
"Se proprio dovete piratare un prodotto, preferiamo che sia il nostro piuttosto che quello di qualcun altro." [Jeff Raikes]
"Pirating software? Choose Microsoft!"

Ultima modifica di Oceans11 : 12-11-2013 alle 11:06. Motivo: typo
Oceans11 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 11:47   #6
Riordian
Senior Member
 
L'Avatar di Riordian
 
Iscritto dal: Mar 2006
Città: Genova
Messaggi: 2457
Quote:
Originariamente inviato da Oceans11 Guarda i messaggi
Codice:
#include <stdio.h>

int f (int paramA, int paramB) {
	return paramA+paramB;
}

int main(int argc, char *argv[]) {
	float a = 5.5f;
	float b = 6.6f;
	printf("somma: %d\n", f(a,b));
	
	return 0;
}
codice stupido, tanto per provare.
compilato con
Codice:
gcc -Wall -pedantic -o test test.c
neanche un warning. Dà il risultato che mi aspettavo senza cast.
gcc 4.8.2

tra l'altro c# permette i generici, non credo sia un linguaggio fortemente tipizzato

guarda ho provato, una cosa del genere o la casto o non compila. E il risultato che mi darebbe è 11 invece di 12.1.
__________________
tag XBOX live Aldair74
Nick PSNRiordian
Affari conclusi con: Anf3t4m1n Krocca magomagnani amoredipippa mone_82 raszagale bizzy89 Andrew_db
Riordian è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 11:49   #7
Oceans11
Senior Member
 
L'Avatar di Oceans11
 
Iscritto dal: Sep 2005
Città: Torino
Messaggi: 606
Quote:
Originariamente inviato da Riordian Guarda i messaggi
guarda ho provato, una cosa del genere o la casto o non compila. E il risultato che mi darebbe è 11 invece di 12.1.
11 è il risultato che mi aspetto infatti. Il problema della compilazione starà nel compilatore che usi. Qual'è?
__________________
"Se proprio dovete piratare un prodotto, preferiamo che sia il nostro piuttosto che quello di qualcun altro." [Jeff Raikes]
"Pirating software? Choose Microsoft!"
Oceans11 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 11:53   #8
Oceans11
Senior Member
 
L'Avatar di Oceans11
 
Iscritto dal: Sep 2005
Città: Torino
Messaggi: 606
wikipedia

Gli ultimi due punti dell'elenco:
Quote:
* Le sole conversioni implicite consentite sono quelle "safe", ovvero che non espongono al rischio di perdita di dati causata dalla diversa tipologia di dato. Ad esempio non sono consentite conversioni implicite fra integer e boolean o fra enumerati ed integer.
* C# non possiede i "template" (tipici del C++), ma nella versione 2.0 sono stati introdotti i "generic".
alla luce di questo dicevo che c# non ha tipizzazione statica, quindi non è questo il caso. In c89 invece si può fare, se sai cosa stai facendo.
__________________
"Se proprio dovete piratare un prodotto, preferiamo che sia il nostro piuttosto che quello di qualcun altro." [Jeff Raikes]
"Pirating software? Choose Microsoft!"
Oceans11 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 12:08   #9
Riordian
Senior Member
 
L'Avatar di Riordian
 
Iscritto dal: Mar 2006
Città: Genova
Messaggi: 2457
Quote:
Originariamente inviato da Oceans11 Guarda i messaggi
wikipedia

Gli ultimi due punti dell'elenco:


alla luce di questo dicevo che c# non ha tipizzazione statica, quindi non è questo il caso. In c89 invece si può fare, se sai cosa stai facendo.
è proprio questo il punto, troppi rischi per farlo secondo me. Sono pochi i casi in cui sei assolutamente sicuro che una chiamata del genere non provochi danni all'applicazione.
__________________
tag XBOX live Aldair74
Nick PSNRiordian
Affari conclusi con: Anf3t4m1n Krocca magomagnani amoredipippa mone_82 raszagale bizzy89 Andrew_db
Riordian è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 12:19   #10
Riordian
Senior Member
 
L'Avatar di Riordian
 
Iscritto dal: Mar 2006
Città: Genova
Messaggi: 2457
Quote:
Originariamente inviato da Oceans11 Guarda i messaggi
wikipedia

Gli ultimi due punti dell'elenco:


alla luce di questo dicevo che c# non ha tipizzazione statica, quindi non è questo il caso. In c89 invece si può fare, se sai cosa stai facendo.

http://msdn.microsoft.com/it-it/library/ms173105%28v=vs.90%29.aspx
__________________
tag XBOX live Aldair74
Nick PSNRiordian
Affari conclusi con: Anf3t4m1n Krocca magomagnani amoredipippa mone_82 raszagale bizzy89 Andrew_db
Riordian è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 12:22   #11
Oceans11
Senior Member
 
L'Avatar di Oceans11
 
Iscritto dal: Sep 2005
Città: Torino
Messaggi: 606
Quote:
Originariamente inviato da Riordian Guarda i messaggi
è proprio questo il punto, troppi rischi per farlo secondo me. Sono pochi i casi in cui sei assolutamente sicuro che una chiamata del genere non provochi danni all'applicazione.
Posso essere d'accordo, ma al quesito "si fornisca una possibile intestazione per la funzione f" non mi sento di escludere anche queste. Sono quantomeno da considerare, anche per sottolineare il comportamento di un linguaggio staticamente tipizzato e dei suoi compilatori.

Detto questo, personalmente, tra le varie risposte poi, sceglierei quella che procuri meno problemi.

ps: grazie per il link, devo non aver capito le differenze tra staticamente tipizzato e le conversioni di tipo.
__________________
"Se proprio dovete piratare un prodotto, preferiamo che sia il nostro piuttosto che quello di qualcun altro." [Jeff Raikes]
"Pirating software? Choose Microsoft!"

Ultima modifica di Oceans11 : 12-11-2013 alle 12:26. Motivo: edit
Oceans11 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 12:29   #12
Riordian
Senior Member
 
L'Avatar di Riordian
 
Iscritto dal: Mar 2006
Città: Genova
Messaggi: 2457
Quote:
Originariamente inviato da Oceans11 Guarda i messaggi
Posso essere d'accordo, ma al quesito "si fornisca una possibile intestazione per la funzione f" non mi sento di escludere anche queste. Sono quantomeno da considerare, anche per sottolineare il comportamento di un linguaggio staticamente tipizzato e dei suoi compilatori.

Detto questo, personalmente, tra le varie risposte poi, sceglierei quella che procuri meno problemi.
Questo è sicuro,
Di nulla per il link servirà anche al ragazzo che ha aperto il post magari che si sarà perso nelle nostre discussioni
Riordian è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 12:33   #13
Oceans11
Senior Member
 
L'Avatar di Oceans11
 
Iscritto dal: Sep 2005
Città: Torino
Messaggi: 606
ok, in realtà non avevo proprio capito una mazza!

per tipizzazione statica si intende che il tipo di una variabile è deciso a compile time.
c, java, c#, c++ vs javascript (ad esempio) o python.
(Non riesco ad ogni modo a spiegarmi i generici e i template, o il polimorfismo)

le conversioni (implicite ed esplicite) dipendono dunque dal compilatore e linguaggio, a prescindere dalla tipizzazione.

@g0t3nk5: sorry per il leggero OT, spero sia stato utile.
__________________
"Se proprio dovete piratare un prodotto, preferiamo che sia il nostro piuttosto che quello di qualcun altro." [Jeff Raikes]
"Pirating software? Choose Microsoft!"
Oceans11 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 12:34   #14
vendettaaaaa
Senior Member
 
L'Avatar di vendettaaaaa
 
Iscritto dal: Jan 2012
Messaggi: 1267
Quote:
Originariamente inviato da Oceans11 Guarda i messaggi
tra l'altro c# permette i generici, non credo sia un linguaggio fortemente tipizzato
I generici sono come i template del C++ dal punto di vista della tipizzazione, che rimane forte e statica. C# è anche più tipizzato di C++ perchè non permette appunto di assegnare un double ad un int senza cast esplicito, cosa permessa in C++ perchè si porta dietro la retrocompatibilità col C.
vendettaaaaa è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 12:39   #15
Oceans11
Senior Member
 
L'Avatar di Oceans11
 
Iscritto dal: Sep 2005
Città: Torino
Messaggi: 606
Quote:
Originariamente inviato da vendettaaaaa Guarda i messaggi
I generici sono come i template del C++ dal punto di vista della tipizzazione, che rimane forte e statica. C# è anche più tipizzato di C++ perchè non permette appunto di assegnare un double ad un int senza cast esplicito, cosa permessa in C++ perchè si porta dietro la retrocompatibilità col C.
e la questione del polimorfismo?
__________________
"Se proprio dovete piratare un prodotto, preferiamo che sia il nostro piuttosto che quello di qualcun altro." [Jeff Raikes]
"Pirating software? Choose Microsoft!"
Oceans11 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 12:47   #16
Riordian
Senior Member
 
L'Avatar di Riordian
 
Iscritto dal: Mar 2006
Città: Genova
Messaggi: 2457
Quote:
Originariamente inviato da Oceans11 Guarda i messaggi
e la questione del polimorfismo?
non sono un bravo prof per cui ti passo un link

http://msdn.microsoft.com/it-it/library/ms173152.aspx

poi io mi ricordo che anche l'overload era una tecnica per il polimorfismo oltre l'override

http://msdn.microsoft.com/it-it/libr...vs.100%29.aspx
__________________
tag XBOX live Aldair74
Nick PSNRiordian
Affari conclusi con: Anf3t4m1n Krocca magomagnani amoredipippa mone_82 raszagale bizzy89 Andrew_db

Ultima modifica di Riordian : 12-11-2013 alle 12:51.
Riordian è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 13:08   #17
vendettaaaaa
Senior Member
 
L'Avatar di vendettaaaaa
 
Iscritto dal: Jan 2012
Messaggi: 1267
Quote:
Originariamente inviato da Oceans11 Guarda i messaggi
e la questione del polimorfismo?
Parli di ereditarietà. Il polimorfismo è una conseguenza dell'ereditarietà.
E' una cosa necessaria perchè altrimenti si escluderebbe una grossa fetta di problemi risolvibili con il linguaggio.
Semplicemente: in alcuni casi non è in alcun modo possibile stabilire a compile time il tipo di oggetti che saranno utilizzati nel programma. Ad esempio, se il programma chiede all'utente di riempire un array di forme geometriche con triangoli, quadrati, cerchi a suo piacimento.
Tieni conto però che ereditarietà non significa mancanza di tipizzazione. Il tuo programma in C++/C#/Java eccetera dovrà maneggiare, nel senso che allocherà, puntatori alla classe base, ad esempio "FormaGeometrica", e poi assegnerà a questi puntatori oggetti di classe derivata,
FormaGeometrica* forma = new Cerchio(raggio);
allocati dinamicamente nella heap. Quindi non farti ingannare: la tipizzazione è cmq statica, perchè a compile time sai che nella stack allocherai memoria per tenere un puntatore a FormaGeometrica, e solo a runtime assegnerai un oggetto a quel puntatore.
Il polimorfismo è una conseguenza: a prescindere dal fatto che la tua forma geometrica sia un cerchio o un rettangolo, ad un certo punto nel codice vorrai calcolarne l'area. Però il tuo codice viene compilato prima di sapere cosa maneggerai, e quindi devi metterci una funzione che vada bene per tutte le possibili forme geometriche. Allora si stabilisce un'interfaccia comune alle forme geometriche, cioè che ogni oggetto che deriva dalla classe base abbia dei metodi con lo stesso nome, cosicchè il codice scritto a compile time sia valido, ma poi a runtime venga chiamata la versione "specializzata" per quella particolare forma geometrica in modo automatico. Il polimorfismo significa questo: stesso nome della funzione (o metodo) per tutte le classi che derivano da, e quindi hanno proprietà in comune con, una classe base più generica, ma comportamento diverso in base alla vera natura dell'oggetto di quella classe (nell'esempio, cambia la formula con cui si vuole calcolare l'area).

Ultima modifica di vendettaaaaa : 12-11-2013 alle 13:11.
vendettaaaaa è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 13:44   #18
Oceans11
Senior Member
 
L'Avatar di Oceans11
 
Iscritto dal: Sep 2005
Città: Torino
Messaggi: 606
Quote:
Originariamente inviato da vendettaaaaa Guarda i messaggi
Parli di ereditarietà. Il polimorfismo è una conseguenza dell'ereditarietà.
Tieni conto però che ereditarietà non significa mancanza di tipizzazione. Il tuo programma in C++/C#/Java eccetera dovrà maneggiare, nel senso che allocherà, puntatori alla classe base [...] allocati dinamicamente nella heap.
Quindi non farti ingannare: la tipizzazione è cmq statica, perchè a compile time sai che nella stack allocherai memoria per tenere un puntatore.
perfetto, non potevo chiedere di meglio.
__________________
"Se proprio dovete piratare un prodotto, preferiamo che sia il nostro piuttosto che quello di qualcun altro." [Jeff Raikes]
"Pirating software? Choose Microsoft!"
Oceans11 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 13:58   #19
g0t3nk5
Member
 
Iscritto dal: Oct 2005
Città: AP
Messaggi: 169
Vi ringrazio a tutti delle risposte, non mi aspettavo una discussione così accesa.

Ne approfitto per porre un altro quesito sempre sulla tipizzazione.

Si consideri il seguente frammento di codice Java, dove A e B sono due classi diverse, di tipo non confrontabile:

A[] as = new A[10];
Object[] ao = as;
B[0] = new B();

Si dica se il precedente frammento e corretto oppure no dal punto di vista dei tipi.


Sulla terza riga, ovvero l'assegnamento di B[0], non c'è un errore in quanto l'array B non eiste/non è stato inizializzato???

Un'altra domanda che mi ha messo in difficoltà è questa:

Nello scope delle dichiarazioni:

int n;
string s;
int g(int x, real y){...}

si consideri l'espressione

g(f(n), f(s))

Si diano ipotesi sul linguaggio e/o sul nome f anche tale espressione sia correttamente tipizzata.


A differenza della prima domanda del thread in questo caso una variabile è numerica e l'altra di tipo string, che non sono tipi compatibili tra loro (nel senso che non credo che il compilatore farebbe cast implicito).

Grazie di nuovo.
__________________
The Grand essentials of happiness are: something to do, something to love, and something to hope for.

Ultima modifica di g0t3nk5 : 12-11-2013 alle 14:13.
g0t3nk5 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2013, 14:01   #20
Riordian
Senior Member
 
L'Avatar di Riordian
 
Iscritto dal: Mar 2006
Città: Genova
Messaggi: 2457
Quote:
Originariamente inviato da g0t3nk5 Guarda i messaggi
Vi ringrazio a tutti delle risposte, non mi aspettavo una discussione così accesa.

Grazie di nuovo.
ala fine di tutto la firma della funzione da utilizzare secondo me è questa:

float f(float paramA, float paramB)
a cui puoi passare sia float che int con tipizzazione statica
__________________
tag XBOX live Aldair74
Nick PSNRiordian
Affari conclusi con: Anf3t4m1n Krocca magomagnani amoredipippa mone_82 raszagale bizzy89 Andrew_db
Riordian è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Google Pixel 11: non ha l'HiLight dei Pro, ma è il Pixel più equilibrato di sempre Recensione Google Pixel 11: non ha l'HiLight dei...
Google Pixel 11 Pro XL: fotocamera al top, batteria indietro. Luci e ombre del nuovo flagship Google Pixel 11 Pro XL: fotocamera al top, batte...
Non sai programmare? Ecco cosa si può fare con un LLM e una GeForce RTX 5070 Ti Non sai programmare? Ecco cosa si può far...
Recensione Samsung Galaxy Z Fold8 Ultra: il pieghevole più famoso diventa quasi perfetto Recensione Samsung Galaxy Z Fold8 Ultra: il pieg...
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing" Insta360 X6: Dolby Vision, 8K e montaggio "...
Una Visa scaduta può ancora pagar...
I migliori robot aspirapolvere in offert...
The Duskbloods non cambia la direzione d...
Un weekend di ribassi eccezionali su Ama...
Cosa succede se l'IA diventa una persona...
Tutta la stagione NFL 2026/2027 è su DAZ...
I 3 portatili in offerta migliori di tut...
iPhone 17 Pro e Pro Max ai minimi storic...
SK hynix, il boom dell'HBM finisce in bu...
Linktour Alumi, test drive: la microcar ...
Dopo l'atterraggio, il razzo spaziale ci...
Godox lancia due accessori per fotografi...
Nova Lake-S da 28 core a 296 W: pi&ugrav...
Adobe Firefly rende disponibili per tutt...
Si torna a lavoro, e torna disponibile E...
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: 10:43.


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