Newsgroup: it.comp.hardware
Titolo: 16.7 Milioni o solo 256 Mila colori?

Tempo fa feci qualche domanda su come funziona la palette, ovvero su
come il computer gestisce immagini a 256 colori (ad esempio).
La mia perplessità derivava dal fatto che il monitor accetta in
ingresso solo 3 colori, ognuno con la sua intensità codificata con un
certo numero di bit (diciamolo x da ora in poi), mentre dall'altra
parte il computer lavora, a volte, con un numero di colori che per
essere codificato richiede meno di 3x bit. (Ad esempio per 256 colori
mi bastano 8 bit)
Ho scoperto che esiste così una palette, ovvero una tabella, nella
quale si fa corrispondere ad ognuno dei codici relativi ai possibili
colori che il computer può gestire in quel momento, una sfilza di 3x
bit da mandare al monitor. (Nell'esempio una tabella di 256 righe da
3x bit l'una)
Ora scirvo un secondo messaggio, in quanto rileggendo meglio, e
pensandoci un po' non riesco a spiegarmi un altro dettaglio.
Mi è stato detto che in realtà i monitor vivono con 256k colori poiché
x=6, (quindi per la precisione 2^18 colori).
Io ero invece convinto che vivessero con 16M colori (per la precisione
2^24, ovvero x=8), anche a causa del fatto che ad esempio il DAC di
una mia scheda video (una vecchia Oak 087-X), viene riconosciuto da
molti programmi per la gestione della grafica (tipo Scitech Display
Doctor) come un DAC a 24 bit, e anche perchè si sente sempre parlare
di 'sti cacchio di 16.7M di colori.
Tutto quadrava, se non fosse per questo fatto dei 6 bit per colore,
quindi solo 2^6=64 tonalità per colore.
Non sono riuscito a venirne a capo, in quanto anche il manuale del mio
monitor (14'' analogico) nulla dice riguardo il numero di livelli di
tensione in ingresso che è possibile distinguere (se 64 o 256) per
ogni colore, nonostante riporti anche la disposizione dei pin del
connettore, con le tre coppie di fili per il rosso, il verde, ed il
blu.
E' possibile che esistano diversi modelli di monitor? Credo di aver
letto ogni tanto, nelle descrizioni dei monitor sui depliant: "monitor
a 16.7 milioni di colori". Intendevano che è in grado di usare x=8?
Chi ne sa di più e mi toglie dal dubbio?

3x bit l'una)
[...]
Non ho capito bene il tuo discorso, comunque tipicamente ci sono 2 modi piu'
diffusi per rappresentare i colori.
1- tramite tabella: ogni pixel e' rappresentato da un numero, in quale tramite
tabella viene messo in corrispondenza con una rappresentazione (tipicamente
tramite le tre componenti rgb) del colore. Viene usato spesso per piccoli
numeri di colori contemporaneamente visualizzabili (es. 256 colori). In ogni
caso i 256 colori, grazie alla tabella, vengono scelti in TUTTA la palette,
quindi se la tua scheda e' in grado di visualizzare anche immagini truecolor,
la rappresentazione dei singoli colori verra' fatta per cosi' dire "in
truecolor" (sto facendo un abuso di notazione), solo che ne potrai visualizzare
solo 256 alla volta nello stesso schermo.
2- senza tabella: il pixel viene rappresentato direttamente con una codifica
delle tre componenti. Se usi 24 bit userai 8 bit per componente, se ne usi 15 5
per componente, se usi "misure bastarde" come 16 o 32, avrai le
rappresentazioni dei colori "sbilanciate" nel senso che per esempio avrai 5-6-5
e quindi avrai una scelta piu' "dettagliata" per la componente blu.
Detto questo c'e' anche da dire che alcune vecchie schede hanno una
rappresentazione di 8 bit per componente, ma il ramdac a 6 per componente (!)
col risultato che l'output e' a 18 bit invece che 24. Comunque questo e' vero
solo per schede vecchie!
ciao,
gabriele.
--
Gabriele Zugliani - Student at Pisa University (Dept. of Computer Science)
NOTE: the email address in the header is modified; please remove "nzpm".
Linux infos: 
http://www.linux.org
 
http://sunsite.unc.edu/LDP

 colori. 
In teoria sono perfettamente daccordo, ma mi spieghi come mai sul
manuale del mio vecchio monitor VGA NCR alla voce colore visualizzabili
indicava un: 64^3 ossia 256K colori?
-- 
Sergio Aletta - 
nyr...@thebrain.net
                       Remember:
-Even when you win the rat race, you are still a rat-
Note: the address at the left of the @ is ROT13 encoded. 

solo per schede vecchie!
E' forse questo quello che intendeva dirmi quella persona? Io ero
convinto che nella tabella ci fossero 3 byte per riga, ovvero i 24 bit
per una rappresentazione "true color". Lui invece mi disse che ce ne
stavano solo 18!
E io non capivo, perché ero convinto (ora tentenno ma non sono neanche
convinto del contrario) che i monitor analogici dovessero in qualche
modo accettare in ingresso dei valori di tensione quantizzati, e
quindi c'era incongruenza tra i 256 possibili livelli che il monitor
poteva accettare, ed i 64 che la scheda era in grado di generare.
Aggiungo 2 bit a 0 e la corrispondenza c'è, ma i colori col tubo che
sono 16M, diventano 2^18=256K.
Effettivamente è chiaro che il discorso va diviso in due parti. Numero
di colori che la scheda video può effettivamente gestire, ovvero 2^N
dove N è la risoluzione in bit del RAMDAC per un colore; numero di
colori che il monitor gestisce. Per questo secondo caso mi convince
molto la spiegazione di Maurizio (mp), ma mi lascia ancora perplesso
il fatto che effettivamente io ho visto scritte tipo "monitor a 16
milioni di colori", e Sergio riporta "a 256K colori" dal suo monitor.
Bisognerebbe approfondire l'elettronica del monitor analogico, per il
secondo punto. La domanda invece verte sul primo: esistevano RAMDAC
che sputavano 6 bit per colore anziché 8, a quanto ho capito, ma è
acqua passata, mi dite.
Bhé, magari ora mi sposterò su it.hobby.elettronica, non so, visto che
vorrei sapere com'è la storia del monitor analogico, e anche un'altra,
ovvero: il DAC fa tre traduzioni da 8 bit o ne fa una da 24? Mi sembra
mostruoso pensare un DAC da 24 bit a 220MHz!
Che io sappia l'elettronica non ha fatto tutti questi miracoli, o
forse mi sbaglio...
Ciao a tutti, Piero.
N.b.
Se avete qualche altro commento da fare è ben accetto, mi interessa la
cosa.



 genere su un manuale ti mette dei dubbi sull'argomento!
Ebbene si, una definizione cosi' sibillina, mi ha fatta venire questo
dubbio, non si possono avere solo certezza nella vita, no? :-)


a 256, ma 256K colori su quale razza di scheda video si tiravano fuori?
La VGA a cui fai riferimento (quella standard) raggiunge i 16 colori a una
risoluzione di 640x480 punti, e 256 colori a 320x200 punti, il tutto con una
palette di 256k colori).
Quindi forse il manuale fa riferimento non al al numero massimo di colori
visualizzabili (16 o 256), ma al numero di colori "selezionabili" (256k,
appunto).
Resta il fatto che come l'hai descritta, tale frase del manuale del monitor
mi sembra se non sbagliata almeno forviante.
Vanio Preti