Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

8 bits, 16 bits, 32 ? qu'est ce au juste ?

40 réponses
Avatar
Drakariac
Bonjour à tous. Quelqu'un peut me dire vraiment pourquoi disions nous qu'une
machine etait 8 bits avec les premieres consoles et les CPC, puis 16 bits
avec les amiga, puis 32 avec les PC et bientot 64 ?. On m'a dit par exemple
que sur les machines 8 bits les programmeurs de jeux n'avaient à l'epoque
qu'une grille pour dessiner des sprites, idem pour les caractères ascii, ce
qui faisait des sprites et des caractères grossiers en escaliers trés
pixellisés.. Puis en 16 bits les programmeurs avec une plus grande grille,
donc pouvaient faire des details plus fins. Est ce un peu vrai cette
explication ?. Sinon combien de carré contenait une grille en 8 bits ?
combien en 16 et combien en 32 ?.

On m'a dit aussi que meme si nos PC tournent en 32 bits, les cartes
graphiques elles peuvent atteindre 128 bits, et comme ce sont elles qui
gerent l'affichage, les 32 bits du PC n'interviennent plus dans le jeu, ce
sont les 128 de la carte qui offrent de vrais details trés trés fins. Est ce
vrai ?

Dans le cas contraire pourquoi 8 bits alors ? 16 et 32 ? qu'est ce que cela
voulait vraiment dire ?

10 réponses

1 2 3 4
Avatar
G.T
Salut,

Ok, y'avait des registres sur 16 bits dedans, mais il ne servaient qu'aux
adresses, théoriquement (il s'agissait des index (X et Y) et du pointeur
de pile (S)).
A partir du moment où l'on veut adresser une certaine quantité de mémoire

(64 ko dans ce cas), il est nécessaire d'avoir des registres suffisants
(16 bits, car 2^16 = 64 ko), sauf à utiliser une astuce de segmentation
façon 8088 pour son adressage sur 20 bits.
Vrai. D'ailleurs, j'ai oublié le compteur programme (PC), lui aussi sur 16

bits, bien sûr.

AMA il s'agit de la taille du bus de données.
C'est à dire ? 16 bits est plutôt la taille du bus d'adresse.

Vrai que je me suis mal exprimé (c'est quoté comme un goret par Steuf, mais

ces sections ont été écrites de mes blanches mains), je pensais au bus de
données interne pour définir le type du CPU (8-16-32-...-1024, là, je vois
large).

a+,
G.T

205 Diesel & turbo-Diesel : http://205d.fr.st


Avatar
Lee Gwann
Drakariac wrote:
Bonjour à tous. Quelqu'un peut me dire vraiment pourquoi disions nous
qu'une machine etait 8 bits avec les premieres consoles et les CPC,
puis 16 bits avec les amiga, puis 32 avec les PC et bientot 64 ?. On
m'a dit par exemple que sur les machines 8 bits les programmeurs de
jeux n'avaient à l'epoque qu'une grille pour dessiner des sprites,
idem pour les caractères ascii, ce qui faisait des sprites et des
caractères grossiers en escaliers trés pixellisés.. Puis en 16 bits
les programmeurs avec une plus grande grille, donc pouvaient faire
des details plus fins. Est ce un peu vrai cette explication ?. Sinon
combien de carré contenait une grille en 8 bits ? combien en 16 et
combien en 32 ?.

On m'a dit aussi que meme si nos PC tournent en 32 bits, les cartes
graphiques elles peuvent atteindre 128 bits, et comme ce sont elles
qui gerent l'affichage, les 32 bits du PC n'interviennent plus dans
le jeu, ce sont les 128 de la carte qui offrent de vrais details trés
trés fins. Est ce vrai ?

Dans le cas contraire pourquoi 8 bits alors ? 16 et 32 ? qu'est ce
que cela voulait vraiment dire ?


Pour être simple et concis:
quand on parle de machines 8,16 ou 32 bits (voire 64 bits) cela
équivaut à la taille des registres internes de l'unité arithmétique et
logique du processeur (abrégé ALU pour les anglophones).
Que la plupart des processeurs 8 bits aient un bus d'adresse sur 16 bits
ne change rien au fait que l'on parle de machine 8 bits.
Pareil pour le 8088 des premiers PC: on parlait de machine 16 bits
bien qu'il n'avait qu'un bus de données sur 8 bits.
On ne se réfère pas au bus externes du processeur, mais à la taille
des registres de l'ALU (Arithmetic and Logical Unit)

Avatar
Steuf
"G.T" a écrit dans le message de
news:4087f59d$0$19482$
Salut,

"> Rappelle-toi le 6809 (Motorola, mais je suppose que tu connais), on
sait tous que c'est un µP 8 bits, bus de données sur 8 bits donc, mais
adresses sur 16bits (d'où 64Ko adressables, linéaires en plus). Ok,
y'avait

des registres sur 16 bits dedans, mais il ne servaient qu'aux adresses,
théoriquement (il s'agissait des index (X et Y) et du pointeur de pile
(S)).

AMA il s'agit de la taille du bus de données."
(ce bout-là, c'est à moi qu'il appartient).


Quesaco index X et Y pointeur de pile S... Bref, il vaut mieux donner
une


tite définition ou une explication simple au sujet non ?
Bon, OK, X et Y sont des registres d'index, on s'en sert pour faire les

opérations sur les adresses (offset d'une table, chaîne de caractère, tout
ce que tu veux - par exemple), ou des opérations sur 16 bits (eh ouais,
avec

un CPU 8 bits on peut aussi, parfois, faire des opérations dont les
opérandes et/ou le résultat sont sur 16 bits, ça prend du temps, ça reste
un

CPU 8 bits).
Pour le pointeur de pile, c'est pareil, il indique (dans le cas du 6809)
l'adresse RAM la plus basse utilisée par la pile (stack en anglais, genre
de

stockage temporaire pour le fonctionnement du CPU (interruptions, sous
programmes)).

Et maintenant que j'ai rajouté quelques lignes dont tu te moques (et t'as
bien raison, à moins que ça t'intéresses, mais je doute), je parlais ici
de

certains points du fonctionnement d'un CPU. Si ça c'est pas du hard, moi
j'me fais moine.



Non ça m'interesse, je suis serieux j'aime bien ça ! Merci.

--
Pour m'envoyer un E-Mail retirez NOSPAM de mon adresse...
Site Web : http://infomatiqueaide.free.fr/


Avatar
Annie D.
"G.T" wrote:

connaisse : le 68008 qui a le coeur 32 bits du 68000 avec un bus de
données externe sur 8 bits !]


Tiens, je le connaissais pas (faut reconnaître que je suis pas spécialiste
68k),


Les anciens s'en souviennent peut-être, il équipait le Sinclair QT (long
boîtier-clavier noir façon Amstrad CPC, micro-drives pour le stockage)
qui n'a pas connu le même succès que ses aînés ZX81 et ZX Spectrum.

AMA ça doit être assez lent en lecture/écriture.


Plutôt, oui. Déjà, le bus 16 bits du 68000/68010 n'aide pas pour les
transferts de mots de 32 bits, alors imaginez en 8 bits...


Avatar
Annie D.
"G.T" wrote:

Rappelle-toi le 6809 (Motorola, mais je suppose que tu connais), on
sait tous que c'est un µP 8 bits, bus de données sur 8 bits donc, mais
adresses sur 16bits (d'où 64Ko adressables, linéaires en plus). Ok, y'avait
des registres sur 16 bits dedans, mais il ne servaient qu'aux adresses,
théoriquement (il s'agissait des index (X et Y) et du pointeur de pile (S)).


Vous oubliez le pointeur de pile "utilisateur" U, qui fut AMA une
avancée importante pour le support de langages de "haut niveau" comme le
C. Très utile pour la gestion efficace des paramètres de sous-programmes
passés par la pile. Dans l'architecture x86, c'est le registre BP (base
pointer) qui remplit ce rôle.

Avatar
Annie D.
"Annie D." wrote:

Les anciens s'en souviennent peut-être, il équipait le Sinclair QT


Ma mémoire me joue des tours, il s'agit du QL...

Avatar
Eclice
Salut Kupee,

Pour info, de nos jours un octet est toujours égal a 8 bits et un
caractère ascii se code toujours sur un octet (moins même mais c'est pas
grave).


Euh, il y a deux codes ASCII : le standard, et l'étendu.
Le premier se code sur 7 bits, l'autre sur 8.

Tiens question subsidiaire : les textes en unicode sont ils affichés
plus gros parce que c'est codé sur 2 octets ?


?
Je ne vois pas le rapport entre une taille de police de caractère et de
l'unicode.

A+,

Eclice.


--
Sylvain Briole (a.k.a. Eclice)
E-Technik Doktorand / München
EMail : sbriole (à) free.fr

Avatar
Eclice
Salut Jean-Claude,

Les 1ers OS de PC (DOS à Windows 3.11) adressaient seulement sur 20 bits
(1Mo) même si le PC disposait de 1 Go.


Et l'EMS/XMS qui permettaient, sur des 286, d'adresser les 24 bits
dispo?

A+,

Eclice.


--
Sylvain Briole (a.k.a. Eclice)
E-Technik Doktorand / München
EMail : sbriole (à) free.fr

Avatar
Kupee
Eclice wrote:
Pour info, de nos jours un octet est toujours égal a 8 bits et un
caractère ascii se code toujours sur un octet (moins même mais c'est pas
grave).



Euh, il y a deux codes ASCII : le standard, et l'étendu.
Le premier se code sur 7 bits, l'autre sur 8.


C'est pas l'ANSI l'étendu ?

Tiens question subsidiaire : les textes en unicode sont ils affichés
plus gros parce que c'est codé sur 2 octets ?



?
Je ne vois pas le rapport entre une taille de police de caractère et de
l'unicode.


C'était un peu une boutade pour ceux qui confondent la taille de la
grille d'affichage avec le nombre de bits de la machine, voir du jeu de
caractères


Avatar
G.T
Salut,

Vous oubliez le pointeur de pile "utilisateur" U, qui fut AMA une
avancée importante pour le support de langages de "haut niveau" comme le
C. Très utile pour la gestion efficace des paramètres de sous-programmes
passés par la pile. Dans l'architecture x86, c'est le registre BP (base
pointer) qui remplit ce rôle.
Au niveau de l'ASM, suffit d'être rigoureux au niveaux des empilages /

dépilages de pile (psh/pul), mais ce n'est pas du haut niveau, je suis
d'accord.
Connais pas le registre U, je n'en trouve pas de trace non plus dans le
68HC11. En réalité, j'ai p-ê un peu bluffé, je connais pas le 6809 à fond,
mais le 68HC11, qui est un µC à coeur M68xx.

a+,
G.T

205 Diesel & turbo-Diesel : http://205d.fr.st

1 2 3 4