Сколько байтов в бите: Вы заблудились на сайте компьютерного мастера

Содержание

Кодирование символов. Байт. Биты, байты

На основании одной ячейки информационной ёмкостью 1 бит можно закодировать только 2 различных состояния. Для того чтобы каждый символ, который можно ввести с клавиатуры в латинском регистре , получил свой уникальный двоичный код, требуется 7 бит. На основании последовательности из 7 бит, в соответствии с формулой Хартли, может быть получено N=2 7 =128 различных комбинаций из нулей и единиц, т.е. двоичных кодов. Поставив в соответствие каждому символу его двоичный код, мы получим кодировочную таблицу . Человек оперирует символами, компьютер – их двоичными кодами.

Для латинской раскладки клавиатуры такая кодировочная таблица одна на весь мир, поэтому текст, набранный с использованием латинской раскладки, будет адекватно отображен на любом компьютере. Эта таблица носит название ASCII (American Standard Code of Information Interchange) по-английски произносится [э́ски ], по-русски произносится [а́ски ]. Ниже приводится вся таблица ASCII, коды в которой указаны в десятичном виде. По ней можно определить, что когда вы вводите с клавиатуры, скажем, символ “*”, компьютер его воспринимает как код 42 (10) , в свою очередь 42 (10) =101010 (2) – это и есть двоичный код символа “*”. Коды с 0 по 31 в этой таблице не задействованы.

Таблица 8.

Таблица символов ASCII

код символ код символ код символ код символ код символ код символ
Пробел . @ P » p
! A Q a q
» B R b r
# C S c s
$ D T d t
% E U e u
& F V f v
» G W g w
( H X h x
) I Y i y
* J Z j z
+ : K [ k {
, ; L \ l |
M ] m }
. n ~
/ ? O _ o DEL

Чтобы хранить также и коды национальных символов каждой страны (в нашем случае – символов кириллицы) требуется добавить еще 1 бит, что увеличит количество уникальных комбинаций из нулей и единиц вдвое, т.е. в нашем распоряжении дополнительно появится 128 свободных кодов (со 128-го по 255-й), в соответствие которым можно поставить символы русского алфавита.

Таким образом, отведя под хранение информации о коде каждого символа 8 бит, мы получим N=2 8 =256 уникальных двоичных кодов, что достаточно, чтобы закодировать все символы, которые можно ввести с клавиатуры.

Так мы подошли к необходимости познакомиться с еще одной базовой единицей измерения – байтом.

Байт — последовательность из 8 бит.

1 байт = 2 3 бит = 8 бит.

На основании одного байта можно получить 2 8 =256 уникальных двоичных кодов.

В современных кодировочных таблицах под хранение информации о коде каждого символа отводится 1 байт.

1 символ = 1 байт.

В байтах измеряется объем данных (V) при их хранении и передаче по каналам связи.

Например, текст “Добрый день!” занимает объем равный 12 байтам.

Биты в байте нумеруются с конца с 0-го по 7-й. Минимальная комбинация на основании одного байта – восемь нулей, максимальная – восемь единиц. Рис. 18а.

11111111 (2) =2 7 +2 6 +2 5 +2 4 +2 3 +2 2 +2 1 +2 0 =128+64+32+16+8+4+2+1=255 (10)

При хранении на физическом уровне каждый байт может быть реализован, например, на базе восьми конденсаторов, каждый из которых либо разряжен (0), либо заряжен (1). Рис. 18b.

Возвращаясь к кодировочным таблицам, заметим, что на сегодняшний день в использовании не одна, а несколько кодировочных таблиц, включающих коды кириллицы, – это стандарты, выработанные в разные годы и различными учреждениями. В этих таблицах различен порядок, в котором расположены друг за другом символы кирилличного алфавита, поэтому одному и тому же коду соответствуют разные символы. По этой причине, мы иногда сталкиваемся с текстами, которые состоят из русских букв, но в бессмысленной для нас последовательности.

Например, текст “Компьютерные вирусы ”, введенный в кодировке Windows-1251 в кодировке КОИ-8 будет отображен так: ”лПНРШАФЕТОШЕ ЧЙТХУЩ ”.

Таблица 9.

Несоответствие кодов символов в различных кодировках кириллицы.

Эта проблема разрешима — на каждом компьютере найдутся все основные кодировочные таблицы, и если тест выглядит неадекватно, нужно попробовать перекодировать его, просто указав использовать другую кодировочную таблицу. Но наличие такой проблемы, конечно, вносит неудобства.

Используя 8-битную кодировочную таблицу мы не сможем адекватно увидеть на мониторе и тексты, созданные на тех языках, где используются символы, отличные от латинских и кирилличных, например символы с умляутами в немецком языке.

Юникод. UTF-8

Теоретически давно существует решение этих проблем. Оно называется Unicode (Юникод). Unicode – это кодировочная таблица, в которой для кодирования каждого символа используется 2 байта, т.е. 16 бит. На основании такой таблицы может быть закодировано N=2 16 =65 536 символов.

Юникод включает практически все современные письменности, в том числе: арабскую, армянскую, бенгальскую, бирманскую, греческую, грузинскую, деванагари, иврит, кириллицу, коптскую, кхмерскую, латинскую, тамильскую, хангыль, хань (Китай, Япония, Корея), чероки, эфиопскую, японскую (катакана, хирагана, кандзи) и другие.

С академической целью добавлены многие исторические письменности, в том числе: древнегреческая, египетские иероглифы, клинопись, письменность майя, этрусский алфавит.

В Юникоде представлен широкий набор математических и музыкальных символов, а также пиктограмм.

Для символов кириллицы в Юникоде выделено два диапазона кодов:

Cyrillic (#0400 — #04FF)

Cyrillic Supplement (#0500 — #052F).

Но внедрение таблицы Unicode в чистом виде сдерживается по той причине, что если код одного символа будет занимать не один байт, а два байта, что для хранения текста понадобится вдвое больше дискового пространства, а для его передачи по каналам связи – вдвое больше времени.

Поэтому сейчас на практике больше распространено представление Юникода UTF-8 (Unicode Transformation Format). UTF-8 обеспечивает наилучшую совместимость с системами, использующими 8-битные символы. Текст, состоящий только из символов с номером меньше 128, при записи в UTF-8 превращается в обычный текст ASCII. Остальные символы Юникода изображаются последовательностями длиной от 2 до 4 байтов. В целом, так как самые распространенные в мире символы – символы латинского алфавита — в UTF-8 по-прежнему занимают 1 байт, такое кодирование экономичнее, чем чистый Юникод.

Задачи

1. В кодируемом английском тексте используется только 26 букв латинского алфавита и еще 6 знаков пунктуации. В этом случае текст, содержащий 1000 символов можно гарантированно сжать без потерь информации до размера:

2. Словарь Эллочки – «людоедки» (персонаж романа «Двенадцать стульев») составляет 30 слов. Сколько бит достаточно, чтобы закодировать весь словарный запас Эллочки? Варианты: 8, 5, 3, 1.

4.4. Единицы измерения объема данных и ёмкости памяти: килобайты, мегабайты, гигабайты…

Итак, в мы выяснили, что в большинстве современных кодировок под хранение на электронных носителях информации одного символа текста отводится 1 байт. Т.е. в байтах измеряется объем (V), занимаемый данными при их хранении и передаче (файлы, сообщения).

Объем данных (V) – количество байт, которое требуется для их хранения в памяти электронного носителя информации.

Память носителей в свою очередь имеет ограниченную ёмкость , т.е. способность вместить в себе определенный объем. Ёмкость памяти электронных носителей информации, естественно, также измеряется в байтах.

Однако байт – мелкая единица измерения объема данных, более крупными являются килобайт, мегабайт, гигабайт, терабайт…

Следует запомнить, что приставки “кило”, “мега”, “гига”… не являются в данном случае десятичными. Так “кило” в слове “килобайт” не означает “тысяча”, т.е. не означает “10 3 ”. Бит – двоичная единица, и по этой причине в информатике удобно пользоваться единицами измерения кратными числу “2”, а не числу “10”.

1 байт = 2 3 =8 бит, 1 килобайт = 2 10 = 1024 байта. В двоичном виде 1 килобайт = &10000000000 байт.

Т.е. “кило” здесь обозначает ближайшее к тысяче число, являющееся при этом степенью числа 2, т.е. являющееся “круглым” числом в двоичной системе счисления.

Таблица 10.

В связи, с тем, что единицы измерения объема и ёмкости носителей информации кратны 2 и не кратны 10, большинство задач по этой теме проще решается тогда, когда фигурирующие в них значения представляются степенями числа 2. Рассмотрим пример подобной задачи и ее решение:

В текстовом файле хранится текст объемом в 400 страниц. Каждая страница содержит 3200 символов. Если используется кодировка KOI-8 (8 бит на один символ), то размер файла составит:

Решение

1) Определяем общее количество символов в текстовом файле. При этом мы представляем числа, кратные степени числа 2 в виде степени числа 2, т.е. вместо 4, записываем 2 2 и т.п. Для определения степени можно использовать Таблицу 7.

Символов.

2) По условию задачи 1 символ занимает 8 бит, т.е. 1 байт => файл занимает 2 7 *10000 байт.

3) 1 килобайт = 2 10 байт => объем файла в килобайтах равен:

Задачи

1. Сколько бит в одном килобайте?

— &10000000000000.

2. Чему равен 1 Мбайт?

1024 байта;

1024 килобайта;

1000000 бит;

1000000 байт.

3. Сколько бит в сообщении объемом четверть килобайта? Варианты: 250, 512, 2000, 2048.

4. Объем текстового файла 640 Kb . Файл содержит книгу, которая набрана в среднем по 32 строки на странице и по 64 символа в строке. Сколько страниц в книге: 160, 320, 540, 640, 1280?

5. Досье на сотрудников занимают 8 Mb . Каждое из них содержит 16 страниц (32 строки по 64 символа в строке). Сколько сотрудников в организации: 256; 512; 1024; 2048?

Двоичный разряд, двоичное число по-английски Bi naryDigit . Из трех букв этих слов образовали звонкое словоbit , которое уже было в английском языке (bit– кусочек, кусок). В информатике оно имеет то же значение, что иBi naryDigit , но ему добавили и новый смысл.

Бит – единица информации и единица представления информации в компьютере.

Бит (один разряд двоичного числа) может принимать два значения: 0 или 1. В десятичных числах один разряд может принимать значения от 0 до 9. Если число одноразрядное (однобитовое), то 0 или 1 – это значение числа и цифры числа, которые в этом случае совпадают.

Поскольку компьютер может обрабатывать только двоичные числа, кодировать информацию можно только этими двоичными числами. В этом случае мы можем сказать, что азбука, используемая для кодирования информации, состоит из двух символов (чисел) 0 и 1.

Одноразрядным двоичным числом, т. е. одним битом, можно закодировать всего два символа, так как он принимает только два значения – 0 или 1. А десятичное одноразрядное число позволит нам закодировать 10 символов, ибо оно может иметь 10 значений – от 0 до 9.

Теперь используем для кодирования двухразрядные числа. Тогда в десятичной системе счисления можем использовать для кодирования числа от 0 до 99, т.е. 100 чисел. И закодировать можем 100 символов, в 10 раз больше, чем при кодировании одноразрядными числами.

Аналогичная закономерность имеет место и при увеличении разрядности двоичных чисел. Двухразрядным двоичным числом можем закодировать 4 символа, так как возможных чисел тоже 4: 00, 01, 10, 11, т. е. в два раза больше, чем одноразрядным. Можно проверить, что трехразрядным двоичным числом можно закодировать символов в 2 раза больше, чем двухразрядным. Обобщая эту закономерность, получаем простую формулу для определения количества символов S , которое можно закодироватьn – разрядными двоичными числами:

S = 2 n

Двоичное n -разрядное число, которое используется для кодирования информации в компьютере, называется байтом .

Из этого определения следует и другое определение байта:

Байт – единица обработки информации в компьютере, так как по значению байта можно узнать, какой символ им закодирован.

Если используются для кодирования другие n-разрядные двоичные числа, то они обязательно берутся кратными байту.

Байт сначала имел 6, затем 7 разрядов (битов), а теперь он равен 8-ми битам.

Одно из значений перевода английских слов bit и bite кусочек. Считая кусочек частью целого, бит, действительно, – часть двоичного числа. Если байтом кодируются буквы, символы, из которых строятся слова, то и байт выражает часть слова.

Байты используются также для измерения объема памяти, оперативной и внешней, размеров файлов. Но в этом случае применяются более крупные единицы измерений. Например, Килобайты (Кб), Мегабайты (Мб) Гигабайты (Гб), Терабайты (Тб):

1 Кб = 1024 байт = 2 10 байт

1 Мб = 1024 Кб= 2 10 Кб

1 Гб = 1024 Мб= 2 10 Мб

1 Тб = 1024 Гб= 2 10 Гб

Кодирование целых и действительных чисел

Целые числа кодируются двоичным кодом достаточно просто — достаточно взять целое число и делить его пополам до тех пор, пока в остатке не образуется ноль или единица. Полученный результат деления снова так же делить. И эту процедуру деления продолжаем до тех пор, пока результат деления не окажется меньше 2. Совокупность остатков от каждого деления, записанная справа налево вместе с последним остатком, и образует двоичный аналог десятичного числа.

19:2 = 9 + 1 9:2=4+1 4:2=2+0 2:2 = 1

Таким образом, 19 10 = 1011 2 .

Для кодирования целых чисел от 0 до 255 достаточно иметь 8 разрядов двоичного кода (8 бит). Шестнадцать бит позволяют закодировать целые числа от 0 до 65 535, а 24 бита — уже более 16,5 миллионов разных значений.

Для кодирования действительных чисел используют 80-разрядное кодирование. При этом число предварительно преобразуется в нормализованную форму:

3,1415926 = 0,31415926-10 1

300 000 = 0,3-10 6

123 456 789 = 0,123456789 10 1 /

Первая часть числа называется мантиссой, а вторая — характеристикой. Большую часть из 80 бит отводят для хранения мантиссы (вместе со знаком) и некоторое фиксированное количество разрядов отводят для хранения характеристики (тоже со знаком).

Прокоментируй статью, хотя бы пару слов!

Комментарии:

    Мм…
    Я — Дмитрий Липин. Круто)

    Рада что вам понравилось, Дмитрий. =)

    И тут позволю себе немножко потроллить (конечно, не со злобой, а любя;):

    я слышала такие забавные заблуждения, относительно фундаментальных основ, как:

    в байте 8 бит потому что 8 — степень двойки
    и чуть дальше
    вероятно компьютеры работают несколько быстрее с мелкими блоками памяти кратными двум
    ;)? А 32-битные процессоры/ОС точно ни при чем? 😉

    И, на мой взгляд, небольшой, но всё же фактический ляпчик:

    Вторая версия Юникода (UCS-2), стала называться UTF-16
    Насколько я в курсе: во-первых, UTF-16 — это расширение бывшего UCS-2, той самой «первой двухбайтной кодовой таблицы на 65k символов», относившейся к Юникоду 1.1 и ниже — именно за счет добавления «суррогатных символов» и еще двух опциональных байт.3 не очень поняла троллинг.
    Разрядность процессора возможно влияет, но позвольте, а как быть с 16 битными процессорами или 64х битными? =) http://www.ixbt.com/cpu/cpu-bitness.shtml
    Как туда запихнуть 32 битный символ? Будет ли влиять порядок байтов? Как это зависит от Ось или файловой системы? =) Я лично склоняюсь что 4 байта вместо трёх только из-за проблемм кратности (в секторах и т.п.).
    Насчёт уникода даже не знаю что поправить, во многом руководствовалась английской википедией, где основная статья была UCS-2, а сейчас UTF-16, (так же стало и в русской). В русской вики сейчас указаны некоторые различия между ними. Крайне рекомендую всем кому интересно.
    Рада что понравилось.

    Троллинг был в «магических» свойствах двойки:). Насчет разрядности — отталкивался в основном от той же википедии (напр. абзац про юникс-подобные системы). Да и просто, на мой взгляд, логично это. С 64-битными системами никаких проблем не вижу (работают же на таких процессорах 32-битные ОС и 80% нынешнего софта:), а 16-битным, боюсь, просто не дано (на то и есть другие представления, влезающие в меньшую разрядность).

    А переименование статей, как я понял, связано с тем, что термин UCS-2 признан устаревшим, сыгравшим свою роль в появлении UTF-16, но не больше того.

    Ну как не дано-то 16-битным системам работать с 32 битными знаками? А если сделать кодировку 64 битную, с ней 32 битный процессор не справится? Пруф в студию, всем будет интересно =).
    Вы утверждаете если бы кодировка была 24-битной она бы не работала на 32битном процессоре? В чём отличие от работы с 24 битным цветом? А с 48 восьми битным изображением как 32 битные процессоры работают?
    В абзаце про unix-подобные системы написано только то, что utf8 в них популярней чем utf16 например. До какого-то момента на koi8 работали, и ничего.
    Говоря о том что компьютеры работают быстрее с блоками памяти кратными двум я имела ввиду, что если в секторе N на диске (или в буфере памяти) вам надо прочитать Z-й символ, вам нужно умножать это количество на 3, а это работает в 2 раза медленнее чем умножение на 4 при должной оптимизации. Т.е. вместо 1 побитового сдвига у вас будет сдвиг + сложение.
    Говоря о преимуществе того что в сектор диска попадает кратное количество символов — я имею ввиду то что для чтения одного символа гарантированно нужно прочитать один сектор диска (на 128 или 512 байт, это задаётся в фс), не больше. Нет ситуации когда символ лежит на стыке секторов, а при фрагментации в разных частях диска.

    Согласен, про «невозможность» работы с 32-битными символами из-под меньшей разрядности я жестоко «прогнал» :). Но согласитесь, что возможность оперировать каждым символом как целым машинным словом (т.е., например, перекинуть его из одного регистра памяти в другой целиком за один такт процессора) намного удобнее, чем собирать его по частям в каком-то временном буфере, да еще постоянно перепроверяя, целый символ туда попал или только одна-две трети. Я имел в виду вот эту фразу из того абзаца:

    Для работы с отдельными символами строки обычно перекодируются в UCS-4, так что каждому символу соответствует машинное слово.

    Что же до удобств хранения/адресации в памяти, то, на мой взгляд, ваш же пример с 24-битным цветом этой версии слегка противоречит, ведь принципиальную разницу действительно сложно уловить. Так что, когда дорого место, можно, вроде, и дополнительную операцию себе позволить (правда, с цветом всё-таки есть нюанс — эти 24 бита на самом деле 3 однобайтных компонента, к которым часто приходится обращаться по отдельности)…

    Так что при близком рассмотрении «магические свойства» у двойки в компьютерном мире всё-таки есть, и, возможно, 8-битные байты выжили в конкурентной борьбе с «менее круглыми» двоичными значениями не так уж случайно… кто знает? 😉

    Подождите, вы меня уже путаете (равно как с вопросом о таблицах, на который я щас пытаюсь сделать testcase). Я в статье сказала — что для быстродействия многие текстовые редакторы оперируют с текстом в кодировке utf32 (ucs-4). Согласны?
    wikipedia.org/wiki/Машинное_слово Размер машинного слова в AMD64 — 64 бита, согласны?
    При показе символов на экран процессору вообще всё равно сколько в символе байт, так же как с цветом, согласны?
    При операциях по конвертации из одной кодировки в другую процессор оперирует кусками по 8 бит, а не с 32битным числом, которое кстати зависит от порядка байтов (big-endian , little-endian), согласны?
    В utf8 — трёхбайтные часто встречаются например для китайского алфавита, согласны?
    Так при чём тут вообще регистры процессора и количество байт в символе utf?

    Я имел в виду именно удобство внутреннего представления в программе: 1 такт — 1 маш. слово — 1… ну или 2 (в AMD64:) символа Юникода в UCS-4, и никаких хлопот с поиском границ между символами:).

    Насчет вывода на экран, обмена данными и вообще абсолютной нерелевантности процессора, кластеров на диске и прочих низкоуровневых тонкостей к количеству байт произвольного UTF (формата представления) — согласен полностью. Но изначально вопрос был про то, «откуда пошли именно 32 бита». И вот что пишет англ. википедия :

    The original ISO 10646 standard defines a 31-bit encoding form called UCS-4 , in which each encoded character in the Universal Character Set (UCS) is represented by a 32-bit friendly code value in the code space of integers between 0 and hexadecimal 7FFFFFFF.

    Because only 17 planes are actually in use, all current code points are between 0 and 0x10FFFF. UTF-32 is a subset of UCS-4 that uses only this range.


    В общем, чем дальше — тем только запутаннее, страньше и чудесатее! Правда, всецело полагаться на википедию тоже нельзя — сам не так давно убирал из русской версии утверждение, что «в HTML теги могут частично перекрываться»..:)
  • задом нам ерёд
    Исправьте пожалуйста.

    исправила

    я ничего не понял =)

    биты… байты… главное — хвост! (с)

    Гениально!
    Спасибо Вам — за введение и лаконичный набор ссылок.

    Рада что вам понравилось.

    Извините но никак не могу понят почему только 8 бит в байте………….

    Ввиду обратной совместимости, в байте именно 8 бит. Ведь гораздо проще группировать байты, если хочется получить сущность большего порядка. чем делать байт размером в 9 бит допустим. Причём потребность в этих сущностях была уже давно, поэтому рассматривая многие языки программирования (хоть тот же паскаль или си) — можно заметить тип переменной равный двум байтам — «машинное слово» (word), или «двойное слово» — (double word, dword) равное 4-м байтам. Именно на алгоритмах группировки байт в сущность и работают т.н. «многобайтные кодировки», которые я рассмотрела в статье. (Ваш Кэп).

    В байте 1024 бита. Дальше не читал. В большинстве вычислительных архитектур байт — это минимальный независимо адресуемый набор данных. В байтах может быть разное количество битов. В истории компьютерной техники существовали решения с иными размерами байта (например, 6, 32 или 36 битов). А вот в килобайте — 1024 байта. В мегабайте — 1024 килобайта. В гигабайте — 1024 мегабайта. В терабайте — 1024 гигабайта. И так далее.

    to аноним:
    Ахахаха. Я не читала весь ваш комментарий, но не согласна с ним! =)
    Нет, серьёзно, это самый бесполезный комментарий этого блога.

    хотел написать мол это дико что у нас нынешнее образование наитупейшее, что это дико когда на отделениях информатики народу забивают голову литературой или историей или еще чем то не профильным, а на отделениях физики и математики людей пичкают биологией и угрожают непроставлением зачета если люди не сдадут бег,отжимания и волейбол на физкультуре. И я более чем уверен что это делается спецом и по сговору, что бы у нас в итоге было мало хорошо проф. образованных людей. По другому объяснение таких тупостей еще более несуразно и тупо выглядит чем сговор, потому что по другому это объясняется крайней идиотичностью и тупостью самих преподов и тех кто составлял такие требования, а думать что все эти люди идиоты это глупо. И тут прочитал камент 18 и ответ автора 19.
    Вопрос к автору, мадама, у вас с головой все в порядке? Вы тут просвещаете людей по теме битов байтов и таблиц кодировок и тут же пишете что не согласны с элементарщиной типа что килобайт это 1024 байта и тп.

    Так же вы пишите

    На заре компьютеров байты составляли 4, потом 5, потом 6 бит… Группа из 6 бит может принимать целых 64 значений. Вполне неплохо

    Вы пишите так, как будто составные значения байта как будто бы типа путем прогресса и эволюции вырастали, сначала 4, потом 5, ЧТО В КОРНЕ НЕ ВЕРНО и может привести людей в заблуждение и навести их на такие мысли, что с таким раскладом значения байта могли бы расти до тех самых 1024 байтов в бите (с чем вы вроде как не согласны, судя по описаниям наблюдаемых вами несуразностей) и выше, 10001024 байтов в бите например.
    В реальности, как и писали вам кстате в каменте 18, с которым вы почему то не согласны и более того считаете его безполезным, значения битов в байте были разными и задумывались, появлялись и проставлялись в соответствии с принятой кодировкой систем эвм. Про то, как байт дорос до восьми составных битов и что там мало » эволюционного роста с значениями » а лишь только поиск наиболее оптимального кодирования, есть несколько версий и про них вы можете почитать даже в википузии http://ru.wikipedia.org/wiki/%D0%91%D0%B0%D0%B9%D1%82 .

    Уважаемый дизойнёр ,
    Разумеется я-то прочитала комментарий 18, и мой ответ как бы сарказмом пародирует его часть. Не думала что это нужно кому-то объяснять.
    Цитирую начало статьи:

    … я слышала такие забавные заблуждения, относительно фундаментальных основ, как:
    в байте 1024 бита
    Именно к этой фразе уважаемый аноним придрался, не прочитав дальше вообще статью, и начал меня же учить сколько бит в байте, сколько байт в килобайте и т.п. =) Т.е. его комментарий выглядит как «Статью не читал, но осуждаю». И я ещё раз могу повторить что это был самый бесполезный комментарий моего блога. И поэтому если человек не прочитал мою статью как я могу с ним разговаривать.

    Что касается значений байта, то они вырастали из 4,5,6 бит именно путём прогресса и эволюции в том числе для удовлетворения кодировок эвм, которые и являются одним из видов прогресса и эволюции =). Пожалуйста прочтите мои объяснения до конца прежде чем не согласиться.
    Геном человека состоит из 23 пар хромосом, ввиду эволюции и прогресса, и система такова, что 24-я пара человеку не нужна. Аналогично с битами, Байт состоит из 8 бит — потому что сейчас для программистов это удобно, и 1024 бита в байте не нужно никому — это лишь в несколько раз уменьшит дисковое пространство и вычислительную мощность компьютеров (объяснить почему?). В случаях когда программисту необходимо оперировать группами бит большего размера, например для хранения RSA ключей — 1024,2048 или 4096 бит — программист просто оперирует последовательностью байт нужного размера. Именно поэтому во многих языках есть такие типы данных как Слово (word) или двойное слово (dword) , а такие типы как integer вообще не влезают в пределы одного байта.

    P.S. Ну, и возвращаясь к комментарию анонима, я специально ничего не писала про количество байт в килобайте, т.к. это не влияет на образование. Цель статьи — объяснить разницу между битом и байтом, а также рассказать почему это так на примере кодировок. Количество же байт в килобайте для меня например 1024, а для производителей дисков 1000. Вот Тёма писал в 84 параграфе ру.ководства . Современные SSD например вообще не умеют писать с точностью адресации в один байт — перезаписывают сразу блок.
    P.P.S. Эволюция и прогресс вообще не однозначные понятия, в русском языке 33 буквы, а в китайском 414 слогов (а каждый слог ещё и несколькими иероглифами можно записать) такие дела =).

    молодца, мне понравилось)))


Сколько байтов занимает указатель? В чем принцип?

Проблема того, сколько байтов занимает указатель, известна всем студентам, знающим язык C. Но во время собеседования я познакомился с несколькими одноклассниками, либо я забыл ответ, либо двое или четверо были слепыми. . .

Итак, сколько байтов занимает указатель?

На самом деле, это очень простой вопрос. Немного поискав в Интернете, вы узнаете:
Размер указателя на 64-разрядном компьютере равен 8 байтам;
Размер указателя на 32-разрядном компьютере составляет 4 байта.
Почему интервьюеры хотят задавать такой простой вопрос? Фактически, этот вопрос — не проверка ваших способностей к памяти, а проверка ваших основных компьютерных способностей. Например, если вы ответите 4 байта, интервьюер спросит:

Почему?

Все мы знаем, что в компьютере ЦП не может напрямую обмениваться данными с жестким диском, а ЦП может обмениваться данными только напрямую с памятью. ЦП выполняет передачу данных и работу с памятью по трем линиям шины данных, адресной шине и шине управления.
Если мы хотим прочитать число 3 в памяти через процессор, что это за операция?
Сначала ЦП находит адрес числа 3 в памяти через адресную шину; знает, выполняется ли операция чтения или записи через шину управления; затем передает число 3 в ЦП через шину данных.

Мы можем знать:
Ширина адресной шины определяет адресную способность ЦП;
Ширина шины данных определяет объем передаваемых данных за одну передачу данных ЦП, то есть скорость передачи данных;
Шина управления определяет способность ЦП управлять другими элементами управления и методами управления.

Это несколько видов автобусов и простые функции.

Обычно мы говорим о 64-битном, 32-битном и 16-битном компьютере, что означает максимальную длину информации, которая может быть обработана, передана и временно сохранена в регистрах общего назначения в ЦП компьютера. То есть количество двоичных чисел, которые ЦП может обработать за один раз за единицу времени (за одно и то же время).
Если адресная шина компьютера 32 бита, то он может обрабатывать 32 части информации за один раз, и каждая адресная шина имеет две возможности: 0 или 1, так что всего имеется 32 адресных шины. Есть 232Одна из возможностей, то есть описанное адресное пространство: 0x0000 0000 0000 0000 ~ 232-1。
Обычно нам нужно 32 комбинации 0 или 1, чтобы найти все адреса в памяти, а 32 комбинации 0 или 1 составляют 32 бита, что составляет 4 байта. Размер, поэтому нам нужно всего 4 байта, чтобы найти все данные. Следовательно, в 32-битном компьютере указатель занимает 4 байта. Точно так же на 64-битном компьютере указатель занимает 8 байтов.

Также можно увидеть, что, поскольку адресная шина — 32, адресуемое пространство каждый раз равно 0x0000 0000 0000 0000 ~ 2.32-1, то максимальный объем памяти процессора равен 232Byte=222KB=212MB=22GB=4GB。

например

Адрес в памяти похож на номер дома на дороге, с несколькими цифрами, обозначающими количество номеров домов, которые необходимо увидеть.
Номер дома отсортирован от 0 до 2.32-1 концов, всего 232Номера домов. Соответственно бинарный
000000000000000000000000000
000000000000000000000000001
000000000000000000000000010
Наконец
111111111111111111111111110
111111111111111111111111111
Каждый номер дома составляет 32 бита (двоичный), один байт равен 8 битам, а 32 бита равен 4 байтам.


Другие точки знаний:

Хранение данных основано на «байтах» (байтах), передача данных в основном основана на «бите» (также известном как «бит») в качестве единицы измерения, бит представляет собой 0 или 1 (т.е. двоичный), каждые 8 Бит (бит, сокращенно b) образует байт (Byte, сокращенно B), который является наименьшей единицей информации.
1 бит — это двоичные 0 и 1
1 байт (байт) = 8 бит (бит) = 8 бит
1 английская буква (без учета регистра) занимает один байт пространства.
Наименьшая единица измерения, которую может обработать компьютер, — это байты, а не биты.
биты, которые управляются программным обеспечением через битовые операторы.

Хранение и кодирование информации

Для представления информации в вычислительной технике преимущественное распространение получило двоичное кодирование, при котором единицы вводимой в ЭВМ информации представляются средствами двоичной системы счисления, состоящей из 0 и 1.

См. двоичная система счисления.

Однако, для хранения сколько нибудь значащей информации необходимо больше символов, чем 0 и 1, которые может хранить минимальная ячейка информации. Чтобы сохранить число, большее, чем 0 и 1, ячейки информации объединяются в логические группы.

Понятие регистра


Группа ячеек, которая хранит логически единую информацию, называется регистром.

Размер регистра (количество битовых ячеек ) для каждой вычислительной системы зависит от ее архитектуры. Первые вычислительные машины оперировали восьмибитовыми регистрами, когда ячейки информации, которыми одновременно мог оперировать центральный процессор, имели размер только 8 бит. Потом наступила очередь 16-битных  машин, потом 32-битных и т.д.

В литературе вместо термина «шестнадцатибитный» или подобных наименований обычно употребляется термин «шестнадцатиразрядный», 32-разрядный и т.д. Так как двоичная система хранения информации, точно также как и десятичная является позиционной (разрядной).

Размер регистра определяет, над каким объемом информации одновременно может совершить операцию центральных процессор компьютера. Это не значит, что 8-битный процессор не мог оперировать цифрами большими, чем 255 (максимальное число, которое можно записать с помощью 8 бит). Конечно, процессор может использовать несколько регистров одновременно и пользоваться информацией из памяти за пределами центрального процессора. Но единица одномоментно обрабатываемой информации — это размер регистра.

Понятие байта


Поскольку история вычислительной техники начиналась с восьмибитных компьютеров, то минимальной единицей информации является байт.

Байт — группа из восьми логически связанных между собой элементарных ячеек (битов).

Один бит — это ячейка, которая хранит ноль или единицу.

Байт же, состоящий из восьми битов (см. двоичная система счисления) может хранить число от 0 до 255.

Если сгруппировать два байта в один 16-битный регистр, то с их помощью можно записать число от 0 до 65 535.

Группировка четырех байтов в 32-битный регистр даст нам возможность записи числа от 0 до 4 294 967 295.

То есть, теоретически, мы можем оперировать сколько угодно большими числами. Это зависит от внутренней организации процессора и системы вычислений. Поэтому, чтобы сравнивать информацию, хранимую, обрабатываемую и передаваемую разными типами вычислительных машин, используют именно байты.

Для больших объемов информации используют единицы измерения в килобайтах, мегабайтах, гигабайтах и терабайтах. Однако, для стандартных приставок кило-, мега-, тера и т.д. это не означает стандартного множителя 1000.

Следует помнить, что килобайт — это не 1000, а 1024 байта.

1 килобайт (Кб) = 210байт=1024 байт;

1 мегабайт (Мб) = 1024 Кб = 220байт = 1048576байт;

1 гигабайт (Гб) = 1024 Мб = 230байт = 1073741824байт;

1 терабайт (Тб) = 1024 Гб = 240байт = 1099511627776 байт и т.д.   

 Двоичная система счисления | Описание курса | Таблица степеней 2 (двойки) 

   

бит, байт, флопс и герц

Бит

С точки зрения памяти, бит (сокращение от двоичной цифры) — это наименьшая возможная единица данных в компьютерной системе. Один бит — это, по сути, крошечный электрический «переключатель», который либо «включен», либо «выключен». Они используются практически для всего: от выдачи системных инструкций до хранения данных. Состояние битов «включено» или «выключено» связано с машинным кодом, где все выражается в единицах и нулях.

Биты обычно не существуют за пределами восьми групп строк, известных как байты.

Байт

Следующий шаг после бита, байт представляет собой строку из восьми битов. Это также основа для… практически всех измерений размера и скорости вычислений (кроме Hertz). Следовательно, килобайт — это 1024 байта, мегабайт — это 1024 килобайта, гигабайт — это 1024 мегабайта, а терабайт — это… ну, вы поняли. На самом деле вам не нужно много знать об этих единицах измерения, если только вы не хотите сразу вникать в них и изучать двоичный код (в следующем посте я расскажу о машинном коде и других основных языках программирования).

Некоторым из вас может быть интересно, почему значение равно 1024, а не 1000. Причина этого в том, что двоичный код в основном выражает все как кратное 2, поэтому 1024 — это самое близкое значение, которое мы можем получить к 1000.

FLOPS

А теперь совсем о другом. FLOPS – что означает f плавание p oint o perations  p er s second. Это не сильно сужает круг, не так ли? Если мы собираемся получить какое-то представление о том, что означает FLOPS, нам нужно выяснить, что такое операция с плавающей запятой, не так ли?

В двоичном формате существует две системы представления чисел с десятичными разрядами: с фиксированной точкой и с плавающей запятой.Системы с фиксированной запятой — это те, в которых десятичные разряды могут идти только в нескольких местах; в системах с плавающей запятой десятичная запятая может быть размещена где угодно. Это слишком упрощенно, но сойдет.

Как правило, FLOPS не является особенно важным показателем быстродействия для стандартных компьютеров, поскольку операции с плавающей запятой в основном используются в научных вычислениях. В случае суперкомпьютеров и систем, используемых для исследований, жизненно важно, сколько FLOPS может выдержать система, но для повседневных пользователей? Да, наверное, вам не о чем беспокоиться.

Герц

Если мы идем к прямому определению, Герц является стандартной единицей измерения циклов в секунду. «Один герц» — это один цикл в секунду. Достаточно просто, не так ли?

Сколько байтов составляет 64-бит?

Сколько байтов составляет 64-бит?

Биты и байты Каждый набор из 8 битов называется байтом. Два байта вместе, как в 16-битной машине, составляют слово, 32-битная машина — 4 байта, что является двойным словом, а 64-битная машина — 8 байтов , что является четверным словом.

Какой размер 64-битного?

В принципе, 64-битный микропроцессор может адресовать 16 EiB (16 × 10246 = 264 = 18 446 744 073 709 551 616 байтов , или около 18,4 эксабайта) памяти. Однако не все наборы инструкций и не все процессоры, реализующие эти наборы инструкций, поддерживают полное 64-битное виртуальное или физическое адресное пространство.

Что означает 64-битный телефон?

64-бит для телефонов Android заключается в том, что 64-битные процессоры увеличивают объем оперативной памяти, которую можно практически использовать в устройстве .Размер 32-битного регистра означает, что программное обеспечение в лучшем случае ограничено использованием 4 ГБ памяти.

Что такое 64-битная система?

A. X. (64-разрядная версия на базе X86) Текущая компьютерная архитектура от Intel и AMD. Современные ноутбуки и настольные компьютеры с архитектурой x86, также называемые «x86-64», имеют 64-разрядные процессоры, а не 32-разрядные. x64 обычно относится к оборудованию, а не к операционной системе .

Каково максимальное значение для 64-битного числа?

9 223 372 036 854 775 807 64-битное целое число со знаком.Он имеет минимальное значение -9 223 372 036 854 775 808 и максимальное значение 9 223 372 036 854 775 807 (включительно).

Являются ли сотовые телефоны 64-битными?

В Android-смартфонах все, что выше ARMv8, является 64-битным устройством . Вы также можете проверить, является ли ваш телефон 64-битным в Android, используя приложение Antutu Benchmark. Хотя это приложение для бенчмаркинга, вы можете просто использовать его для просмотра информации о вашем устройстве.

Мой телефон 32- или 64-битный?

Проверьте версию ядра Android. Перейдите в «Настройки» > «Система» и проверьте «Версия ядра».Если код внутри содержит строку «x64», на вашем устройстве установлена ​​64-битная ОС; если вы не можете найти эту строку, то это 32-битный .

В чем разница между 32-битной и 64-битной Windows?

Хотя обе архитектуры предлагают одинаковые функции, при обновлении до 64-разрядной версии устройство сможет использовать большие объемы памяти (до 2 ТБ) вместо 4 ГБ, что является одним из ограничений с 32 -кусочек.

Что лучше 8 Гб или 64 битная память?

Преимущество 8 ГБ/64-разрядной версии. Больше оперативной памяти не всегда означает более высокую производительность.Запуск 64-разрядной операционной системы позволяет преодолеть барьер памяти в 4 ГБ.

Вам действительно нужно 64 ГБ оперативной памяти?

Если вы спросите нас, нужно ли вам 64 ГБ ОЗУ в 2019 году или нет; ответ на самом деле очень прост. Вам нужно иметь столько оперативной памяти. Однако такой объем оперативной памяти вам понадобится только в том случае, если вы собираетесь проектировать, выполнять рендеринг или использовать несколько приложений одновременно.

Можно ли обновить 32-разрядный компьютер до 64-разрядного?

Если у вас есть настольный компьютер или ноутбук с 32-разрядной версией, вы можете перейти на 64-разрядную версию без приобретения новой лицензии.Единственное предостережение заключается в том, что нет пути обновления на месте, чтобы сделать…

⇐ Какой приход находится в городе Марун Таун на Ямайке? Как записать 8.4 в виде десятичной дроби? ⇒
Похожие сообщения:

Преобразование байтов в биты — Преобразование единиц измерения

›› Преобразовать байт в бит

Пожалуйста, включите Javascript для использования преобразователь единиц измерения.
Обратите внимание, что вы можете отключить большую часть рекламы здесь:
https://www.convertunits.com/contact/remove-some-ads.php



›› Дополнительная информация от преобразователя единиц измерения

Сколько байт в 1 бите? Ответ 0,125.
Мы предполагаем, что вы конвертируете между байт и бит .
Вы можете просмотреть более подробную информацию о каждой единице измерения:
байт или бит
Основной несистемной единицей для хранения компьютерных данных является байт.
1 байт равен 8 битам.
Обратите внимание, что могут возникать ошибки округления, поэтому всегда проверяйте результаты.
Используйте эту страницу, чтобы узнать, как преобразовать байты в биты.
Введите свои собственные числа в форму, чтобы преобразовать единицы измерения!


›› Таблица быстрого преобразования байтов в бит

1 байт в бит = 8 бит

5 байтов в бит = 40 бит

10 байтов в бит = 80 бит

15 байтов в бит = 120 бит

20 байтов в бит = 160 бит

25 байтов в бит = 200 бит

30 байтов в бит = 240 бит

40 байтов в бит = 320 бит

50 байт на бит = 400 бит



›› Хотите другие юниты?

Вы можете сделать обратное преобразование единиц из бит в байт или введите любые две единицы ниже:

›› Преобразование обычных компьютерных хранилищ данных

байт в гибибайт
байт в кибибит
байт в гигабайт
байт в гигабайт
байт в гибибит
байт в петабайт
байт в кибибайт
байт в мебибайт
байт в гигабит
байт в килобайт байт в гигабит

›› Определение: Байт

Байт — основная единица измерения хранения информации в информатике.Во многих компьютерных архитектурах это единица адресации памяти, состоящая из 8 бит.

Поскольку компьютерная память имеет основание 2, а не 10, значительная часть компьютерной и программной промышленности использует двоичные оценки величин с префиксом SI, в то время как производители компьютерных запоминающих устройств предпочитают значения SI. Вот почему жесткий диск компьютера, рекламируемый как десятичный объем памяти «100 ГБ», на самом деле содержит не более 93 ГБ 8-битной (степень 2) адресуемой памяти.


›› Определение: Бит

Бит — это двоичная цифра, принимающая значение 0 или 1.Бит также является единицей измерения, информационной емкостью одного двоичного разряда. Он имеет бит символа или b. В 1 байте 8 бит.


›› Метрические преобразования и многое другое

ConvertUnits.com предоставляет онлайн калькулятор преобразования для всех типов единиц измерения. Вы также можете найти метрические таблицы преобразования единиц СИ. как английские единицы, валюта и другие данные. Введите единицу измерения символы, сокращения или полные названия единиц длины, площадь, масса, давление и другие типы.Примеры включают мм, дюйм, 100 кг, жидкая унция США, 6 футов 3 дюйма, 10 стоунов 4, кубический см, метры в квадрате, граммы, моли, футы в секунду и многое другое!

32-битный компьютер Word может получить доступ к скольким байтам

Компьютер с 32-битными словами может одновременно обращаться к 32 байтам.

Сколько байтов в слове компьютер?

10 байт Информационный объект Сколько байт Типичное текстовое слово 10 байт Машинописная страница 2 килобайта ( КБ с ) Фотография с низким разрешением 100 килобайт Короткий роман 1 мегабайт ( МБ ).

Как называется 32-битное слово?

Основными типами данных архитектуры Intel являются байты, слова, двойные слова и четверные слова (см. рис. 29-1). Байт — это восемь битов, слово — 2 байта (16 бит), двойное слово — 4 байта (32 бита), четверное слово — 8 байтов (64 бита).

Сколько байтов может получить компьютер с 64-битным словом за раз?

64-битный ЦП может одновременно обращаться к 8 байтам.

Сколько байтов в 64-битном слове?

Структуры данных, содержащие слова такого разного размера, обозначаются как WORD (16 бит/2 байта), DWORD (32 бита/4 байта) и QWORD (64 бита/8 байтов) соответственно.

Сколько байтов составляет двойное слово?

4 байта Имя Длина clock_t 4 байта wchar_t 2 байта WORD 2 байта DWORD 4 байта.

Что означает 32-битный размер слова?

«Размер слова» относится к количеству битов, обрабатываемых процессором компьютера за один раз (в наши дни обычно 32 бита или 64 бита). Размер шины данных, размер команды, размер адреса обычно кратны размеру слова.

Сколько чисел можно представить с помощью 32 бит?

Диапазон для хранения целых чисел 32-битный регистр может хранить 2 32 различных значений.Диапазон целочисленных значений, которые могут храниться в 32 битах, зависит от используемого целочисленного представления.

Что такое 32-разрядность в 32-разрядном процессоре?

1. 32-разрядная архитектура ЦП, способная передавать 32 бита данных за такт. С технической точки зрения это означает, что процессоры могут работать с 32-битными двоичными числами (десятичные числа до 4 294 967 295). Что-то большее, и компьютер должен будет разбить данные на более мелкие части.

В чем разница между 32-битной и 64-битной версиями?

32-битная система может обращаться к 2 32 различным адресам памяти, т.е.e 4 ГБ ОЗУ или физической памяти в идеале, он также может получить доступ к более чем 4 ГБ ОЗУ. 64-битная система может получить доступ к 2 64 различным адресам памяти, т.е. фактически 18-квинтиллионам байт ОЗУ.

Можно ли запускать 32-разрядное программное обеспечение в 64-разрядной системе?

Да, 32-битное программное обеспечение может работать в 64-битной операционной системе. При запуске 32-битного ПО, например в Windows, запускается эмулятор.

Сколько байтов составляет буква?

Понимание битов и байтов Мы называем 8 бит байтом.В очень распространенной системе ASCII каждая буква алфавита, как заглавная, так и строчная (плюс знаки препинания и некоторые другие символы), соответствует числу от 0 до 255 (например, a=97, b=98 и т. д.), поэтому одна буква может быть выражен одним байтом.

Как вы считаете биты в слове?

Укажите ниже значения для преобразования слова в бит [b] или наоборот. Таблица преобразования слова в бит. Слово Бит [b] 0,01 слово 0,16 b 0,1 слово 1,6 b 1 слово 16 b 2 слово 32 b.

Сколько байтов в полуслове?

Полуслово состоит из 2 последовательных байтов.Полное слово — это 4 последовательных байта. Двойное слово состоит из 8 последовательных байтов.

Что такое ширина слова?

Количество битов в слове (размер слова, ширина слова или длина слова) является важной характеристикой любой конкретной конструкции процессора или компьютерной архитектуры». В вычислительной технике слово является естественной единицей данных, используемой конкретной конструкцией процессора.

Какова разрядность компьютера Как разрядность компьютера влияет на возможности вычислений компьютера?

Длина слова не влияет на то, что может вычислить компьютер.Компьютер с меньшей длиной слова может выполнять те же вычисления, что и компьютер с большей длиной слова; но это займет больше времени. Например, чтобы сложить два 64-битных числа, длина слова = 16: требуется 4 сложения с 3 переносами.

Что такое 32-битная Windows?

Термины «32-разрядный» и «64-разрядный» относятся к способу обработки информации процессором компьютера (также называемым ЦП). 64-разрядная версия Windows обрабатывает большие объемы оперативной памяти (ОЗУ) более эффективно, чем 32-разрядная система.

Как получить 32-разрядный браузер?

Если вы хотите найти 32-разрядную версию Internet Explorer, откройте окно Проводника и перейдите в папку C:\Program Files (x86)\Internet Explorer.Запустите отсюда программу «iexplore.exe», и вы получите 32-разрядную версию IE.

Что такое 32-битный браузер?

32-битное программное обеспечение Браузеры, как и все программное обеспечение в наши дни, по большей части выпускаются в одном варианте — 32-битном. (Однако это меняется.) Это означает, что независимо от того, сколько оперативной памяти вы установили, программное обеспечение не может ее использовать. 32-битная программа ограничена 4 ГБ оперативной памяти.

Какое ограничение 32-битного ядра?

Объяснение: Единственное ограничение на запуск 32-битного кода заключается в том, что вы можете ссылаться только на 32-битные библиотеки, которые уже поставляются с большинством дистрибутивов.32 = 4Gi (вот что означает 32-битное адресное пространство).

На моем ноутбуке установлена ​​32-битная или 64-битная Windows 10?

Чтобы проверить, используете ли вы 32-разрядную или 64-разрядную версию Windows 10, откройте приложение «Настройки», нажав Windows+i, а затем выберите «Система» > «О системе». С правой стороны найдите запись «Тип системы».

Как запустить 32-битные драйверы на 64-битной?

К сожалению, нет и нельзя.

Добавить комментарий

Ваш адрес email не будет опубликован.