Je lisais à propos du tableau de bits et cette question me vient à l'esprit. Pourquoi la plupart des machines ne peuvent-elles pas traiter des bits individuels? Est-ce à cause du DMA et parce que ça serait trop cher (mémoire/circuits) de garder une adresse pour chaque bit?Pourquoi la plupart des machines ne peuvent-elles pas traiter des bits individuels?
Répondre
Un bit est la plus petite unité de stockage en mémoire.
Un octet est le plus petit adressable unité de stockage en mémoire.
Il n'a pas de sens de faire la adressable bits car il ne peut contenir un 1
ou 0
dire true
ou false
informations contrairement à un octet qui peut transporter des informations meaningfull (vous pouvez encoder un jeu de caractères basé sur un octet par exemple ASCII).
Ceci est juste une explication intuitive. Je suppose qu'il existe d'autres raisons techniques de bas niveau, par ex. cela n'a pas de sens d'accéder à la mémoire pour seulement 1 bit (trop cher), c'est-à-dire faire un bus mémoire de 1 bit au lieu de 8-16 bits ou plus
Depuis, si vous enregistrez l'adresse juste pour les octets, la longueur de l'adresse est plus petite en 3 bits.
Merci pour la réponse, pourriez-vous m'en dire plus à ce sujet? –
- 1. Pourquoi la plupart des frameworks javascript utilisent des littéraux d'objet
- 2. UILabel- la plupart des polices ne fonctionnent pas (iPhone)
- 3. mysql_fetch_array() ne fonctionne pas correctement, manque la plupart des valeurs
- 4. B4ABridge ne fonctionne pas pour la plupart des fichiers
- 5. Asp.net pagemethods ne fonctionne pas avec la plupart des navigateurs
- 6. PyCUDA/Copperhead ne semble pas reconnaître les machines 64 bits
- 7. écrire des bits individuels dans un fichier en python
- 8. Trouver la plupart des enregistrements.
- 9. Pourquoi Java est utilisé par la plupart des banques?
- 10. Utilisation de bits sur des entiers 64 bits dans des systèmes 32 bits (pas d'extension php_gpm)
- 11. La fenêtre NSBorderlessWindowMask ne montrera pas NSPanels si elle n'est pas devant la plupart des fenêtres
- 12. QTableView ne s'affiche pas correctement sur des machines différentes
- 13. Comment placer des articles individuels dans des div individuels
- 14. Pourquoi les mots individuels ne sont-ils pas imprimés?
- 15. champs identiques dans la plupart des tables
- 16. ASP.Net MVC Style Bundle n'incluant pas la plupart des fichiers
- 17. Pourquoi mon application Android n'est-elle pas compatible avec la plupart des appareils?
- 18. Attraper la plupart des exceptions dérivées?
- 19. Pourquoi mon image est-elle correctement localisée dans la plupart des navigateurs mais pas dans IE?
- 20. Processeurs xslfo pour .net (machines 64 bits)
- 21. Vérification de l'état des machines?
- 22. Pourquoi la plupart des gens utilisent-ils des routes avec un ID utilisateur?
- 23. app.config et les machines 64 bits
- 24. Comment obtenir la plupart des sharedPreferences récents
- 25. imprimer des tableaux individuels?
- 26. Pourquoi la plupart des frameworks JavaScript utilisent-ils des noms de variables aussi courts?
- 27. Économiseur d'écran n'installe pas dans d'autres machines Panneau des préférences
- 28. Masse Supprimer des champs individuels
- 29. Outils pour la sauvegarde des machines VMware
- 30. La plupart des hôtes partagés gèrent-ils des fichiers gzippés?
pas un dma chose, dma n'aime même pas adresser les octets. La réponse est qu'il n'y a aucune valeur, les lignes d'adresse supplémentaires pour quelque chose qui n'est relativement jamais utilisé. La mémoire adressable octet est assez coûteuse. Les bus de mémoire sont maintenant dans la gamme de 32 à 64 bits, tout ce qui est plus petit que la largeur du bus est coûteux. Il est même préférable de déplacer les données dans des multiples de lignes de cache complètes. Les processeurs fournissent des instructions (décalage, et, etc.) pour l'échantillonnage des bits si nécessaire. –