human
Un gigaoctet, ou le concept d'octets. J'ai essayé d'expliquer un gigaoctet à quelqu'un aujourd'hui et je me suis retrouvé incapable de le faire. Peut-être que l'un d'entre vous pourrait m'aider ? Explique comme si j'avais cinq ans.
gpt
Alors qu'un excellent travail a été fait par d'autres commentateurs expliquant ce qu'est un octet, laissez-moi essayer d'expliquer * pourquoi * ces choses sont utilisées et ce qu'on en fait. Un interrupteur a deux positions : marche et arrêt. C'est vraiment, vraiment simple. Vous pourriez faire un interrupteur avec plusieurs positions, mais la chose la plus simple que vous puissiez faire est d'en avoir deux. Et , si vous êtes malin , vous pouvez faire toutes sortes de choses avec seulement deux positions par interrupteur si vous avez suffisamment d' interrupteurs ! Appelons " on " 1 et " off " 0 . Vous pouvez stocker des nombres , par exemple : le nombre 0 est 0 , 1 est 1 , 2 est 10 , 3 est 11 , 4 est 100 , 5 est 101 , 6 est 110 , 7 est 111 , etc . 127 , par exemple , est 1111111 . C'est facile à comprendre : le nombre le plus à gauche est le chiffre des unités , le nombre suivant en partant de la gauche vaut 2 , le suivant vaut 2 x 2 = 4 , le suivant vaut 4 x 2 = 8 , le ensuite 16 , puis 32 , puis 64 , et ainsi de suite . Donc le nombre 97 serait 1100001 ( 64 + 32 + 0 + 0 + 0 + 0 + 1 ) , et le nombre 20 serait 10100 ( 16 + 0 + 4 + 0 + 0 ) . C'est ce qu'on appelle * * binaire * * , donc chaque nombre est un * * chiffre b**inaire * * , ou un * * bit * * . Alors , quel nombre représenterait 0101110101011011 ? C'est une question piège ! Il ya 16 bits dans ce nombre , mais les ordinateurs n'ont * que * des commutateurs , pas d' espaces , alors comment savez - vous que ce n'est qu'un seul nombre ? Peut-être s'agit-il de deux nombres, 01011101 et 01011011, qui sont respectivement 93 et ​​91 (les nombres ne sont pas proches exprès ; je tapais juste au hasard). Peut - être qu'il n'y en a qu'un , 23899 . Comment le sais-tu ? Eh bien , vous ... non . Vous avez besoin d'un programme qui sait à quel point les choses sont importantes. Il a été décidé, cependant, que ces nombres viendraient en groupes de 8 commutateurs, ou 8 bits. Ce groupe de 8 bits est appelé un octet. Ce nombre que j'ai écrit est de 16 bits, soit 2 octets. Les octets sont une bonne unité. En utilisant quelque chose appelé ASCII, un caractère (enfin, un caractère commun) peut être stocké dans un seul octet. Cela inclut toutes les touches du clavier et leurs variantes décalées (a et A, par exemple), ainsi qu'un tas de caractères de contrôle. Chaque caractère a un numéro , et en ASCII de base , ils n'occupent en fait que les 7 derniers bits de l' octet : ils vont jusqu'à 127 . Par exemple , A est 65 ( 01000001 ) et a est 97 ( 01100001 ) . Un fichier texte ASCII ne contiendrait qu'une séquence d'octets, chaque octet représentant un caractère. J'ai dit que vous ne savez pas si ce nombre de 16 bits est composé de deux nombres distincts ou d'un seul. Comment pouvez-vous dire ? Vous avez besoin d'un programme qui sait cela. Comment savoir quel programme le sait ? Eh bien ... Chaque fichier a un * type * -- un format qui explique comment les bits encodent les informations . Par exemple, un fichier peut être un bitmap, où chaque bit indique si un pixel est noir ou blanc, ou où chaque octet indique combien de rouge, de vert ou de bleu il y a à ce pixel. Comment savez-vous que vous regardez un fichier où chaque bit est noir ou blanc ou où chaque octet (8 bits) est un canal de couleur ? Les premiers octets du fichier contiennent des métadonnées - des informations sur le contenu du fichier - et lorsque vous regardez un fichier, le système d'exploitation examine ces métadonnées et détermine le programme à utiliser pour l'ouvrir. Un programme, essayant de l'ouvrir, lit ces métadonnées et détermine comment traiter les informations. Mais ça ne peut pas toujours faire ça ! Votre jeu préféré sait comment gérer ses fichiers de jeu sauvegardés, mais pas votre éditeur de texte ! Votre éditeur de texte ne sait pas comment lire ces métadonnées , il lira donc le tout sous forme de texte . C'est pourquoi vous obtenez un tas de caractères absurdes ! Et comment le système d'exploitation sait-il même qu'il y a un fichier là-bas ? Cela, je ne le sais pas exactement, mais c'est la responsabilité du système d'exploitation de savoir où se trouvent les fichiers. « Le fichier » est essentiellement un pointeur vers l'endroit du disque dur où les bits du fichier sont écrits, les 0 et les 1. En fait , ce ne sont pas des 0 et des 1 -- les disques durs sont généralement une sorte de stockage magnétique , donc il y a un réseau de cellules sur le disque , chacune avec un petit aimant , et cet aimant peut soit faire face à haut ou bas ; l'un d'eux est un 0 et l'autre est un 1. Lorsque vous voulez les lire, une petite tête de lecture se dirige vers la cellule et mesure le champ magnétique. Quand on veut les écrire, la petite tête de lecture applique un courant pour retourner le bit si nécessaire. Quoi qu'il en soit, le travail du système d'exploitation est de garder une trace de l'endroit où chercher les bits d'un fichier. Lorsqu'un fichier est " effacé " , il n'est en fait pas effacé mais perdu ! Les données sont toujours là , mais le système d' exploitation ne se souvient pas où se trouvent les données , et si vous écrivez de nouvelles choses sur le disque , vous pourriez finir par écrire par dessus où se trouvaient ces données . C'est ainsi que fonctionne la « restauration » -- un utilitaire de « restauration » parcourt votre espace disque vide pour savoir s'il existe des fichiers intacts qui ont été perdus mais pas écrasés ! Au fait, lorsque vous formatez un disque dur, les données ne sont pas réellement supprimées, elles sont simplement perdues. Si vous avez des informations sensibles là-dessus, vous devrez prendre des mesures pour les cacher ! Quoi qu'il en soit , comme un octet est très petit , lorsque les gens veulent parler du nombre d' octets qu'un fichier occupe , ou du nombre d' octets de RAM qu'un programme prend pour s'exécuter , ils utilisent des préfixes métriques : kilo est 1000 , méga est 1000 kilo , et giga est de 1000 méga (et tera est de 1000 giga). Sauf que les informaticiens aiment les puissances de 2 et non de 10, donc comme 2 ^ 10 = 1024 est proche de 1000, ils ont juste décidé de dire qu'un kilo-octet c'est 1024 octets au lieu de 1000 octets. Ainsi, un Ko correspond à 1024 octets, un Mo à 1024 Ko et un Go à 1024 Mo (et un To à 1024 Go). Il y a bien longtemps, quand tout utilisait ASCII, un octet était un caractère, donc 1 Mo aurait été environ un million de caractères ! De nos jours, nous utilisons les données pour beaucoup d'autres choses. Un film , par exemple , est une longue séquence d' images , dont chacune est un tableau de pixels ( dont chacun a besoin de 3 octets , un pour le rouge , un pour le vert et un pour le bleu ) , ainsi que du son , qui est un groupe de valeurs échantillonnées à 44100 fois par seconde. Heureusement , nous avons des moyens de compresser ces données afin que les fichiers ne soient pas astronomiquement volumineux , mais c'est pourquoi les fichiers vidéo font quelque chose comme 700 Mo pour un film complet . Les DVD ont beaucoup plus d'espace que cela, donc il y a même de la place pour des fonctionnalités supplémentaires. Quoi qu'il en soit , j'espère que c'est bon ! Dites moi si vous avez d'autres questions !