Форум программистов, компьютерный форум, киберфорум
Evg
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  

Бит и байт

Запись от Evg размещена 14.02.2012 в 21:26
Показов 61664 Комментарии 6
Метки c, c++, си

ВНИМАНИЕ! Вопросы по существу обсуждаемого вопроса просьба задавать здесь или создать тему на форуме и кинуть на неё ссылку в блог или мне в личку.
Объясняю почему

Причин для этого несколько.

Я, как и любой другой автор, всегда могу упустить интересный момент обсуждаемой темы (что подтвердилось на практике). А потому задаваемый вопрос может закрывать пробел в статье. Ответ на конкретный вопрос, как правило, дать несложно. Сложнее его аккуратно сформулировать так, чтобы ответ являлся законченной частью статьи. Поэтому, как правило, на первых порах я ограничиваюсь конкретным ответом на конкретный вопрос, а в статью временно вставляю ссылку на пост, где был дан ответ. А когда дойдут руки, то вместо ссылки пишу нормальное пояснение. Технические возможности блога не позволяют в комментариях пользоваться широкими возможностями, доступными на форуме (то как выделение текста жирным, вставка фрагментов исходников в удобном для чтения виде и т.п.), поэтому будет удобнее, если вопрос и ответ будут опубликованы на форуме

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

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

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





1. Общие сведения

Бит - единица измерения количества информации. Байт - единица адресации памяти. Технически память любой машины состоит из битов. Но операции обращения в память возможны не к произвольным битам, а только к группе из нескольких соседних битов. Минимальная группа называется байтом. Таким образом байт по своей сути является минимально адресуемым участком памяти.

Размер типов в стандарте языков Си и Си++ определяется именно в байтах (см. Базовые типы в Си/Си++). При этом в стандарте не оговаривается, сколько бит в байте. На "обычных" архитектурах байт содержит 8 бит. Но на сигнальных процессорах бывают 16-битные, 24-битные и 32-битные байты. Слышал даже про 17-битные и 23-битные байты. Исторически сложилось, что "бытовое" понятие байта состоит из 8 бит, а потому в технической литературе обычно используется термин "unit", чтобы отрезаться от понятия 8-битного байта

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

2. Ссылки на темы, где обсуждался данный вопрос
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 6
Комментарии
  1. Старый комментарий
    Аватар для kolyanius
    Evg, в коммуникационных сетях понятия бита и байта совершенно не соотносятся с их аналогами в программном обеспечении (языках программирования и т.д.).
    Процессор или какое либо вычислительное устройство может обрабатывать информацию по блочно, т.е. порциями из 1, 8, 17 и т.д. битов - это вы верно написали! Все зависит от внутренней архитектуры вычислительной системы.
    Но в сетях данные не могут передаваться пачками одновременно! Что есть бит в сетях - это дискретный сигнал в определенный момент времени. А как известно, сигнал - это функция во времени. Потому передатчики и приемники в сеть могут соответственно передавать и получать информацию только последовательно бит за битом! Именно поэтому в сетях 1000 Кбит - это 1000 000 бит, а не 1024^2
    думаю это вы итак знали. Я все к тому что в сетях не имеет значение сколько битов в байте!
    Потому в сетях байт - это не характеристика передачи, а количественный показатель единицы информации (пакета, файла и т.д.)
    П.С. ну это же маркетологи
    Запись от kolyanius размещена 15.02.2012 в 18:30 kolyanius вне форума
  2. Старый комментарий
    Аватар для Evg
    kolyanius, я эту статью перетащил в блог из программерского раздела, т.е. тут озвучено понятие с точки зрения программиста. В любом случае спасибо за сообщение, т.к. это натолкнуло на мысль о том, как правильно преподнести эту информацию. Т.е. понятие байта используется там, где есть произвольный адресуемый доступ (ОЗУ или дисковая память). А понятие бита используется там, где есть только последовательный неадресуемый доступ к данным (сети).

    Про то, что в контексте сетей под килобитом подразумевается 1000 бит, я, если честно, не знал. Хотя на вид это выглядит вполне логичным, поскольку возможности произвольного доступа к данным нет. В то время, как при обращении в память доступ к данным произвольный и 1024-байтный килобайт облегчает работу

    P.S. В блоге плюсики ставить нельзя, а потому поставлю его в первом попавшемся твоём посте
    Запись от Evg размещена 15.02.2012 в 19:59 Evg вне форума
  3. Старый комментарий
    Аватар для kolyanius
    спасибо
    Запись от kolyanius размещена 15.02.2012 в 22:13 kolyanius вне форума
  4. Старый комментарий
    Аватар для Netzah
    Цитата Сообщение от kolyanius
    в сетях 1000 Кбит - это 100 000 бит
    тут вероятно опечатка - либо 100Кбит либо 1 000 000 бит.
    Запись от Netzah размещена 02.12.2012 в 15:12 Netzah вне форума
  5. Старый комментарий
    Аватар для Evg
    Поправил
    Запись от Evg размещена 02.12.2012 в 16:43 Evg вне форума
  6. Старый комментарий
    Аватар для bedvit
    Познавательно.
    Запись от bedvit размещена 27.08.2017 в 13:50 bedvit вне форума
 
Новые блоги и статьи
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru