Сколько бит в памяти компьютера занимает слово

Обновлено: 21.11.2024

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

На этой странице вы узнаете об битах, основных единицах данных в вычислениях.

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

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

  • Ложь и правда
  • Выкл. и Вкл., имитируя выключатель света.
  • Красный и зеленый, имитирующие светофор.
  • <ли>. и многое другое

Но что, если светофору также нужно желтое значение? Заманчиво сказать, что, например, 0 вольт на проводе означает красный цвет, 1 вольт — желтый, а 2 вольта — зеленый. Давным-давно были компьютеры, которые работали таким образом, но есть веские причины придерживаться двух возможных значений для каждого провода.

Какие веские причины?

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

Это приблизительный график фактического поведения входа-выхода транзистора. Не беспокойтесь о деталях; просто обратите внимание на две синие плоские части графика. В области «отсечки» небольшие изменения входного напряжения вообще не меняют выходное напряжение; на выходе всегда ноль вольт. Точно так же в области «насыщения» небольшие изменения входного сигнала не влияют на выходное напряжение; этот вывод интерпретируется как единица. Именно так транзисторы используются в качестве переключателей в компьютере. Если бы на кривой было три плоских участка, возможно, у нас было бы три возможных значения для каждого провода.

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

Вместо проводов с несколькими значениями мы используем более одного бита, если нам нужно представить более двух возможных значений. Итак, для светофора мы могли бы использовать два бита: first бит
второй бит значение
0 0 красный
0 1 желтый
1 0 зеленый
1 1 (не используется)

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

  1. Убедите себя, что больше не существует комбинаций двух битов.
  2. Запишите все возможные комбинации трех битов. Сколько их?
  3. Сколько существует комбинаций четырех битов?

Каждый добавленный бит удваивает количество значений, которые вы можете представить. Это означает, что представление сложных ситуаций не требует больших затрат оборудования; десяти бит достаточно для представления более 1000 различных значений.

  1. Сколько именно значений может быть представлено десятью битами?
  2. Сколько битов нужно для представления дней недели?
  3. Сколько бит требуется для представления одной десятичной цифры (то есть для указания цифры от 0 до 9)?

В байте восемь бит.

Слово — это последовательность из любого количества битов, обрабатываемых ЦП за раз. По состоянию на 2017 год слова имеют длину 32 или 64 бита.

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

Можем ли мы вырезать этот закомментированный текст? --MF, 31.08.19
Я думаю, нам следует подумать о переносе его на U6, но не сегодня. -бч

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

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

Вместо этого современные компьютеры обычно позволяют выделять память только в двух размерах: байт, который стандартизирован на восьми битах, и слово, которое определяется как последовательность битов, которые ЦП обрабатывает за раз. По состоянию на 2017 год слова могут иметь ширину 32 бита или 64 бита, хотя большинство новых моделей компьютеров используют 64 бита.

Сколько различных значений может быть представлено 32 битами? Вам не нужно запоминать ответ, потому что вы можете быстро приблизить его, используя тот факт, что 2 10 = 1024, что примерно равно 1000. Это означает, что каждые десять битов ширины умножают количество значений это может быть представлено примерно 1000. Таким образом, 10 битов позволяют получить около тысячи значений, 20 битов — около миллиона значений, 30 битов — около миллиарда, а 32 бита — более четырех миллиардов значений (потому что мы удваиваем миллиард еще два раза). за разницу между 30 и 32).

Этот трюк может оказаться полезным на экзамене AP.

Кажется, четырех миллиардов значений должно быть достаточно, но это не так, если вы астроном или банкир (или Google или Facebook). Вот почему у нас теперь есть 64-битные компьютеры, которые с 2019 года являются стандартом. (Apple только что удалила поддержку 32-разрядных программ в MacOS.)

  1. Примерно сколько различных значений может быть представлено в 64-битном слове? (Не используйте калькулятор, используйте хитрость!)

Байты и символы

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

  1. Сколько битов нужно для представления 26 букв английского языка и десяти цифр от 0 до 9?

Широкое использование восьмибитного кода ASCII – основная историческая причина, по которой восьмибитный байт стал стандартом. (Еще одна причина заключается в том, что компьютерные схемы могут легче всего работать с шириной, равной степени двойки.)

В течение многих лет компьютеры использовали шестибитные коды символов, но для того, чтобы иметь как ВЕРХНИЙ РЕГИСТР, так и строчный буквы и знаки препинания, требуется семь битов. Первой официально признанной кодировкой был семибитный набор символов ASCII (американский стандартный код для обмена информацией). Он включал необязательный восьмой бит для обнаружения ошибок, который был использован для включения символов с диакритическими знаками в испанском, французском, немецком и некоторых других европейских языках. Например, в имени главного разработчика Snap!, немца Йенса Мёнига, есть символ с ударением. (Ближайший английский звук — это «u» в слове «lunch».)

По мере распространения компьютеров и Интернета по всему миру люди хотели иметь возможность писать на китайском, японском, арабском, кабильском, русском, тамильском и т. д. Набор символов Unicode поддерживает около 1900 языков, использующих 32 современных алфавита и 107 исторических алфавитов, которые больше не используются. Полный набор символов Unicode включает 136 755 символов.

  1. Какое минимальное количество битов необходимо для представления любого символа Unicode?

фактическое компьютерное представление Юникода сложно.

В наиболее простом представлении Unicode используется одно 32-битное слово на символ, чего более чем достаточно. Но разработчики программ считают, что это неэффективное использование компьютерной памяти, а также то, что многие старые программы, которые до сих пор используются, были написаны, когда восемь бит на символ были стандартом. Таким образом, символы Unicode обычно представляются в многобайтовом представлении, в котором исходные 128 символов ASCII занимают один байт, а для других символов может потребоваться до четырех байтов. (Можно также использовать многобайтовую последовательность, чтобы указать программе обработки текстов, что вы хотите использовать однобайтовые или двухбайтовые коды для представления определенного нелатинского алфавита.)

Это из книги Джеффа Дантеманна "Язык ассемблера шаг за шагом":

Вот краткий обзор: бит — это одна двоичная цифра, 0 или 1. Байт — это 8 битов, расположенных рядом друг с другом. Слово — это 2 байта рядом. Двойное слово - это 2 слова рядом. Четверное слово – это два двойных слова, расположенные рядом.

А это из книги «Принципы компьютерной организации и языка ассемблера: использование виртуальной машины Java» Патрика Юолы:

Для удобства 8 бит обычно группируются в единый блок, условно называемый байтом. Следующий по величине именованный блок битов является словом.Определение и размер слова не являются абсолютными, но варьируются от компьютера к компьютеру. Слово — это размер наиболее удобного для компьютера блока данных.

Итак, слово имеет размер 2 байта (16 бит) или это наиболее удобный блок данных для компьютера? (Я также не уверен, что это значит..)

7 ответов 7

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

Процессоры производятся с самыми разными размерами слов, не всегда кратными 8.

Процессоры 8086 и 8087 использовали 16-битные слова, и, вероятно, именно об этой машине писал первый автор.

Более современные процессоры обычно используют 32- или 64-битные слова.

В 50-х и 60-х годах были машины с размерами слов, которые сейчас кажутся нам довольно странными, например, 4, 9 и 36. Примерно с 70-х годов размер слова обычно был степенью 2 и кратен 8.< /p>

Обычно 16-битные слова встречаются только в 16-битных системах, таких как Amiga 500.

Это из книги Стивена Леви "Хакеры: герои компьютерной революции".

.. память была сокращена до 4096 "слов" по восемнадцать бит каждое. («Бит» — это двоичная цифра, 1 или 0. Последовательность двоичных чисел называется «словом»).

Как показывают другие ответы, "слово" не имеет фиксированной длины.

В дополнение к другим ответам, еще один пример изменчивости размера слова (от одной системы к другой) можно найти в статье Aleph One «Разбей стек ради удовольствия и прибыли»:

Мы должны помнить, что память может быть адресована только кратно размеру слова. Слово в нашем случае составляет 4 байта или 32 бита. Таким образом, наш 5-байтовый буфер действительно займет 8 байтов (2 слова) памяти, а наш 10-байтовый буфер займет 12 байтов (3 слова) памяти.

Нет.. Этот тоже не работает.. Этот сайт недоступен. Соединение было сброшено. Может быть, потому что я на работе, но я очень сомневаюсь в этом.. Странно..

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

Хорошая газета. Я подумал, что подробности о размере слова могут помочь тем, кто хочет пролистать ответы на этот вопрос — просто для ясности, остальная часть статьи не фокусируется на размере слова и его значении.

В процессорах x86/x64 байт – это 8 бит, а 8 бит – 256 возможных двоичных состояний, от 0 до 255. Именно так ОС преобразует нажатия клавиш клавиатуры в буквы на экране. Когда вы нажимаете клавишу «A», клавиатура отправляет на компьютер двоичный сигнал, равный числу 97, и компьютер выводит на экран строчную букву «a». . Вы можете подтвердить это в любом программном обеспечении для редактирования текста Windows, удерживая клавишу ALT, набрав 97 на цифровой клавиатуре, а затем отпустив клавишу ALT. Если вы замените «97» на любое число от 0 до 255, вы увидите символ, связанный с этим номером, на кодовой странице системы, напечатанной на экране.

Если символ состоит из 8 бит или 1 байта, то WORD должен состоять как минимум из 2 символов, то есть 16 бит или 2 байта. Традиционно вы можете думать о слове как о различном количестве символов, но в компьютере все, что можно вычислить, основано на статических правилах. Кроме того, компьютер не знает, что такое буквы и символы, он умеет только считать числа. Итак, на компьютерном языке, если WORD равно 2 символам, то двойное слово или DWORD — это 2 WORD, что такое же, как 4 символа или байта, что равно 32 битам. Кроме того, четверное слово, или QWORD, состоит из 2 DWORD, таких же, как 4 WORD, 8 символов или 64 бита.

Обратите внимание, что функции этих терминов ограничены API Windows для разработчиков, но могут встречаться и в других обстоятельствах (например, команда Linux dd использует числовые суффиксы для составных размеров байтов и блоков, где c равно 1 байту, а w равно байтам).

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

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

Большинство компьютеров теперь имеют размер слова 64 бита. В недавнем прошлом (начало 2000-х) многие ПК имели 32-битные слова.Старые машины 286 в 1980-х годах имели размер слова 16. В старых мейнфреймах часто использовались 36-битные слова.

Компьютер рассматривает вашу память как последовательность слов, пронумерованных от нуля до некоторого большого значения, зависящего от объема вашей памяти. Это значение ограничено размером вашего слова, поэтому программы на старых машинах, таких как 286, должны были пройти через болезненные искажения, чтобы адресовать большие объемы памяти. Я не буду описывать их здесь; они до сих пор вызывают кошмары у программистов постарше.

Целые числа представлены в виде слов или пар слов, в зависимости от размера слова вашего процессора. Одно 64-битное машинное слово является наиболее распространенным целочисленным представлением.

Целая арифметика близка к математической системе счисления по основанию два, но не совсем ей. Младший бит равен 1, затем 2, затем 4 и так далее, как в чистом двоичном коде. Но числа со знаком представлены в записи с дополнением до двух. Бит старшего разряда является битом знака, который делает величину отрицательной, и каждое отрицательное число может быть получено из соответствующего положительного значения путем инвертирования всех битов и добавления единицы. Вот почему целые числа на 64-битной машине имеют диапазон от -2 63 до 2 63 - 1. Этот 64-й бит используется для знака; 0 означает положительное число или ноль, 1 — отрицательное число.

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

Большинство процессоров и некоторые языки могут выполнять операции с числами с плавающей запятой (эта возможность встроена во все современные чипы процессоров). Числа с плавающей запятой дают гораздо более широкий диапазон значений, чем целые числа, и позволяют выражать дроби. Способы, которыми это делается, различны и слишком сложны, чтобы подробно обсуждать их здесь, но общая идея очень похожа на так называемую «научную нотацию», где можно записать, скажем, 1,234 * 10 23 ; кодирование числа разделено на мантисса (1,234) и экспоненциальную часть (23) для множителя степени десяти (что означает, что умноженное число будет иметь 20 нулей, 23 минус три десятичных знака).

Предыдущий абзац вводил в заблуждение по двум причинам. Второстепенным является то, что термин «октет» формально корректен, но на самом деле используется редко; большинство людей называют октет байтом и ожидают, что длина байта будет восемь бит. Строго говоря, термин «байт» является более общим; раньше были, например, 36-битные машины с 9-битными байтами (хотя, вероятно, их больше никогда не будет).

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

Было несколько попыток решить эту проблему. Все они используют дополнительный старший бит, которого нет в ASCII, что делает его младшей половиной набора из 256 символов. Наиболее широко используемым из них является так называемый набор символов «Latin-1» (более формально называемый ISO 8859-1). Это набор символов по умолчанию для Linux, старых версий HTML и X. Microsoft Windows использует измененную версию Latin-1, которая добавляет набор символов, таких как правые и левые двойные кавычки, в тех местах, где правильный Latin-1 оставляет неназначенными для исторических данных. причинам (обзорный отчет о проблемах, которые это вызывает, см. на странице деморонизатора).

Latin-1 поддерживает западноевропейские языки, включая английский, французский, немецкий, испанский, итальянский, голландский, норвежский, шведский, датский и исландский. Однако этого тоже недостаточно, и в результате существует целая серия наборов символов от латиницы от 2 до -9 для обработки таких вещей, как греческий, арабский, иврит, эсперанто и сербско-хорватский. Подробности см. на странице супа с алфавитом ISO.

Наилучшее решение — огромный стандарт Unicode (и его аналог ISO/IEC 10646-1:1993). Unicode идентичен Latin-1 в самых нижних 256 слотах. Над ними в 16-битном пространстве он включает греческий, кириллический, армянский, иврит, арабский, деванагари, бенгальский, гурмукхи, гуджарати, ория, тамильский, телугу, каннада, малаялам, тайский, лаосский, грузинский, тибетский, японский Кана, полный набор современных корейских хангыль и единый набор китайских/японских/корейских (CJK) иероглифов. Дополнительные сведения см. на домашней странице Unicode. XML и XHTML используют этот набор символов.

Компьютерная система обычно хранит символы, используя код ASCII. Каждый символ хранится с использованием восьми битов информации, что дает общее количество различных символов 256 (2**8 = 256).

Сколько символов может храниться в бите?

Сколько символов может хранить 16 бит?

В 16-битном целом числе может храниться 2 16 (или 65 536) различных значений. В беззнаковом представлении эти значения представляют собой целые числа от 0 до 65 535; с использованием дополнения до двух возможные значения находятся в диапазоне от −32 768 до 32 767.

Сколько памяти занимает персонаж?

Тип char занимает 1 байт памяти (8 бит) и позволяет выразить в двоичной записи 2^8=256 значений. Тип char может содержать как положительные, так и отрицательные значения.

Является ли символ размером 1 байт?

Поэтому каждый символ может иметь длину 8 бит (1 байт), 16 бит (2 байта), 24 бита (3 байта) или 32 бита (4 байта). Точно так же UTF-16 основан на 16-битных кодовых единицах. Следовательно, каждый символ может быть 16 бит (2 байта) или 32 бита (4 байта). Все UTF включают полный репертуар символов Unicode или набор символов.

Сколько значений может храниться в байте?

Как называется 16 бит?

BYTE — 8 бит без знака. СЛОВО – 16 бит, без знака. DWORD — 32 бита, без знака.

Что такое 16-битное число?

16-разрядный — это компьютерное аппаратное устройство или программа, способная передавать 16 бит данных за раз. Например, ранние компьютерные процессоры (например, 8088 и 80286) были 16-разрядными процессорами, то есть они могли работать с 16-разрядными двоичными числами (десятичные числа до 65 535).

Какой персонаж занимает больше всего памяти?

﷽, вероятно, занимает больше всего места.

Какой минимальный объем памяти для одного персонажа?

1 байт — это минимальное пространство, необходимое для хранения одного символа.

Много ли 1 ГБ памяти?

1 ГБ ОЗУ достаточно для основных операций, таких как просмотр веб-страниц (хотя не ожидайте запуска браузера с десятками открытых вкладок) и электронной почты, а также для обработки текстов и легкого редактирования изображений.

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

Символы могут иметь от 1 до 6 байт (некоторые из них могут быть не нужны прямо сейчас). Каждый символ UTF-32 имеет 4 байта. UTF-16 использует 16 бит для каждого символа и представляет только часть символов Unicode, называемых BMP (для всех практических целей этого достаточно). Java использует эту кодировку в своих строках.

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

Основное различие между типами данных byte и char заключается в том, что byte используется для хранения необработанных двоичных данных, а другие — для хранения символов или текстовых данных. С точки зрения диапазона, переменная byte может содержать любое значение от -128 до 127, а переменная char может содержать любое значение от 0 до 255.

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

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

Читайте также: