Po prostu jestem zdezorientowany ... po prostu ile znaków w jednym kawałku?Ile bitów ma postać?
Odpowiedz
Istnieje 8 bitów w bajcie (zwykle w systemie Windows).
Jednakże, jeśli masz do czynienia z postaciami, będzie to zależeć od zestawu znaków/kodowania. Znak Unicode może składać się z 2 lub 4 bajtów, więc będzie to 16 lub 32 bity, podczas gdy Windows-1252 czasami niepoprawnie zwany ANSI ma tylko 1 bajt, a więc 8 bitów.
W azjatyckiej wersji systemu Windows i kilku innych cały system działa w trybie dwubajtowym, więc znak ma 16 bitów.
EDYCJI
komentarz Per Matteo, wszystkie współczesne wersje Windows użyciu 16-bity wewnętrznie za charakter.
niektóre starsze aplikacje nadal używają 1-bajtowych znaków z lokalnymi stronami kodowymi, ale wszystkie wersje NT systemu Windows działają wewnętrznie z 2-bajtowymi znakami (UCS-2 do NT4, UTF-16 z systemu Windows 2000 i przechowywane jako 'wchar_t'), nie tylko azjatyckie, i tak powinno robić się wszystkie nowsze aplikacje. (W przypadku Linuksa jest to zupełnie inna historia, ponieważ zwykle w całym systemie używany jest kod UTF-8). –
@Matteo: Zwróć uwagę, że w systemie Windows dwubajtowy to niekoniecznie to samo co Unicode. [Odnośnik] (http://msdn.microsoft.com/en-us/library/cc194788.aspx) –
@Cody Grey: tak, zazwyczaj gdy czytasz "dwubajtowe", kodujesz jego starsze azjatyckie rzeczy i są one przechowywane jako wielokrotne 'char', podczas gdy łańcuchy Unicode są przechowywane za pomocą typu' wchar_t'. Nawiasem mówiąc, po uruchomieniu NT 'wchar_t' wystarczyłoby do uniknięcia par zastępczych, ale teraz, gdy jest to kodowanie UTF-16, nawet łańcuchy' wchar_t' mogą mieć znaki o zmiennej długości, więc w systemie Windows znak Unicode może przyjmować od 2 do 4 bajty (1 lub 2 'wchar_t'). –
To zależy jaki jest charakter i jakie kodowanie jest w:
znak ASCII w 8-bitowym kodowaniu ASCII jest 8 bitów (1 bajt), choć można go zmieścić w 7 bitów.
Znak ISO-8895-1 w kodowaniu ISO-8859-1 to 8 bitów (1 bajt).
Znak Unicode w kodowaniu UTF-8 zawiera się między 8 bitami (1 bajt) i 32 bitami (4 bajty).
Kod Unicode w kodowaniu UTF-16 zawiera się w przedziale od 16 (2 bajty) do 32 bitów (4 bajty), chociaż większość typowych znaków pobiera 16 bitów. Jest to kodowanie używane wewnętrznie przez system Windows.
Znak Unicode w kodowaniu UTF-32 ma zawsze 32 bity (4 bajty).
Znak ASCII w UTF-8 ma 8 bitów (1 bajt), a w UTF-16 - 16 bitów.
Dodatkowe (nie-ASCII) znaki w ISO-8895-1 (0xA0-0xFF) zajęłyby 16 bitów w UTF-8 i UTF-16.
To by znaczyło, że jest trochę od 0.03125 do 0.125 znaków.
Ta odpowiedź bardzo pomaga podczas pracy z gniazdami, kodowaniem, tekstem i tak dalej. –
- 1. Czy stowarzyszenie ma postać "std :: typ_typowy"?
- 2. Ile rdzeni procesora ma heroku?
- 3. Ile elementów tablicy ma wartość zerową?
- 4. Ile pól ma "za dużo" w tabeli?
- 5. Ile buforów ma NetworkStream i TcpClient?
- 6. select2: określ, ile opcji ma być wyświetlanych
- 7. Dlaczego fixnums w Emacs ma tylko 29 bitów?
- 8. Rozmiar woluminu 8 bitów lub 16 bitów?
- 9. Przesunięcie bitów w lewo i odrzucenie bitów
- 10. Jak przekonwertować 8 bitów na 16 bitów w VHDL?
- 11. Postać w Unicode: koszyk
- 12. java powtórzyć postać
- 13. Usuń ostatnią postać edittext
- 14. ile pamięci ma węzeł przeznaczyć na wartości null w macierzach
- 15. Ile "rdzeni CUDA" ma każdy procesor wieloprocesorowy GPU?
- 16. Dynamicznie dowiedzieć się, ile wejść ma funkcja, Rakieta
- 17. algorytm za generowaniem tabeli wyszukiwania bitów wstecznych (8 bitów)
- 18. Projektowanie strumienia bitów w C#
- 19. 7-bitów do 0xEF
- 20. Wyczyść dolne 16 bitów
- 21. bitów maskowania Pythona
- 22. Przesuwanie zestawu bitów Java
- 23. Metaprogram do zliczania bitów
- 24. $ rozmiar, $ bitów, verilog
- 25. nielegalne xml postać na INSERT
- 26. zmieniając rozmiar postać z wątków
- 27. Dziwna postać po tablicy znaków
- 28. Swift - Zastąp postać w łańcuchu
- 29. rozmnażać Fisher liniowy dyskryminacyjna postać
- 30. złożyć Rails postać pilota z javascript
Twoje pytanie nie ma większego sensu. Myślę, że trochę kontekstu może pomóc - jakie są twoje próby osiągnięcia? –
Ile znaków jest bitowych? Trzy? b, i i t. –
@Skurmedel: Twoje zmiany zmieniły znaczenie pytania. Bity i bajty to ** nie ** to samo! –