[Powered by Google Translate] NATE HARDISON: Dans la vidéo binaire, nous montrons comment représenter l'ensemble des nombres entiers, à partir de zéro sur place, en utilisant uniquement les chiffres zéro et un. Dans cette vidéo, nous allons utiliser la notation binaire représentent textes, lettres et autres, ainsi. Pourquoi devrions-nous pris la peine de le faire? Eh bien, sous le capot, un ordinateur n'est vraiment comprend zéros et de uns, les chiffres binaires, puisque ceux-ci peuvent être aisément représentés avec des choses électromagnétiques. Par exemple, pensez à la mémoire de votre ordinateur comme un long chaîne d'ampoules, de sorte que chaque ampoule individuelle représente un zéro si il est désactivé, et un si elle est activée. Au lieu d'utiliser un tas d'ampoules, certains modernes mémoire ce que cela en utilisant des condensateurs qui détiennent une faible facturer pour représenter un zéro et une charge élevée de représenter un une. Il existe d'autres techniques aussi bien. Quoi qu'il en soit, afin de stocker quoi que ce soit dans la mémoire, il faut d'abord le convertir en quelque chose qui peut être fait représentés dans le matériel physique. Donc, nous devons penser à comment nous pourrions représenter les lettres avec notation binaire. En anglais, nous avons 26 lettres dans l'ordre alphabétique, A, B, C, D, et ainsi de suite, jusqu'à à Z. Nous pouvons assigner chacun des ceux-ci un certain nombre, disons zéro à 25, puis à l'aide notation binaire, on peut représenter chaque nombre sous forme de séquence de zéros et de uns. Ce n'est pas trop mauvais. Toutefois, cela ne va pas être suffisant. Avec ce système, nous ne pouvons pas fait la distinction entre les lettres majuscules et minuscules. Si nous voulons que notre ordinateur pour pouvoir faire la différence entre les deux cas, nous avons besoin de 26 autres numéros. Et que dire de points, virgules, et autres signes de ponctuation? Sur mon clavier, j'ai 32 de ceux-ci, y compris tous les caractères spéciaux tels que l'accent circonflexe et l'esperluette. C'est sans compter les caractères numériques, de zéro à neuf, puisque nous voulons toujours être en mesure de saisir des nombres en décimal la notation sur l'ordinateur, même si l'ordinateur n'est vraiment comprend notation binaire sous le capot. Et enfin, nous aurons besoin pour représenter un caractère espace pour que notre barre d'espace fonctionne. Donc, trouver comment représenter le texte sur l'ordinateur prend un peu plus que ce que nous aurait pu croire initialement. En outre, supposons que nous avons ensuite mis au point notre propre codage schéma pour représenter les caractères que des chiffres. Cependant nous décidons de coder les caractères seront inévitablement arbitraire, comme nous l'avons vu lorsque nous avons parlé de l'utilisation de la numéros de zéro à 25 pour représenter les lettres A à Z. Pourquoi ne pas utiliser 10 à 35, de sorte que nous pouvons sauver de zéro à neuf pour les caractères numériques? Il n'ya pas de véritable raison, nous n'avons pas choisi ce qui me semblait mieux pour nous. Retour au début des années 1960, ce fut un réel problème. Fabricants d'ordinateurs utilisant différents ont été schémas de codage différents, et cela rendait la communication entre les différentes machines d'une tâche très difficile. L'American National Standards Institute ANSI, formé un comité chargé d'élaborer un projet commun. Et en 1963, l'American Standard Code for information Interchange, plus communément connu sous le nom ASCII, est né. ASCII a été conçu comme un encodage sur sept bits, ce qui signifie que chaque caractère est représenté par une combinaison de sept zéros et de uns. Avec ces deux valeurs possibles, zéro ou un, pour chaque des sept bits, il existe deux à la septième ou 128 caractères qui peuvent être représentés par la ASCII Schéma d'encodage. Donc 128 caractères ressemble beaucoup, non? Eh bien, rappelez-vous qu'il ya 26 lettres minuscules Anglais, 26 autres lettres majuscules, chiffres, 10 caractères 32 signes de ponctuation et les caractères spéciaux, et un caractère d'espacement. Cela nous met à 95, donc nous avons encore 33 caractères que nous peut représenter. Alors qu'est-ce qui reste? Eh bien, à l'époque de l'élaboration d'ASCII, télétype machines à écrire, qui sont utilisés pour envoyer des messages à travers un réseau, étaient très répandues. Et ces machines avaient des caractères supplémentaires utilisés pour les contrôler, par exemple, de leur dire quand pour déplacer le la tête d'impression sur une ligne, le saut de ligne ou touche de ligne nouvelle, quand passer à la marge de gauche, le retour du chariot, ou tout simplement retourner la clé, et quand retourner un local, caractère de retour arrière, et ainsi de suite. Ces caractères sont appelés des caractères de contrôle, et ils constituer le reste de l'ensemble ASCII. Donc, si on regarde une table ASCII, on voit que le premier 32 numéros, de zéro à 31, sont réservés pour la commande caractères. Mais nous venons de dire qu'il y avait 33 caractères de contrôle. Quel est le problème? Eh bien, le chiffre zéro et 127, le premier et le dernier de la Jeu ASCII, ont des configurations binaires spéciales, tous les zéros et les celles, respectivement. Les concepteurs de l'ASCII a donc décidé, à préserver ces chiffres pour les caractères spéciaux supplémentaires, à savoir le caractère nul et le caractère DEL. Nulle et DEL étaient destinés pour le montage du ruban de papier, qui a utilisé être un moyen de stockage de données commune. Bande de papier était littéralement juste une longue bande de papier, et à intervalles réguliers sur le ruban, vous coup de poing trous pour stocker les données. En fonction de la largeur de la bande, chaque colonne serait capable d'accueillir cinq, six, sept ou huit bits. Pour représenter un bit zéro, vous ne faites rien pour le ruban, vous feriez il suffit de laisser un espace vide. Pour un peu un, vous percez un trou. Le caractère nul aurait suffit de laisser une colonne vide, indiquant que des zéros. Et le caractère DEL doit perforer une colonne pleine de trous par le biais de votre bande. Par conséquent, vous pouvez utiliser le caractère SUPPR pour supprimer informations. Imaginez prendre un bulletin de vote rempli, puis sur poinçonner les trous non perforé. Vous invalider le scrutin, car il est impossible de dire ce que les voix originales étaient. Alors que le caractère DEL est encore utilisé est le moderne Touche Suppr, le caractère nul est venu à être utilisé comme caractère de fin de chaînes C et certains autres formats de données. Vous pouvez le savoir que le caractère barre oblique inverse zéro, puisque c'est la façon dont nous nous la représentons par écrit. Mais revenons à notre table ASCII. Après les 32 premiers caractères de contrôle venir le 95 caractères imprimables. Il ya des décisions en couple design cool valeur parlons ici. Tout d'abord, les chiffres décimaux, de zéro à neuf, correspondent aux numéros 48 à 57, ce qui semble banale jusqu'à ce que nous regardons les chiffres 48 à 57 écrite en notation binaire. Si nous faisons cela, nous voyons que le caractère numérique, zéro, correspond à 0110000, une des cartes pour 0110001, deux à 0110010, et ainsi de suite. Voir le modèle? Chaque personnage chiffre est mappé sur son correspondant équivalent en notation binaire, avec le préfixe 011. Prochaine étape, vous remarquerez que les lettres majuscules commencer à 65 ans, avec A majuscule, mais les lettres minuscules ne commencent pas avant 97. Donc, il ya 32 places entre les deux. Cela semble bizarre. Ils sont seulement 26 lettres dans l'alphabet. Pourquoi les séparer comme ça? Encore une fois, si l'on regarde les représentations binaires, nous pouvons voir un modèle. Majuscule A est représenté par 1000001, et un minuscule est représenté par 1100001. Majuscules B est représenté par 1000010, et b minuscule est représenté par 1100010. Pouvez-vous dire ce qui se passe ici? Le bit qui est le deuxième à partir de la gauche, dans les deux à la cinquièmes, de la position 32ths, est égal à 0 pour l'ensemble de la majuscule lettres, et 1 pour toutes les lettres minuscules. Cela signifie que la conversion des majuscules aux minuscules, et vice-versa, est une question d'une bascule peu simple. Donc, cela nous amène à la fin de la table ASCII. Pouvez-vous penser à quelque chose que nous avons oublié? Eh bien, que dire de la enye espagnol, ou l' Alphabets cyrilliques ou grecs? Et que diriez-vous des caractères chinois? Il ya beaucoup qui a été laissé de côté de l'ASCII. Cependant, un autre standard Unicode a été appelé développé pour couvrir l'ensemble de ces personnages et bien plus encore. Mais c'est un sujet pour une autre fois. Mon nom est Nate Hardison. C'est CS50.