2010-11-06 42 views
2

Je lisais un article sur les nombres binaires et il y avait quelques problèmes de pratique à la fin, mais il n'a pas donné les solutions aux problèmes. Le dernier est "Combien de bits sont nécessaires pour représenter l'alphabet?". Peut-il me dire la réponse à cette question et expliquer brièvement pourquoi? Merci.Comment utiliser les symboles binaires alphabet

Répondre

4

Vous auriez seulement besoin de 5 bits parce que vous comptez 26 (si nous ne prenons que des lettres majuscules ou minuscules). 5 bits vont compter jusqu'à 31, donc vous avez réellement plus d'espace que nécessaire. Vous ne pouvez pas utiliser 4 parce que cela ne compte que 15.

Si vous voulez les majuscules et minuscules alors 6 bits est votre réponse - 6 bits seront heureusement compter jusqu'à 63, alors que votre double alphabet a (2 * 24 = 48), laissant encore beaucoup de marge.

+0

Les anciens codes télégraphiques à 5 bits représentaient plus de 50 caractères différents sur 5 bits. Vous pouvez utiliser la même technique pour encoder l'alphabet en seulement 4 bits. (Ouais, c'est tricher ...) – Porculus

+0

@Porculus - 4 bits serait cool si binaire était point flottant hein! (4,7 bits) – Bojangles

+0

Ok, merci à tous. J'avais aussi obtenu 5 bits mais je pensais que c'était facile, mais apparemment j'avais raison. – agentbanks217

3

Cela dépend de votre définition de l'alphabet. Si vous voulez représenter un caractère de l'alphabet romain de 26 lettres (A-Z), alors vous avez besoin de log2 (26) = 4.7 bits. Évidemment, en pratique, vous aurez besoin de 5 bits. Cependant, étant donné un flux infini de caractères, vous pourriez théoriquement proposer un schéma de codage proche de 4,7 bits (il n'y aura plus de correspondance biunivoque entre les caractères individuels et les vecteurs de bits).).

Si vous parlez de représenter le langage humain réel, vous pouvez vous en sortir avec un nombre beaucoup plus bas que celui-ci (de l'ordre de 1,5 bit/caractère), en raison de la redondance. Mais c'est trop compliqué pour entrer dans un seul article ici ... (Google mots-clés sont "entropie", et "contenu de l'information").

+0

Beaucoup plus descriptif que mon message (ci-dessous) - merci pour l'info :) – Bojangles

2

Il y a 26 lettres dans l'alphabet, donc 2^5 = 32 est la longueur de mot minimum que contient toutes les lettres.

0

À quel point la représentation doit-elle être directe? Si vous avez besoin de 1: 1 sans couche de traduction, alors 5 bits feront l'affaire. Mais si une couche de traduction est une option, alors vous pouvez partir avec moins. Le code Morse, par exemple, peut le faire en 3 bits. :)