Сколько надо бит чтобы можно было составить 256 разных кодов: Сколько надо бит, чтобы можно было составить 256 разных кодов?

Сколько надо бит, чтобы можно было составить 256 разных кодов?

СРОЧНО!!!!!!!!!!!!
Написать регулярное выражение
abc<любые символы>def

QT C++ Почему код так отличается?
Почему код на C++ , отличается от кода на qt?
Чтобы вывести Hello world! в c++ нужно : cout << «Hello world!»

<< endl;
А в Qt (будем считать, что это рописано в функции кнопки): qDebug() << «Hello world!»;
И вообще является ли qt отдельным языком программирования(Если да, то где лучше всего почитать про него)?

КуМир. Робот находится внутри узкого горизонтального коридора. Одна клетка коридора закрашена. Переместите робота в закрашенную клетку. Нужно, чтобы 1

алгоритм подходил для решения каждой из этих задач

КуМир, задание 5.k, исполнитель Робот. Задание: Робот находится внутри узкого горизонтального коридора. Одна клетка коридора закрашена. Переместите ро

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

С++ Ровно К обменов (Сириус) 40 БАЛЛОВ
Даны два числа n и k. Вывести перестановку из n чисел (n чисел от 1 до n без повторений) такую, чтобы сортировк

а пузырьком по возрастанию на соответствующем массиве сделала ровно k обменов. Если возможных ответов несколько — выведите любой.
Входные данные:
Даны натуральное число n (n≤ 100) и целое неотрицательное k. Гарантируется, что для всех наборов тестовых данных решение существует.
Выходные данные:
Выведите искомую перестановку в одной строке. Числа разделяйте пробелами.

Всем привет. У меня вопрос по поводу питона. Здесь комп. игра. В моём коде машина едет всё время в одном направлении, однако должна ехать в случайном.

Рандом у меня есть. В чём проблема? И да, игра ещё не доделанная.
VV КОД VV
import pygame
from random import choice
from random import randint
cordi2 = randint(10,250)
cordi = [10,130,250]
import time
WIDTH = 300
HEIGHT = 500
FPS = 60
WHITE = (255, 255, 255)
RED = (241, 58, 19)
PURPLE = (99,58,101)
BLACK = (0, 0, 0)
pygame.init()
clock = pygame.time.Clock()
screen = pygame.display.set_mode((WIDTH, HEIGHT))
x = 130
y = 410
y_enemy = 0 — 70
car = pygame.Rect(x,y,40,70)
position = randint(1,3)
if position == 1:
x_enemy = 10
elif position == 2:
x_enemy = 130
elif position == 3:
x_enemy = 250
car_img = pygame.image.load(«car.bmp»).convert()
car_enemy_img = pygame.image.load(«carenemy.bmp»).convert()
car_enemy = pygame.Rect(x_enemy,y_enemy,40,70)
SPEED = 2
running = True
while running:
screen.fill(WHITE)
for i in pygame.event.get():
if i.type == pygame.QUIT:
running = False
if i.type == pygame.KEYDOWN:
if i.key == pygame.K_LEFT:
if car.left > 10:
car.left -= 120
if i.key == pygame.K_RIGHT:
if car.left < 250:
car.left += 120
if car_enemy.top >= HEIGHT + 70:
if position == 1:
x_enemy = 10
elif position == 2:
x_enemy = 130
elif position == 3:
x_enemy = 250
SPEED += 1
position = randint(1,3)
car_enemy.top = 0 — 70
else:
car_enemy.top += SPEED
screen.blit(car_enemy_img, (car_enemy.left, car_enemy.top))
screen.blit(car_img, (car.left, car.top))
pygame.display.update()
clock.tick(FPS)
pygame.quit()

написать программу в C# по типу игры где есть варианты ответа и от них будет зависеть конец, используя Console.WriteLine, if, Console.ReadLine
наприме

р: вы оказались в незнакомом вам месте ваши действия а-бежать, b-кричать)

из питона в с++!! срочно!! 19 балловКод на питон:n = int(input())a = input().split()a.sort(key=lambda x: sum(map(int, x)), reverse=True)for i in range

(n): print(a[i], end =’ ‘)

Дан фрагмент электронной таблицы. Из ячейки С3 в ячейку D4 была скопирована формула. При копировании адреса ячеек в формуле автоматически изменились.

Каким стало числовое значение формулы в ячейке D4?

Из питона в С++!! Срочно!
вот код на питон:
def main():
n = int(input())
a = input().split(maxsplit=n)
a.sort(key=lambda x: sum(map(int, x)), rever

se=True)
print(*a)
if __name__ == «__main__»:
main()

Вопросы и ответы по Amazon EC2 – Amazon Web Services

Вопрос. Что такое спотовый инстанс?

Спотовые инстансы – это свободные ресурсы EC2, которые позволяют сэкономить до 90 % средств по сравнению с инстансами по требованию. При этом AWS может прервать работу спотовых инстансов после соответствующего уведомления, отправленного за 2 минуты. Для спотовых инстансов используются те же базовые инстансы EC2, что и для инстансов по требованию и зарезервированных инстансов, при этом спотовые инстансы лучше всего подходят для отказоустойчивых и гибких рабочих нагрузок. Спотовые инстансы – это дополнительный вычислительный ресурс, который можно использовать вместе с инстансами по требованию и зарезервированными инстансами.

Вопрос. Чем отличается спотовый инстанс от инстанса по требованию или зарезервированного инстанса?

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

Дополнительную информацию о спотовых инстансах см. здесь.

Вопрос. Как приобрести и запустить спотовый инстанс?

Спотовые инстансы можно запускать с помощью тех же инструментов, которые в настоящее время используются для запуска инстансов, включая Консоль управления AWS, группы Auto Scaling, команду запуска инстансов и спотовые группы. Кроме того, запуск спотовых инстансов поддерживают многие сервисы AWS, например EMR, ECS, Datapipeline, Cloudformation и Batch.

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

Дополнительную информацию о запросе спотовых инстансов см. здесь.

Вопрос. Сколько спотовых инстансов может запросить пользователь?

Количество запрашиваемых спотовых инстансов должно быть в рамках лимита инстансов, установленного для каждого региона. Следует отметить, что для новых клиентов AWS установленное ограничение может иметь меньшее значение. Дополнительную информацию о лимитах для спотовых инстансов см. в Руководстве пользователя Amazon EC2.

При необходимости получения большего количества заполните документ Форма запроса инстанса Amazon EC2 с указанием примера их использования, после чего мы рассмотрим возможность увеличения количества инстансов. Увеличение лимитов распространяется на тот регион, для которого оно было запрошено.

Вопрос. Какая плата будет начисляться за использование спотовых инстансов?

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

Вопрос. Что такое пул спотовых ресурсов?

Пул спотовых ресурсов – это набор неиспользуемых инстансов EC2 с тем же типом инстанса, операционной системой, зоной доступности и сетевой платформой (EC2-Classic или EC2-VPC). Цены разных пулов спотовых ресурсов могут отличаться в зависимости от предложения и спроса.

Вопрос. Какие существуют рекомендации по использованию спотовых инстансов?

Настоятельно рекомендуется использовать несколько пулов спотовых ресурсов для максимального увеличения доступных спотовых ресурсов. EC2 предоставляет встроенные возможности автоматизации, позволяющие найти самые экономичные ресурсы среди множества пулов спотовых ресурсов с помощью спотовой группы, группы EC2 или EC2 Auto Scaling. Дополнительную информацию см. в Рекомендациях по использованию спотовых инстансов.

Вопрос. Как узнать состояние запроса на спотовые инстансы?

Состояние запроса на спотовые инстансы можно узнать с помощью кода состояния запроса на спотовые инстансы и соответствующего сообщения. Доступ к информации о состоянии запроса на спотовые инстансы можно получить на странице спотовых инстансов консоли EC2 в Консоли управления AWS, API и интерфейсе командной строки. Дополнительную информацию см. в Руководстве по Amazon EC2 для разработчиков.

Вопрос. Есть ли возможность заказывать спотовые инстансы любых семейств и размеров в любых регионах?

Спотовые инстансы доступны во всех публичных регионах AWS. Спотовые инстансы доступны практически для всех семейств и размеров инстансов EC2, включая самые новые типы инстансов: оптимизированные для вычислений, инстансы с применением графического ускорения и инстансы FPGA. Полный список типов инстансов, поддерживаемых в каждом регионе, см. здесь.

Вопрос. Какие операционные системы доступны на спотовых инстансах?

В список доступных систем входят Linux/UNIX, Windows Server и Red Hat Enterprise Linux (RHEL). Windows Server с SQL Server в настоящее время недоступна.

Вопрос. Можно ли использовать спотовый инстанс с платным AMI для стороннего программного обеспечения (например, программных пакетов IBM)?

В настоящий момент нет.

Вопрос. Могу ли я остановить запущенные мной спотовые инстансы?

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

Вопрос. Как остановить спотовые инстансы?

Можно остановить свои спотовые инстансы, вызвав API StopInstances и предоставив идентификаторы для спотовых инстансов. Эти действия похожи на те, которые предпринимаются для остановки инстансов по требованию. Перевести инстанс в спящий режим можно в Консоли управления AWS, указав нужный инстанс, а затем выбрав «Actions > Instance State > Stop – Hibernate».

Вопрос. Как запустить остановленные спотовые инстансы?

Можно запустить остановленные спотовые инстансы, вызвав API StartInstances и предоставив идентификаторы для спотовых инстансов. Эти действия похожи на те, которые предпринимаются для запуска инстансов по требованию. Можно возобновить работу инстанса в Консоли управления AWS, указав нужный инстанс, а затем выбрав «Actions > Instance State > Start».

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

Вопрос. Как узнать, остановил ли я свой спотовый инстанс или его работа была прервана?

Узнать, был спотовый инстанс остановлен или все же его работа была прервана, можно с помощью кода состояния запроса на спотовые инстансы. Информация отображается как состояние запроса на спотовые инстансы на соответствующей странице в Консоли управления AWS или посредством ввода команды DescribeSpotInstanceRequests API в поле «status-code».

Если код состояния запроса на спотовые инстансы – «instance-stopped-by-user», это означает, что вы остановили свой спотовый инстанс.

Вопрос. Как будет начисляться плата, если работа моего спотового инстанса остановлена или прервана?

Если работа спотового инстанса будет прервана или остановлена Amazon EC2 во время первого часа работы инстанса, это время его использования оплачиваться не будет. Однако если вы завершите или остановите работу спотового инстанса самостоятельно, будет начислена плата с округлением до ближайшей секунды. Если работа спотового инстанса будет прервана или остановлена Amazon EC2 в любое время в течение любого последующего часа работы инстанса, будет начислена плата за фактическое время использования с округлением до ближайшей секунды. Если вы используете ОС Windows или Red Hat Enterprise Linux (RHEL) и при этом завершите или остановите работу спотового инстанса самостоятельно, будет начислена плата за полный час.

Вопрос. Когда работа моего спотового инстанса может быть прервана?

За последние 3 месяца 92 % прерываний работы спотовых инстансов происходили на стороне клиентов, которые вручную останавливали работу инстансов после завершения работы приложений.

EC2 может потребоваться отозвать спотовые инстансы, выделенные клиенту, по двум возможным причинам. Основная причина – это потребности в ресурсах Amazon EC2 (например, использование инстансов по требованию или зарезервированных инстансов). Во втором случае, если задан параметр «максимальная спотовая цена», при этом спотовая цена превысила указанную цену, через две минуты после соответствующего уведомления инстанс будет остановлен. Указанный параметр определяет максимальную цену, которую клиент готов заплатить за час работы спотового инстанса, при этом по умолчанию его значение соответствует цене инстанса по требованию. Как и прежде, работа спотовых инстансов будет оплачиваться по рыночной спотовой цене, действующей в момент запуска инстанса, а не по указанной максимальной цене, при этом плата будет начисляться на посекундной основе.

Вопрос. Что произойдет со спотовым инстансом, когда его работа будет прервана?

У клиентов есть возможность выбрать, что произойдет со спотовым инстансом, если его работа будет прервана: завершить работу, остановить или перевести в спящий режим. Остановка и перевод в спящий режим доступны для постоянных заявок на спотовые инстансы и спотовых групп с включенным параметром «maintain». По умолчанию работа инстансов завершается.

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

Вопрос. В чем разница между остановкой и спящим режимом?

При переходе инстанса в спящий режим данные оперативной памяти сохраняются. В случае остановки инстанс отключается, а данные оперативной памяти удаляются.

В обоих случаях данные из корневого тома EBS и любых подключенных томов данных EBS сохраняются. Неизменным остается как частный IP‑адрес, так и эластичный IP‑адрес (если такой используется). Поведение на сетевом уровне будет аналогично тому, что описано для рабочего процесса EC2, связанного с остановкой‑запуском. Остановка и спящий режим доступны только для инстансов на базе Amazon EBS. Локальное хранилище инстансов не сохраняется.

Вопрос. Что делать, если объем корневого тома EBS недостаточен для сохранения состояния памяти (ОЗУ) для спящего режима?

Для записи данных из памяти на корневом томе EBS должно быть достаточно места. Если места на корневом томе EBS недостаточно, попытка перехода в спящий режим завершится ошибкой, при этом инстанс будет выключен. Убедитесь, что том EBS имеет достаточный объем для сохранения данных памяти, прежде чем выбирать спящий режим.

Вопрос. В чем преимущество перевода инстанса в спящий режим при прерывании его работы?

В спящем режиме работа спотовых инстансов в случае прерывания будет приостановлена и возобновлена, что позволяет продолжить выполнение рабочих нагрузок с момента остановки. Спящий режим можно использовать, если один или несколько инстансов должны сохранять свое состояние между циклами отключения-запуска, т. е. когда работа приложений, запущенных на спотовых инстансах, зависит от контекстных, деловых или сеансовых данных, хранящихся в ОЗУ.

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

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

Вопрос. Будет ли взиматься плата за использование спящего режима для спотовых инстансов?

Дополнительная плата за использование спящего режима для инстанса не взимается. Оплачивается только хранилище EBS и любые другие используемые ресурсы EC2. При переводе инстанса в спящий режим плата за пользование инстансом не взимается.

Вопрос. Можно ли возобновить работу инстанса, находящегося в спящем режиме?

Нет. Нельзя напрямую возобновить работу инстанса, находящегося в спящем режиме. Amazon EC2 управляет циклами перехода в спящий режим, а также выхода из него. Если спотовый инстанс был переведен в спящий режим, он будет восстановлен Amazon EC2, когда ресурсы станут доступны. 

Вопрос. Какие инстансы и операционные системы поддерживают спящий режим?

В настоящее время спящий режим для спотовых инстансов поддерживается для образов Amazon Linux AMI и операционных систем Ubuntu и Microsoft Windows, работающих на любом типе инстансов семейств C3, C4, C5, M4, M5, R3 и R4 с объемом памяти (RAM) до 100 ГиБ.

Перечень поддерживаемых версий ОС см. в разделе, посвященном спящему режиму для спотовых инстансов.

Вопрос. Как начисляется плата, если спотовая цена изменяется во время работы инстанса?

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

Вопрос. Где получить информацию об истории использования спотовых инстансов и платежах?

Консоль управления AWS создает подробный отчет о платежах, в котором указывается время запуска и завершения работы/остановки по каждому инстансу. Используя API, клиенты могут сравнить отчет о платежах с данными истории для проверки соответствия платежей и спотовых цен.

Вопрос. Будет ли прерываться работа блоков спотовых инстансов (спотовых инстансов фиксированной продолжительности)?

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

Вопрос. Что такое спотовая группа?

Спотовая группа позволяет автоматически запрашивать сразу несколько спотовых инстансов и управлять ими, что позволяет обеспечить наименьшую цену за единицу ресурсов для кластера или приложения, например задания пакетной обработки, рабочего процесса Hadoop или высокопроизводительных распределенных вычислений. Можно включать те типы инстансов, которые может использовать приложение. С учетом требований приложения задается необходимый объем ресурсов (можно указать количество инстансов, виртуальных ЦПУ, объем памяти, емкость хранилища или пропускную способность сети) и обновляется необходимый объем ресурсов после запуска группы. Спотовые группы позволяют запускать и поддерживать целевой уровень ресурсов, а также автоматически запрашивать ресурсы для замещения инстансов, работа которых была прервана или прекращена вручную. Подробнее о спотовых группах.

Вопрос. Взимается ли дополнительная плата за запросы на спотовые группы?

Нет, дополнительная плата за запросы на спотовые группы не взимается.

Вопрос. Какие существуют ограничения по запросам на спотовые группы?

Ознакомьтесь с разделом Ограничения для спотовых групп Руководства пользователя Amazon EC2, чтобы узнать о существующих ограничениях по запросам на спотовые группы.

Вопрос. Что происходит, если запрос на спотовую группу пытается запустить спотовые инстансы и при этом превышается ограничение на спотовые запросы для данного региона?

Если запрос на спотовую группу превышает ограничение на запросы спотовых инстансов для данного региона, отдельные запросы спотовых инстансов будут отклонены с состоянием «Превышено ограничение запросов на спотовую группу». В истории запросов на спотовые группы будут отображаться все ошибки, связанные с превышением ограничений на спотовые запросы. Ознакомьтесь с разделом Мониторинг спотовых групп Руководства пользователя Amazon EC2, чтобы узнать, как отобразить историю запросов на спотовые группы.

Вопрос. Есть ли гарантия, что запросы на спотовые группы будут выполнены?

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

Вопрос. Можно ли подать запрос на спотовую группу в нескольких зонах доступности?

Да. Ознакомьтесь с разделом Примеры спотовых групп Руководства пользователя Amazon EC2, чтобы узнать, как подать запрос на спотовую группу в нескольких зонах доступности.

Вопрос. Можно ли подать запрос на спотовую группу в нескольких регионах?

Нет, запросы на группы в нескольких регионах не поддерживаются.

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

API RequestSpotFleet позволяет воспользоваться одной из трех стратегий распределения: capacity‑optimized, lowestPrice и diversified. Стратегия распределения с оптимизацией ресурсов пытается выделить спотовые инстансы из пула с наибольшей доступностью, анализируя метрики ресурсов. Эта стратегия хорошо подходит для рабочих нагрузок с высокой стоимостью прерывания, к которым относятся большие данные и аналитика, рендеринг изображений и мультимедийного контента, машинное обучение и высокопроизводительные вычисления.

Стратегия lowestPrice позволяет распределять ресурсы спотовой группы между пулами инстансов с минимальной стоимостью единицы ресурсов на время передачи запроса. Стратегия diversified позволяет распределять ресурсы спотовой группы между несколькими пулами спотовых инстансов. Эта стратегия позволяет поддерживать целевой уровень ресурсов группы и повысить доступность приложения в процессе колебаний объема спотовых ресурсов.

Запуск ресурсов приложения в неоднородных пулах спотовых инстансов позволяет дополнительно сократить эксплуатационные расходы группы с течением времени. Подробности см. в Руководстве пользователя по Amazon EC2.

Вопрос. Возможно ли с помощью тега отметить запрос на спотовую группу?

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

Вопрос. Как посмотреть, к каким спотовым группам принадлежат мои спотовые инстансы?

Чтобы посмотреть, какие спотовые инстансы принадлежат к спотовой группе, укажите запрос на группу. Запросы на группы остаются доступны в течение 48 часов после прекращения работы всех спотовых инстансов. Дополнительную информацию об отображении запроса на спотовую группу см. в Руководстве пользователя Amazon EC2.

Вопрос. Можно ли изменить запрос на спотовую группу?

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

Вопрос. Можно ли указать различные образы AMI для каждого типа инстанса, который будет использоваться?

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

Вопрос. Можно ли использовать спотовую группу вместе с сервисами Elastic Load Balancing, Auto Scaling или Elastic MapReduce?

Спотовую группу можно использовать с такими возможностями сервиса Auto Scaling, как отслеживание целевых значений, проверка работоспособности, метрики CloudWatch и т. д. Кроме того, можно подключать инстансы к балансировщикам нагрузки сервиса Elastic Load Balancing (как к Classic Load Balancer, так и к Application Load Balancer). В Elastic MapReduce есть функция под названием «Группы инстансов», которая предоставляет возможности, подобные возможностям спотовой группы.

Вопрос. Может ли запрос на спотовую группу прекратить работу спотовых инстансов, если они больше не выполняются в спотовом пуле с самой низкой ценой или оптимизацией по ресурсам, и затем повторно запустить их?

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

Вопрос. Можно ли использовать со спотовой группой модели поведения, связанные с остановкой или переходом в спящий режим после прерывания работы?

Да. Остановка-запуск и спящий режим-возобновление работы поддерживаются спотовой группой при включенном параметре «maintain» группы. 

Задача №10. Измерение количества информации. Основы комбинаторики.

Автор материалов — Лада Борисовна Есакова.

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

Чтобы найти информационный объем сообщения I, нужно количество символов этого сообщения N умножить на количество бит, выделяемых для кодирования одного символа

K : I = N * K.

Количество символов в некотором алфавите называется мощностью алфавита.

Несложно понять, что количество слов длиной N, составленных из символов (букв) алфавита мощностью M равно MN.

При компьютерном кодировании мощность алфавита равна 2, значит количество слов длиной N равно 2N.

Подсчет количества буквенных цепочек

Пример 1.

Все 5-бук­вен­ные слова, со­став­лен­ные из букв А, О, У, за­пи­са­ны в ал­фа­вит­ном по­ряд­ке. Вот на­ча­ло спис­ка:

1. ААААА

2. ААААО

3. ААААУ

4. АААОА

……

За­пи­ши­те слово, ко­то­рое стоит на 210-м месте от на­ча­ла спис­ка.

 

Решение:

За­ме­ним буквы А, О, У на 0, 1, 2 и вы­пи­шем на­ча­ло спис­ка:

1. 00000

2. 00001

3. 00002

4. 00010

По­лу­чен­ная за­пись есть числа, за­пи­сан­ные в тро­ич­ной си­сте­ме счис­ле­ния в по­ряд­ке воз­рас­та­ния. Тогда на 210 месте будет сто­ять число 209 (т. к. пер­вое число 0). Пе­ре­ведём число 209 в тро­ич­ную систему: 20910 = 212023

Заменим обратно цифры на буквы и получим УОУАУ.

Ответ: УОУАУ

 

Пример 2.

Сколь­ко слов длины 6, на­чи­на­ю­щих­ся с со­глас­ной буквы, можно со­ста­вить из букв Г, О, Д? Каж­дая буква может вхо­дить в слово не­сколь­ко раз. Слова не обя­за­тель­но долж­ны быть осмыс­лен­ны­ми сло­ва­ми рус­ско­го языка.

Решение:

На пер­вом месте может сто­ять две буквы: Г или Д, на осталь­ных — три буквы.

Слов, начинающихся на Г, 35. Слов, начинающихся на Д, тоже 35.Таким об­ра­зом, можно со­ста­вить 2 · 35 = 486 слов.

Ответ: 486

 

Пример 3.

Вася со­став­ля­ет 5-бук­вен­ные слова, в ко­то­рых есть толь­ко буквы С, Л, О, Н, причём буква С ис­поль­зу­ет­ся в каж­дом слове ровно 1 раз. Каж­дая из дру­гих до­пу­сти­мых букв может встре­чать­ся в слове любое ко­ли­че­ство раз или не встре­чать­ся со­всем. Сло­вом счи­та­ет­ся любая до­пу­сти­мая по­сле­до­ва­тель­ность букв, не обя­за­тель­но осмыс­лен­ная. Сколь­ко су­ще­ству­ет таких слов, ко­то­рые может на­пи­сать Вася?

 

Решение:

Пусть С стоит в слове на пер­вом месте. Тогда на каж­дое из остав­ших­ся 4 мест можно по­ста­вить не­за­ви­си­мо одну из 3 букв. То есть всего 3*3*3*3 = 81 ва­ри­ант. Таким об­ра­зом, С можно по оче­ре­ди по­ста­вить на все 5 мест, в каж­дом слу­чае по­лу­чая 81 ва­ри­ант. Итого по­лу­ча­ет­ся 81 * 5 = 405 слов.

Ответ: 405

 

Количество информации при двоичном (компьютерном) кодировании

 

Пример 4.

Объем сообщения – 7,5 Кбайт. Известно, что данное сообщение содержит 7680 символов. Какова мощность алфавита?

Решение:

Объем сообщения I, написанного в исходном алфавите мощности M, содержащего N символов, равен: I = log2M * N

I = 7680 * log2M

Log2M = (7,5 * 213 бит) / 7680 =(7,5 * 213) /(15 * 29) = 8

M = 28 = 256

Ответ: 256

 

Количество информации при различных (не компьютерных) способах кодирования

Пример 5.

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

Решение:

Мы имеем ал­фа­вит из двух букв: точка и тире. Из двух букв можно со­ста­вить 24 четырёхбук­вен­ных слова и 25 пя­ти­бук­вен­ных слов.

Значит, всего можно закодировать 16 + 32 = 48 различных символов.

Ответ: 48

 

Пример 6.

Све­то­вое табло со­сто­ит из лам­по­чек. Каж­дая лам­поч­ка может на­хо­дить­ся в одном из трех со­сто­я­ний («вклю­че­но», «вы­клю­че­но» или «ми­га­ет»). Какое наи­мень­шее ко­ли­че­ство лам­по­чек долж­но на­хо­дить­ся на табло, чтобы с его по­мо­щью можно было пе­ре­дать 18 раз­лич­ных сиг­на­лов?

Решение:

Мощность алфавита M =3 («вклю­че­но», «вы­клю­че­но» или «ми­га­ет»).

Количество различных сигналов 18 <= MN= 3N. (Поскольку равенство не выполняется, N берем с избытком, иначе не сможем закодировать все сигналы). N = 3.

Ответ: 3

Ты нашел то, что искал? Поделись с друзьями!

Журнал Теле-Спутник

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

Кабельные сети считаются средой, более защищенной от помех по сравнению с эфирными или спутниковыми каналами, поэтому там используется более слабая помехозащита и допускается модуляция с высокой кратностью. По сравнению с DVB-S в DVB-C исключена внутренняя1 кодозащита, в частности наложение сверточного кода, применяемого в спутниковом и эфирном DVB вещании. Для декодирования сверточного кода традиционно используется декодер Viterby, реализующий один из возможных алгоритмов декодирования сверточного кода. Название декодера иногда ошибочно распространяют и на сверточный кодер. Но это лирическое отступление, так как в стандарте DVB-C его не применяют, ограничиваясь внешней кодозащитой. Внешней она называется потому, что, в отличие от внутренней, реализуется не в модемах, а в кодерах и декодерах, оперируя с немодулированным потоком MPEG-2 TC. Она включает ряд процедур, в том числе наложение укороченного кода Рида-Соломона, позволяющего закодировать пакет стандартной длины в 188 байт с использованием 8 дополнительных, контрольных байт. В результате пакеты транспортного потока увеличивается до 204 байт.
Формирование модулированного сигнала и предшествующая ему раскладка битов по символам выполняются в модуляторе.
Стандарт прописывает применение квадратурной амплитудной модуляции QAM (КАМ), использующей модуляцию несущей и по фазе, и по амплитуде. В зависимости от условий передачи могут выбираться разные кратности модуляции. Стандарт допускает использование модуляций от QAM 16 до QAM 256. Кратность указывает число символов (состояний модулируемой несущей), используемых для передачи данных. Количество бит, передаваемых одним символом, определяется из выражения 2х= Y, то есть как Х = log2Y где Х — количество бит, а Y — кратность модуляции. Таким образом при QAM 16 один символ передает 4 бита, а при QAM 256 — 8 бит.
В качестве примера на рисунке приведены констеляционные диаграммы (созвездия символов) для модуляций QAM 16, QAM 32 и QAM 64 (стандарт стр.14). Положение символа на констеляционной диаграмме в графической форме отображает амплитуду и фазы несущей, модулированной этим символом.

Не будем подробно останавливаться на процедуре распределения битов по символам, скажем только, при этом учитывается разряд (вес) бита в соответствующем байте транспортного потока. Размещение символов в поле констеляционной диаграммы выполняется таким образом, чтобы расстояние между каждыми символами определялось весом бит, которыми они различаются. Символы, различающиеся старшими битами, разнесены дальше, а соседние символы различаются наименее значимыми битами транспортного потока. Два верхних бита каждой группы определяют квадрант констелляционного поля. Алгоритмы распределения, разумеется, стандартизированы. Затем для каждого символа вычисляется составляющие I и Q (его проекции на оси ординат и абсцисс), и эта информация передается на ЦАП, который переводит обе составляющие в аналоговую форму. Точность преобразования зависит от числа разрядов, используемых при вычислении I и Q, от числа отсчетов, используемых для его вычисления, также от величины амплитудных искажений, обусловленных помехами радиотехнического характера. Затем края полученных импульсов скругляются фильтром Найквиста, с фиксированным в стандарте коэффициентом скругления ?=0,15. В результате их спектр слегка размазывается, и продолжительность символа удлиняется на 15 %. Полученные импульсы используются для модуляции ПЧ.
Аппаратная реализация этого процесса может быть разной. Иногда используется отдельный цифро-аналоговый преобразователь, а иногда функции ЦАП и модуляции реализуются единой микросхемой, методом DDS (Direct Digital Synthesis).
О процедурах кодирования и модуляции можно подробнее прочитать, например, в [1], а о характеристиках модуляторов в [2], где изложены требования и к большинству других компонентов головной станции.

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

Транскодирование
Простейший вариант — ретрансляция всего MPTS пакета, принятого со спутника или из эфира. Для этой цели нужно поменять модуляцию и систему помехозащитного кодирования, то есть демодулировать поток, сняв при этом внутреннюю (интегрированную в модем) систему кодозащиты, сформировать новый поток, модулированный в QAM, и перенести его на частоту выбранного канала. Это задача-минимум, которую выполняют простейшие трансмодуляторы. Более продвинутые модели позволяют также отфильтровывать ненужные элементарные потоки (PID) и редактировать служебные таблицы. Отфильтровываться могут целые программы или отдельные составляющие программ, например аудиопотоки на иностранных языках и сообщения ECM и ЕММ для системы доступа. В некоторых старых моделях отфильтрованные потоки замещались пустыми битами, то есть они просто оказывались недоступными для приема, а снижения суммарной скорости не происходило. В более новых моделях отфильтрованные потоки ничем не замещаются. Что касается служебных таблиц, то в случае фильтрации PID-ов редактированию подлежат таблицы PAT — с PID-ами всех таблиц PMT, сами таблицы PMT для частично или полностью удаленных программ и таблица SDT с описанием услуг. Кроме того, должна быть изменена таблица NIT, в которую вместо параметров транспондеров, относящихся к спутниковой сети, из которой был принят пакет, должны быть занесены частоты, используемые для цифрового вещания в кабельной сети. Эти данные нужны абонентскому приемнику для настройки на нужный канал. Кроме того, любое преобразование сигнала приводит к сбою периодичности PCR, которая восстанавливается перенесением их на надлежащие расстояния. Такие трансмодуляторы есть в линейках головного оборудования Ikusi, Blankom, WISI и других компаний. Что касается последних версий трансмодуляторов WISI OV 75, то они уже поддерживают простейшие функции ремультиплексирования, позволяя компоновать выходной поток из двух входных.

Ремультиплексирование
Ремультиплексирование — более сложная процедура, предусматривающая демультиплексирование входных пакетов и формирование новых пакетов из их компонентов.
Подробная статья [3] о разновидностях и характеристиках мультиплексеров была опубликована в январском «Теле-Спутнике» за этот год и уже выложена в архиве на сайте журнала.
Наиболее распространенный вариант построения головной станции с ремультиплексированием показан на рис. 2. В качестве примера взято оборудование китайской компании CTI — типичного производителя бюджетных решений для сетей DVB.

Оно предусматривает использование спутниковых приемников с ASI выходами, MPEG-2 кодеров для местных и аналоговых эфирных сигналов, мультиплексер с ASI интерфейсами (их может быть несколько, по числу формируемых пакетов) и модулятор со встроенным up-конвертером на выходе каждого ремультиплексера. Практически все ремультиплексеры такого рода имеют встроенный скремблер, позволяющий закрывать формируемый пакет DVB совместимой системой доступа. Принципы работы и критерии выбора системы доступа будут рассмотрены в следующих статьях.
Однако такая головная станция получается не очень дешевой из-за применения относительно дорогих ASI интерфейсов. Значительную экономию при прочих равных дает применение интегрированных аппаратов, в которых кодеры, мультиплексеры и модулятор размещены на одной плате. Наиболее известные гибриды такого рода выпускаются ставропольским заводом Сигнал (TLS5001), украинской компанией «Рокс» (блок формирователя пакета цифровых телевизионных программ) и, с недавнего времени, компанией WISI (OTхххххх). Но, разумеется, платой за экономию оказывается недостаток гибкости и масштабируемости таких систем.
Наиболее перспективным вариантом считается соединение модулей цифровых станций по интерфейсам IP/Ethernet через Ethernet-коммутатор; такое решение часто получается дешевле, чем при ASI коммутации (хотя значительно дороже интегрированных гибридов), но главное, что оно позволяет гибко переконфигурировать и наращивать станцию и даже создавать распределенные станции, с размещением части модулей в удаленных точках. Оборудование для комплектации таких станций выпускают все без исключения ведущие производители, но в бюджетном секторе такого пока, к сожалению, нет. Из менее дорогих марок можно вспомнить только аппаратуру испанской компании Sidsa. Но учитывая схемы работы китайских производителей, через пару лет можно ожидать появления бюджетных копий этих решений азиатского происхождения.
А если говорить о подводных камнях бюджетного DVB оборудования в целом, то частыми, (хотя и необязательными) проблемами является использование в них старых чипсетов, ограничивающих и возможности в плане компрессии, модульности и т.д.
Иногда отсутствие гибкости связано не только с самой концепцией устройства, но также и с тем, что готовое решение «все в одном флаконе» перекуплено у каких-то дальнеазиатских компаний, и адаптировать ПО под российские требования или под конкретные задачи оператора уже некому.
Следует сказать, что не все бюджетное оборудование поддерживает модуляцию высокой кратности (QAM 128 и в особенности QAM 256). Она может быть в принципе не заложена в аппаратуру, или же ЦАП, модулятор и следующий за ними up конвертер вносят в сигнал амплитудные и фазовые искажения (они отражаются параметром MER), не позволяющие ее использовать.
Отметим, что для частотного конвертирования сигналов DVB-C должны использоваться специальные «цифровые» модули, потому что схемотехника аналоговых конвертеров не обеспечивает требуемой фазовой линейности. Качество модулятора характеризуется параметрами S/N и MER (см. вкладку).
Критерии выбора спутниковых приемников для цифровой и аналоговой станции мало чем отличаются. Спутниковый прием на цифровой станции, в основном, отличается тем, что в большинстве случаев не требуется декодировать сигналы до аналога, так как для последующих преобразований нужен транспортный поток MPEG-2 TS. В этом случае актуальность приобретает умение приемника с модулем доступа поддерживать открытие всех ретранслируемых программ пакета с помощью одной карты. Для этой цели, разумеется, должны использоваться профессиональные смарт-карты, авторизованные для работы в таком режиме, и многопрограммные модули доступа; но эта функция должна поддерживаться и самими приемниками.

Каналы с переменной скоростью потока
При ремультиплексировании каналов, принимаемых со спутника, возникает еще проблема переменной скорости кодирования программ. Часть каналов распространяет через спутники версии, специально предназначенные для ретрансляции. Они передаются отдельным потоком и с постоянной скоростью. Но многие каналы предлагают кабельным операторам брать сигнал из какого-нибудь спутникового пакета, например «НТВ-Плюс». А практически все такие пакеты формируются с применением статистического мультиплексирования. То есть ширина потока, выделяемого каждой программе, динамически меняется в зависимости от сюжета, в то время как суммарная полоса, занимаемая пакетом, остается неизменной. Это позволяет спутниковым операторам экономить около 20% частотного ресурса, но оборачивается серьезным неудобством при ремультиплексировании каналов, так как при расчете полосы трудно учесть возможные флуктуации скоростей всех программ, вводимых в новый пакет.
В принципе, при настройке системы статистического мультиплексирования для каждого канала, входящего в состав пакета, устанавливается минимальный и максимальный пороги скорости. Но эта информация, как правило, не публикуется.
Есть несколько решений этой проблемы. Первый — использование трансрейтера, — устройства, позволяющего гасить скоростные пики ремультиплексируемых пакетов без декомпрессии составляющих. Это достигается, во-первых, за счет динамического снижения скорости некоторых программ методом, описанным в [3] а, во-вторых, задержкой кратковременных пиков в буфере. Этот метод удобен, но дорог, и позволяет снизить скорость в пределах 25%.
Более радикальный способ оптимизировать скорость — декодировать каналы до SDI и затем закодировать их заново в режиме CBR (с постоянной скоростью кодирования). По этому принципу реализовано перекодирование, например, в платформе Pro Stream от Harmonic, ориентированной на обслуживание сетей с разной пропускной способностью каналов.
Еще один способ — декодирование сигнала до аналога и повторное кодирование с постоянной скоростью. Перекодирование через аналог портит видеосигнал больше, чем перекодирование через SDI, и единственным преимуществом такого подхода является наличие дешевого оборудования с аналоговыми интерфейсами.И, наконец, если есть свободный частотный ресурс, то можно просто заложить достаточный запас по ширине полосы. Какой же запас можно считать достаточным? Рекомендации выглядят следующим образом: необходимо несколько дней отслеживать скорости программ, планируемых к включению в пакет, определить максимальную скорость для каждой и добавить 20%. Такой запас кажется чрезмерным, однако эта рекомендация устойчиво повторяется разными практиками.
Разумеется, возможны и промежуточные решения — перекодирование части программ, характеризующихся широкой полосой и сильными всплесками (например, спортивных). Но надо отдавать себе отчет, что это приведет к снижению качества картинки.
Основное препятствие к использованию этой методики — отсутствие анализатора потока, позволяющего собрать данные о скорости за несколько дней. Анализаторы с потоков с такими возможностями небольшим операторам не по карману. Классические анализаторы проводят трехуровневый анализ — контролируя качество РЧ сигнала, НЧ потока MPEG-2 TS и видеосигнала. В рамках контроля потока MPEG-2 TS они выявляют наличие в нем ошибок2 и позволяют формировать различную статистику. Такие анализаторы выпускаются такими компаниями, как Textronix, Rohde&Schwarz, JDSU и Pixelmetrix. Рассматривать их возможности здесь нет смысла из-за неактуальности такой аппаратуры для небольших операторов. На относительно небольшие кабельные сети ориентирован, пожалуй, только один анализатор из попадавшихся в поле нашего зрения — портативный прибор TT 4010 от Tandberg’a, с возможностями которого можно ознакомиться на сайте производителя. Правда, существуют еще программные анализаторы (ProgDVB и AltDVB), устанавливаемые на ПК и работающие вместе с платами для приема DVB-S (аналогичные платы начали выпускаться и для DVB —С). Их возможности очень ограничены, они позволяют измерять скорости в интервале до получаса, но, в принципе, выбрав несколько показательных сюжетов, можно получить представление о характере скоростных скачков и с помощью этих программ. C распространением DVB-С потребность в недорогих анализаторах будет расти, и можно надеяться, что скоро появятся более совершенные программные решения, способные собирать более объемную статистику и выявлять ошибки на уровне транспортного потока.
В случае перекодирования в СBR запас по скорости должен быть минимальным, например, 200-300 кбит/с. Он предназначен компенсировать возможную неравномерность поступления потоков из буферов кодеров и мультиплексера.

Порядок расчета «кабельного» пакета программ
Предлагаемый порядок расчета пропускной способности одного канала практически полностью взят из форума «кабельное ТВ» на сайте «Теле-Спутника» [4].
Сначала надо определить полезную битовую скорость.
Информационная скорость зависит от ширины полосы (стандартные 8 МГц для одного пакета) и от выбранной кратности модуляции. Модулятор, в зависимости от реализации, может допускать дискретное или непрерывное изменение символьной скорости и, соответственно, полосы передачи. Нужно выбрать полосу, не превышающую 7,96 МГц, оставив небольшой запас по краям полосы в 8 МГц. Это исключит искажения сигналов ПАВ фильтров демодулятора на приемной стороне. Выберем, например, полосу в 7,92 МГц (один из вариантов, рекомендованных стандартом). Для определения скорости передачи символов и ширины выбранной полосы надо учесть 15-процентное расплывание символов за счет скругления их АЧХ фильтром Найквиста. Для взятого примера скорость составит 7,92 /1,15 = 6,89 МБод3.
Чтобы по символьной скорости определить битовую первую, необходимо умножить на количество бит, передаваемых одним символом. Так, если выбрана модуляция 64 QAM, то битовая скорость потока составит 6.89*6=41,34 Мбит/с. А чтобы определить полезную скорость, следует вычесть контрольные биты, добавляемые при наложении помехозащитного кода Рида-Соломона. В нашем случае полезная скорость составит 41.34*188/204=38,1 Мбит/с. Если планируется передача VBR кодированных программ, то надо оставить запас 7,5 Мбит/с (20 %), если CBR, то 200-300 кбит/с, а если смешанный пакет, то промежуточную величину.
Затем надо посчитать скорости программ, которые предполагается мультиплексировать в один пакет. В большинстве случаев нет необходимости передавать все компоненты принимаемых программ, в частности могут быть исключены лишние аудиопотоки, сообщения ECM и EMM от снятой системы доступа и, возможно, какие-то сервисные потоки. В этом случае пакет надо собирать на уровне элементарных потоков. Величина видео- и аудиопотоков при VBR определяется анализаторами, а при CBR — настройками кодеров.
В последнем случае скорость видео в зависимости от кодера и характера программ составит 3-6 Мбит/с. Нижняя граница 3-3,5 достигается только с помощью качественных кодеров от таких компаний, как Scientific-Atlanta, Harmonic, Tandberg и некоторых других. Дешевые кодеры часто сделаны на базе устаревших чипсетов и не позволяют сжимать поток ниже 5 Мбит /с. Стандартный стерео аудиоканал потребует 256 кбит/с, а моно — в два раза меньше Скорость остальных потоков также незначительная, и в отсутствии анализатораможет быть учтена приблизительно.
В [4] приведены следующие величины:
Служебные таблицы в зависимости от количества передаваемых программ потребуют от 200 до 400 кбит/с. В случае сохранения «спутниковой» системы доступа (или наложения собственной) в потоке будут передаваться сообщения EMM и ECM, на которые уйдет примерно столько же — 200-400 кбит/с. Телетекст съест по 200-250 кбит/с на каждую программу.
Затем пакет «набивается» программами до достижения установленного потолка. В процессе могут слегка корректироваться выбранные скорости программ — изменяться скорость выходных потоков кодеров или режим работы трансрейтера. В случае прямой ретрансляции принятых потоков теоретически можно поискать другой спутниковый пакет, в котором этот же канал передается с более подходящей скоростью.
Но на практике такой вариант неактуален, так как в договоре с ретранслируемым каналом прописывается источник сигнала, которым должен пользоваться кабельный оператор.
В среднем «кабельный» пакет вмещает 8-10 ТВ программ, хотя в каждом случае их число определяется индивидуально.
В последней части статьи мы планируем рассмотреть критерии выбора системы доступа и ряд вопросов, связанных с распространением DVB сигналов по кабельным сетям.

Литература :
[1] Л.А. Севальнев. Передача сигналов цифрового телевидения с информационным сжатием данных по кабельным линиям связи // Теле-Спутник №1, 1998, http://www.telesputnik.ru/archive/27/article/72.html
[2] А.Ануфриев. Идеология доставки контента в стандарте DVB // Теле-Спутник №4, 2003, http://www.telesputnik.ru/archive/90/article/48.html
[3] А. Бителева. Мультиплексеры http://www.telesputnik.ru/archive/135/article/74.html
[4] Теле-Спутник, Форум Кабельное ТВ, ветка «Расчет головного оборудования ЦКТВ», http://www.telesputnik.ru/forum/viewtopic.php?t=21993&postdays=0&postorder=asc&start=0

Двоичное кодирование текстовой информации и таблица кодов ASCII

Минимальные единицы измерения информации – это бит и байт.

Один бит позволяет закодировать 2 значения (0 или 1).

Используя два бита, можно закодировать 4 значения: 00, 01, 10, 11.

Тремя битами кодируются 8 разных значений: 000, 001, 010, 011, 100, 101, 110, 111.

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

Из приведенных примеров видно, что добавление одного бита увеличивает в 2 раза то количество значений, которое можно закодировать:

1 бит кодирует     –> 2 разных значения    (21 = 2),

2 бита кодируют –> 4 разных значения    (22 = 4),

3 бита кодируют –> 8 разных значений    (23 = 8),

4 бита кодируют –> 16 разных значений   (24 = 16),

5 бит кодируют   –> 32 разных значения   (25 = 32),

6 бит кодируют   –> 64 разных значения   (26 = 64),

7 бит кодируют   –> 128 разных значения (27 = 128),

8 бит кодируют    –> 256 разных значений (28 = 256),

9 бит кодируют   –> 512 разных значений  (29 = 512),

10 бит кодируют –> 1024 разных значений (210 = 1024).

Мы помним, что в одном байте не 9 и не 10 бит, а всего 8. Следовательно, с помощью одного байта можно закодировать 256 разных символов. Как Вы думаете, много это или мало? Давайте посмотрим на примере кодирования текстовой информации.

Как происходит кодирование текстовой информации

В русском языке 33 буквы и, значит, для их кодирования надо 33 байта. Компьютер различает большие (заглавные) и маленькие (строчные) буквы, только если они кодируются различными кодами. Значит, чтобы закодировать большие и маленькие буквы русского алфавита, потребуется 66 байт.

Для больших и маленьких букв английского алфавита потребуется ещё 52 байта. В итоге получается 66 + 52 = 118 байт. Сюда надо ещё добавить цифры (от 0 до 9), символ «пробел», все знаки препинания: точку, запятую, тире, восклицательный и вопросительный знаки, скобки: круглые, фигурные и квадратные, а также знаки математических операций: +, –, =, / (это деление), * (это умножение). Добавим также специальные символы: %, $, &, @, #, № и др. Все это вместе взятое как раз и составляет около 256 различных символов.

А дальше дело осталось за малым. Надо сделать так, чтобы все люди на Земле договорились между собой о том, какие именно коды (с 0 до 255, т.е. всего 256) присвоить символам. Допустим, все люди договорились, что код 33 означает восклицательный знак (!), а код 63 – вопросительный знак (?). И так же – для всех применяемых символов. Тогда это будет означать, что текст, набранный одним человеком на своем компьютере, всегда можно будет прочитать и распечатать другому человеку на другом компьютере.

Таблица ASCII

Такая всеобщая договоренность об одинаковом использовании чего-либо называется стандартом. В нашем случае стандарт должен представлять из себя таблицу, в которой зафиксировано соответствие кодов (с 0 до 255) и символов. Подобная таблица называется таблицей кодировки.

Но не всё так просто. Ведь символы, которые хороши, например, для Греции, не подойдут для Турции потому, что там используются другие буквы. Аналогично то, что хорошо для США, не подойдет для России, а то, что подойдет для России, не годится для Германии.

Поэтому приняли решение разделить таблицу кодов пополам.

Первые 128 кодов (с 0 до 127) должны быть стандартными и обязательными для всех стран и для всех компьютеров, это – международный стандарт.

А со второй половиной таблицы кодов (с 128 до 255) каждая страна может делать все, что угодно, и создавать в этой половине свой стандарт – национальный.

Первую (международную) половину таблицы кодов называют таблицей ASCII, которую создали в США и приняли во всем мире.

За вторую половину кодовой таблицы (с 128 до 255) стандарт ASCII не отвечает. Разные страны создают здесь свои национальные таблицы кодов.

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

Коды из международной таблицы ASCII

0-31 – Особые символы, которые не распечатываются на экране или на принтере. Они служат для выполнения специальных действий, например, для «перевода каретки» – перехода текста на новую строку, или для «табуляции» – установки курсора на специальные позиции в строке текста и т.п.

32 – Пробел, который является разделителем между словами. Это тоже символ, подлежащий кодировке, хоть он и отображается в виде «пустого места» между словами и символами.

33-47 – Специальные символы (круглые скобки и пр.) и знаки препинания (точка, запятая и пр.).

48-57 – Цифры от 0 до 9.

58-64 – Математические символы: плюс (+), минус (-), умножить (*), разделить (/) и пр., а также знаки препинания: двоеточие, точка с запятой и пр.

65-90 – Заглавные (прописные) английские буквы.

91-96 –  Специальные символы (квадратные скобки и пр.).

97-122 – Маленькие (строчные) английские буквы.

123-127 – Специальные символы (фигурные скобки и пр.).

За пределами таблицы ASCII, начиная с цифры 128 по 159, идут заглавные (прописные) русские буквы. А с цифры 160 по 170 и с 224 по 239 – маленькие (строчные) русские буквы.

Кодировка слова МИР

Пользуясь показанной кодировкой, мы можем представить себе, как компьютер кодирует и затем воспроизводит. Например, рассмотрим слово МИР (заглавными буквами). Это слово представляется тремя кодами:
букве М соответствует код 140 (по национальной российской системе кодировки),
для буквы И – это код 136 и
буква Р – это 144.

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

Десятичной цифре 140 соответствует двоичное число 10001100. Это можно проверить, если сделать следующие вычисления: 27 + 23 +22 = 140. Степень, в которую возводится каждая «двойка»  – это номер позиции двоичного числа 10001100, в которой стоит «1». Причем позиции нумеруются справа налево, начиная с нулевого номера  позиции: 0, 1, 2 и т.д.

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

Аналогичным образом можно убедиться, что цифре 136 соответствует двоичное число 10001000 (проверка: 27 + 23 = 136). А цифре 144 соответствует двоичное число 10010000 (проверка: 27 + 24 = 144).

Таким образом, в компьютере слово МИР будет храниться в виде следующей последовательности нулей и единиц (бит): 10001100  10001000  10010000.

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

Неужели нужно знать все коды?

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

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

Упражнения по компьютерной грамотности, позволяющие самостоятельно увидеть и почувствовать описанные системы кодировок, приведены в статье «Проверяем, кодирует ли компьютер текст?»

P.S. Статья закончилась, но можно еще прочитать:

Представление информации в компьютере

Что такое переменная в программировании и чем она отличается от константы

Смотрим на кодировку цвета



Получайте актуальные статьи по компьютерной грамотности прямо на ваш почтовый ящик.
Уже более 3.000 подписчиков

.

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

Автор: Надежда Широбокова


22 июня 2010




наборов символов

наборов символов

Жан ЛеЛуп и Боб Понтерио
СУНИ Кортланд
© 2003, 2017

Наборы символов

    Отправной точкой для наборов символов, которые мы находим на большинстве компьютеров, было ASCII
    (Американский стандартный код для обмена информацией). ASCII — это 7-битный
    код — один бит (двоичная цифра) — это единственный переключатель, который может быть включен
    или выкл, ноль или один.Наборы символов, используемые сегодня в США, обычно
    8-битные наборы с 256 различными символами, что фактически удваивает набор ASCII.

    Один бит может иметь 2 возможных состояния. 2 1 = 2. 0 или
    1.

    Два бита могут иметь 4 возможных состояния. 2 2 = 4. 00,01,10,11.
    (т.е. 0-3)

    Четыре бита могут иметь 16 возможных состояний. 2 4 = 16.
    0000,0001,0010,0011 и т. Д. (Т.е. 0-15)

    У семи битов может быть 128 возможных состояний.2 7 = 128.
    0000000,0000001,0000010 и т. Д. (Т.е. 0-127).

    Восемь битов могут иметь 256 возможных состояний. 2 8 = 256.
    00000000,00000001,00000010 и т. Д. (Т.е. 0-255).

    Восемь битов называются байтом . Наборы однобайтовых символов могут
    содержат 256 символов. Однако текущий стандарт — Unicode, который использует
    два байта для представления всех символов во всех системах письма в мире в едином наборе.

    Исходный код ASCII представлял собой 7-битный набор символов (128 возможных символов) без
    акцентированные буквы.Это использовалось в телетайпах. (Восьмой бит изначально использовался для проверки четности — способа поиска ошибок.)
    IBM и Mac создали расширенные наборы символов для своих персональных компьютеров, используя восьмой бит для
    удвоить количество символов. Как конкуренты, они не использовали то же самое
    персонажи в одинаковых позициях в своих наборах. Таким образом родились 8-битные наборы символов и несовместимость. Например, старый Microsoft DOS / Windows использовал символ 130 для é , но старые Mac использовали символ 142.Символ 130 на Mac стоил Ç . Сегодняшние стандарты уменьшили количество таких проблем.

    В Интернете многие кабели имели провода, предназначенные для передачи 7-битных кодов.
    Для отправки более сложных данных были разработаны схемы кодирования для
    преобразовать более сложные данные (например, 8-битные, двоичные [графики]) во что-то
    это могло пройти через 7-битный конвейер. Одна такая схема кодирования
    MIME (на самом деле много разных схем являются частью MIME — Многоцелевой
    Расширения электронной почты Интернета).Чтобы MIME работал, нужны два элемента:
    должны быть определены формат содержимого или набор символов (, какие символы или другой контент должны быть представлены ) и схема кодирования (, какие коды будут использоваться для представления этих символов )
    для содержания.

    Общий код, используемый для символов с диакритическими знаками — Quoted-Printable .
    Любые расширенные символы ( выше 127 ) кодируются с использованием строки из трех символов.
    Например, é — это = E9 .8BIT (по существу несжатый
    символьные данные) также является действительным кодом MIME и является наиболее распространенным способом отправки символов
    с акцентами сегодня.

    Чтобы код мог работать на двух разных типах машин с разными операционными системами и разными встроенными
    наборы символов, мы все должны согласовать стандартные наборы символов, в которые
    мы переведем. Международная организация по стандартизации (ISO)
    установил такие стандарты. Например, стандартный набор символов для Western
    Европейские языки — ISO-LATIN-I (или ISO-8859-1 ).Но пока компьютер знает, какой набор символов используется, он может быть запрограммирован на перевод и отображение этих символов, независимо от того, какой может быть собственный набор символов компьютера. é — это символ 130 в ISO-LATIN-I.

    Программа электронной почты, совместимая с MIME, будет использовать заголовки электронной почты для отслеживания
    какой набор символов и какая схема кодировки применяются к каждому электронному письму
    сообщение. Веб-браузер сделает то же самое. Это позволяет программе преобразовывать и знать, как отображать символы
    на любой машине, поэтому вся система кодирования прозрачна (пользователь не замечает) для пользователя.Для
    MIME Quoted-Printable на западноевропейских языках, эти заголовки могут
    выглядит так:

      X-Mailer: QUALCOMM Windows Eudora версии 5.1

      Mime-версия: 1.0

      Content-type: text / plain; кодировка = iso-8859-1

      Content-Transfer-Encoding: цитируется-для печати

И эти же заголовки MIME также используются на веб-страницах, поэтому веб-браузер, такой как Internet Explorer, Chrome или Firefox, знает, как отображать каждую страницу, независимо от того, где она была создана и где она просматривается.Пока компьютер знает, какой набор символов представлен, он знает, какой символ отображать.

Клавиатуры

Вы также должны в первую очередь ввести персонажей в компьютер. Windows и Mac уже давно позволяют делать это с помощью сочетаний клавиш. Лучший способ ввода символов в Windows — это выбрать раскладку клавиатуры, включающую символы, которые вы хотите ввести. Для набора текста на западноевропейских языках на американской клавиатуре самый безопасный и простой в использовании вариант, если вы уже умеете печатать на американской клавиатуре, — это международная американская клавиатура.В Windows 7, 8, 10 найдите вкладку «Клавиатуры и языки» на панели управления «Регион и язык» , чтобы изменить или добавить клавиатуру. Хотя многие программы могут иметь встроенные сочетания клавиш, преимущество использования клавиатуры в операционной системе (Windows, Mac) заключается в том, что она будет работать для всех программ.

Для получения интерактивной справки по клавиатурам см .:

Справка по клавиатуре

Неанглийские клавиатуры Windows 7; Общие для Windows и Mac; Windows 10

Учебное пособие по вопросам кода символов


Подстановочные таблицы набора символов (включая коды HTML для веб-страниц)


Возврат
к программе

телекоммуникаций | Технологии, примеры, устройства и факты

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

Блок-схема цифровой телекоммуникационной системы.

Британская энциклопедия, Inc.

Британская викторина

Мобильные телефоны

Здравствуйте? Сейчас ты меня слышишь? Проверьте свои знания в области мобильного общения с помощью этой викторины по мобильным телефонам!

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

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

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

Британская энциклопедия, Inc.

Если информация, которая должна быть передана, уже представлена ​​в двоичной форме (как при передаче данных), нет необходимости в цифровом кодировании сигнала.Но обычная голосовая связь, осуществляемая по телефону, не имеет двоичной формы; ни большая часть информации собирается для передачи с космического зонда, ни теле- и радиосигналы не собираются для передачи через спутниковую связь. Такие сигналы, которые постоянно меняются в диапазоне значений, называются аналоговыми, и в цифровых системах связи аналоговые сигналы должны быть преобразованы в цифровую форму. Процесс преобразования сигнала называется аналого-цифровым (A / D) преобразованием.

Получите подписку Britannica Premium и получите доступ к эксклюзивному контенту.
Подпишитесь сейчас

Аналого-цифровое преобразование начинается с дискретизации или измерения амплитуды аналогового сигнала в равные интервалы дискретных моментов времени. Тот факт, что образцы непрерывно изменяющейся волны могут использоваться для представления этой волны, основывается на предположении, что скорость изменения волны ограничена. Поскольку сигнал связи на самом деле представляет собой сложную волну — по существу, сумму ряда составляющих синусоидальных волн, каждая из которых имеет свои собственные точные амплитуды и фазы, — скорость изменения сложной волны может быть измерена с помощью частот колебаний всех его составляющие.Разница между максимальной скоростью колебаний (или самой высокой частотой) и минимальной скоростью колебаний (или самой низкой частотой) синусоидальных волн, составляющих сигнал, известна как ширина полосы ( B ) сигнала. Таким образом, полоса пропускания представляет собой максимальный частотный диапазон, занимаемый сигналом. В случае речевого сигнала, имеющего минимальную частоту 300 Гц и максимальную частоту 3300 Гц, ширина полосы составляет 3000 Гц или 3 килогерца. Аудиосигналы обычно занимают около 20 килогерц полосы пропускания, а стандартные видеосигналы занимают около 6 миллионов герц или 6 мегагерц.

Понятие полосы пропускания является центральным во всех телекоммуникациях. В аналого-цифровом преобразовании существует фундаментальная теорема, согласно которой аналоговый сигнал может быть однозначно представлен дискретными отсчетами, разнесенными не более чем на единицу по удвоенной ширине полосы (1/2 B ). Эту теорему обычно называют теоремой выборки, а интервал выборки (1/2 B секунд) называется интервалом Найквиста (в честь американского инженера-электрика Гарри Найквиста шведского происхождения).Как пример интервала Найквиста, в прошлой практике телефонной связи полоса пропускания, обычно фиксированная на уровне 3000 Гц, измерялась по крайней мере каждые 1/6 000 секунды. В настоящее время в секунду берутся 8000 выборок, чтобы увеличить частотный диапазон и точность воспроизведения речи.

Квантование

Для того, чтобы дискретизированный сигнал был сохранен или передан в цифровой форме, каждая дискретизированная амплитуда должна быть преобразована в одно из конечного числа возможных значений или уровней.Для упрощения преобразования в двоичную форму количество уровней обычно является степенью 2, то есть 8, 16, 32, 64, 128, 256 и так далее, в зависимости от требуемой степени точности. При цифровой передаче голоса обычно используется 256 уровней, поскольку тесты показали, что это обеспечивает адекватную точность воспроизведения для среднего телефонного слушателя.

На вход квантователя поступает последовательность дискретизированных амплитуд, для которых существует бесконечное количество возможных значений. С другой стороны, выход квантователя должен быть ограничен конечным числом уровней.Назначение бесконечно изменяемых амплитуд ограниченному количеству уровней неизбежно вносит неточность, а неточность приводит к соответствующему количеству искажений сигнала. (По этой причине квантование часто называют системой с потерями.) Степень неточности зависит от количества выходных уровней, используемых квантователем. Дополнительные уровни квантования повышают точность представления, но они также увеличивают требуемую емкость памяти или скорость передачи. Лучшая производительность при том же количестве выходных уровней может быть достигнута путем разумного размещения выходных уровней и пороговых значений амплитуды, необходимых для назначения этих уровней.Это размещение, в свою очередь, зависит от природы квантованного сигнала. Как правило, оптимальный квантователь помещает больше уровней в диапазоны амплитуды, где вероятность появления сигнала более высока, и меньшее количество уровней, в которых сигнал менее вероятен. Этот метод известен как нелинейное квантование. Нелинейное квантование также можно выполнить, пропустив сигнал через схему компрессора, которая усиливает слабые компоненты сигнала и ослабляет его сильные компоненты. Сжатый сигнал, теперь занимающий более узкий динамический диапазон, можно квантовать с равномерным или линейным интервалом между пороговыми значениями и выходными уровнями.В случае телефонного сигнала сжатый сигнал равномерно квантуется на 256 уровней, каждый уровень представлен последовательностью из восьми битов. На приемном конце восстановленный сигнал расширяется до исходного диапазона амплитуд. Эта последовательность сжатия и расширения, известная как компандирование, может дать эффективный динамический диапазон, эквивалентный 13 битам.

битов и байтов

битов и байтов

Биты и байты

Вот что-то вроде глоссария компьютерных модных словечек, с которыми вы встретитесь.
в использовании компьютера:

Бит
Компьютерные процессоры могут только определить, включен ли провод.К счастью, они могут смотреть сразу на множество проводов (см. Шину),
и реагировать на сложную последовательность включений и выключений довольно изощренно.
способами. Чтобы преобразовать эти шаблоны во что-то осмысленное
для людей мы считаем провод, который находится на отметке «1»
и провод, который отключен, чтобы быть «0». Тогда мы можем посмотреть
на проводах, ведущих в компьютер, и прочтите что-то вроде
00110111 00010000. Мы не знаем, что это означает для процессора,
это просто узор. Каждое место в шаблоне — это бит, который
может быть 1 или 0.Если для процессора это означает число, биты
составляют двоичное число.

Двоичные числа
В наши дни большинство из нас считает десятками. Использовались древние культуры
считать по 5, 12 или 24, но за последнюю тысячу лет,
счет десятками был нормой. когда вы видите число 145,
вы просто знаете, что он включает одну группу из десяти десятков, плюс четыре группы
из десяти и еще пять. Десять десятков — это сто или десять в квадрате. Десять
сотни — это тысяча, или десять до третьего. Есть шаблон
здесь.Каждая цифра представляет собой число десятков в степени.
позиции цифры, если вы начинаете отсчет с
ноль и считайте справа налево.

Если вы сделаете то же самое с битами, которые могут быть только 1 или 0,
каждая позиция в списке битов представляет некоторую степень двойки.
1001 означает одну восьмерку плюс отсутствие четверок, плюс отсутствие двоек, плюс одну дополнительную.
Это называется двоичной записью. Вы можете преобразовывать числа из двоичного
запись в десятичную систему счисления, но это бывает редко.

Байт
Такие числа, как 00110111 10110000, намного легче читать, если
вы помещаете пробелы каждые 8 ​​бит.В десятичной системе счисления мы используем запятые.
каждые три цифры по той же причине. Нет ничего особенного
около 8 бит, просто так началось. Оборудование есть
легче построить, если вы последовательно сгруппируете провода из одного куска
к другому. Некоторое старое оборудование использовалось для группировки проводов по 10 секунд, но
в 70-х годах идея работы в группах по 8 человек действительно взяла верх,
особенно в дизайне интегральных схем. Кто-то сделал
шутка о группе, несущей байт данных, и термин
застрявший. Иногда вы слышите группу из четырех битов, называемую полубайтом.

Наибольшее число, которое вы можете представить с помощью 8 бит, — это 11111111,
или 255 в десятичной системе счисления. Поскольку 00000000 — самый маленький, вы
может представлять 256 вещей байтом. (Помните, укус — это просто
шаблон. Это может быть буква или оттенок зеленого.)
биты в байте имеют числа. Самый правый бит — это бит 0, а
слева — бит 7. У этих двух битов тоже есть имена. Крайний правый
младший значащий бит или lsb. Это наименее важно,
потому что его изменение меньше всего влияет на значение.Который
это MSB? (Байты в большем количестве также могут называться наименьшими
значительный и самый значительный.)

Шестнадцатеричные числа
Даже с пробелом 00110111 10110000 довольно трудно читать.
Разработчики программного обеспечения часто используют шестнадцатеричный код для представления
бинарные паттерны. Шестнадцатеричный был создан путем взятия десятичного числа
к бинарной идее и идя другим путем. Кто-то добавил шесть цифр
на обычные 0-9, поэтому число до 15 может быть представлено
единый символ.Поскольку их нужно было набирать на обычной клавиатуре,
были использованы буквы A-F. Один из них может представлять четыре бита
стоит, поэтому байт записывается как две шестнадцатеричные цифры. 00110111
10110000 становится 37B0.

Вот удобная таблица:
Шестнадцатеричное десятичное
0 0000 0
1 0001 1
2 0010 2
3 0011 3
4 0100 4
5 0101 5
6 0110 6
7 0111 7
8 1000 8
9 1001 9
A 1010 10
B 1011 11
C 1100 12
D 1101 13
E 1110 14
F 1111 15

При беге трех разных схем легко перепутать
числа.1000 можно перевести в тысячу, восемь или четыре тысячи
и девяносто шесть. Вы должны указать, какую систему вы используете.
Тот факт, что вы все еще иногда видите устаревшую систему под названием
восьмеричный (цифры 0-7. Вы можете решить) добавляет к потенциалу
для путаницы. Шестнадцатеричные числа можно указывать записью
их 1000hex 1000h или 0x1000. Двоичные числа можно записать в 1000 байт.
. Восьмеричные числа были записаны с дополнительным ведущим 0. Десятичные числа
числа не указаны, если нет возможности
путаница, например, один на странице шестнадцатеричных чисел.

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

В компьютерной инженерии понятие шины было расширено.
для обозначения группы проводов, по которым данные передаются по системе.
Обычно проводов достаточно для обработки от одного до четырех байтов.В
размер этих автобусов имеет большое влияние на эффективность
система. 32-битная шина может обрабатывать числа вдвое длиннее (что означает
От 2 до 16 больше), чем 16-битная шина.

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

Память
От компьютера не было бы много пользы, если бы он не мог хранить данные.
На протяжении многих лет существовало множество схем хранения данных,
но то, как это делается сегодня, требует подключения транзисторов, чтобы они
оставаться включенным при включении и оставаться выключенным при выключении. Транзистор
потом можно немного хранить. Транзисторы организованы в группы.
из 8, поэтому каждая группа может хранить байт. Единая интегральная схема
может иметь миллионы таких групп.

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

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

Другой вид памяти называется ПЗУ, предназначенный только для чтения.
Существуют различные типы этого, но наиболее распространенным является
массив предохранителей. Все, что взорвано, представляют 0. Ничто не может
изменить то, что находится в памяти только для чтения, чтобы любая программа или данные там
доступен сразу после включения компьютера.

Диски
Так как память очищается при отключении питания, есть
должна быть какая-то механическая система для хранения данных между заданиями.
Носитель, используемый для хранения данных, может отличаться от магнитной ленты.
на оптические диски, а некоторые устройства позволяют легко
снял и заменил. Большинство этих систем хранения включают в себя некоторые
вид вращающегося диска. Существует продуманная схема хранения
трек данных на диске — байты сгруппированы в блоки,
блоки в файлы, файлы в каталоги (или папки),
и каталоги в разделы (или тома).Пользователь обычно
видит только файлы и выше.
Центральный процессор
Центральный процессор, или ЦП, является сердцем компьютера.
ЦП считывает инструкцию из памяти (инструкции битовые.
узоры, как и все остальное.), выполняет и смотрит
для следующей инструкции. В инструкции простые вещи вроде
скопировать значение из памяти. ЦП имеет свои собственные ячейки памяти.
называется регистрами. Специальное оборудование позволяет добавлять или
вычесть регистры друг из друга.Чтобы сложить два числа,
ЦП должен получить первое число и поместить его в регистр, получить
другое число и поместите его в другой регистр, сложите два регистра,
и занесите результат обратно в память. Каждая из этих операций
требуется инструкция.
Часы
К счастью, ЦП может делать все это очень быстро. Целый
работа контролируется схемой генератора, называемой системой
часы, которые работают с миллионами герц (циклов в секунду). Это
Было бы просто подумать, что один тактовый цикл означает одну инструкцию,
но инструкции различаются по сложности и занимают от 4
до 20 циклов до завершения.Операции еще больше замедляются из-за
память, которая не успевает за собой. Некоторые процессоры имеют супер
высокоскоростная память, называемая кешем, где числа, которые необходимы
партия может быть сохранена и извлечена быстрее.

Периферийные устройства
ЦП обменивается данными с памятью через адрес и данные
автобус. Для связи с остальным миром используются другие автобусы.
использовал. (Места, где можно подключить внешние устройства, иногда
называемые портами.) Эти шины могут использоваться совместно или подключаться к одному
устройство.Они могут быть последовательными или многопроволочными, называемыми параллельными.
Устройства, подключенные к системе, называются периферийными устройствами; Это включает в себя
клавиатуры, мониторы, мыши, графические планшеты, принтеры, MIDI-системы
и многое другое. У каждого свои данные и электрические характеристики,
но соединение в порту должно быть достаточно стандартизировано, чтобы
позволяют взаимозаменять аналогичные устройства. Ниже приведены виды
увязок в различных системах.

Параллельный порт
Это старый стандарт, изначально предназначенный для принтеров, поэтому
его часто называют портом принтера, хотя другие вещи могут
можно подключать здесь, а принтеры можно подключать другими способами.Что касается портов данных, то этот довольно медленный.
IDE / ATA
Это параллельная шина, предназначенная для устройств хранения больших объемов данных.
Обычно это скрыто внутри коробки, так как используемые разъемы
не очень сильны. В шине IDE есть провода, которые выбирают
какое устройство активно, поэтому логическое расположение устройства (диск
A, B и т. Д.) Зависит от того, к какому разъему он подключен.

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

SVGA
Это разновидность видеоразъема. Это один из многих, но
самый распространенный прямо сейчас.

Comm Port
Это тип последовательного порта, который существует уже несколько десятилетий.
Другое название для этого — RS-232, что является названием технического
документ, описывающий, как это должно работать.Это самый медленный порт
из всех. Сюда подключаются только очень простые устройства.

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

Ethernet
Существует множество систем, предназначенных для подключения компьютеров к каждой
Другие. Ethernet — один из самых популярных, потому что он очень
быстро и относительно дешево в сборке.Компьютеры не подключаются напрямую
друг к другу с помощью Ethernet — они проходят через коробку, называемую
концентратор или коммутатор, который позволяет нескольким компьютерам разговаривать на вечеринке
линия. Если их всего два, или использовать Ethernet для подключения компьютера
к принтеру можно использовать специальный кабель без концентратора.

USB
USB — это новая высокоскоростная последовательная система. Он должен вместить
до 128 устройств и позволяет подключать устройства без
выключение питания. (Возня с IDE или SCSI с питанием
может повредить вещи.)

Firewire
Firewire, также известный как IEEE 1394, является еще более быстрым последовательным
система. Он также более надежен, чем USB, по ряду причин.
Между FireWire и SCSI идет соревнование, чтобы узнать, какой
быстрее. Firewire определенно удобнее.

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

без знака — Расчетные биты, необходимые для хранения десятичного числа

Здесь много ответов, но я добавлю свой подход, так как нашел этот пост, работая над той же проблемой.

Начиная с того, что мы знаем, это число от 0 до 16.

  Число, закодированное в битах, минимальное количество бит для кодирования
0 000000 1
1 000001 1
2 000010 2
3 000011 2
4 000100 3
5 000101 3
6 000110 3
7 000111 3
8 001000 4
9 001001 4
10 001010 4
11 001011 4
12 001100 4
13 001101 4
14 001110 4
15 001111 4
16 010000 5
  

глядя на разрывы, он показывает эту таблицу

  число <= количество бит
1 0
3 2
7 3
15 4
  

Итак, как нам вычислить паттерн?

Помните, что основание журнала 2 (n) = основание журнала 10 (n) / основание журнала 10 (2)

  число logb10 (n) logb2 (n) ceil [logb2 (n)]
1 0 0 0 (особый случай)
3 0.477 1,58 2
7 0,845 2,807 3
8 0,903 3 3 (особый случай)
15 1,176 3,91 4
16 1.204 4 4 (особый случай)
31 1,491 4,95 5
63 1,799 5,98 6
  

Теперь желаемый результат соответствует первой таблице. Обратите внимание, что некоторые значения также являются частными случаями. 0 и любое число, являющееся степенью 2. Эти значения не меняются, когда вы применяете потолок, поэтому вы знаете, что вам нужно добавить 1, чтобы получить
минимальная длина битового поля.

Чтобы учесть особые случаи, добавьте единицу к входным данным. Результирующий код, реализованный на Python:

  из журнала импорта математики
из математического импорта ceil
def min_num_bits_to_encode_number (a_number):
    a_number = a_number + 1 # изменить на 1 для особых случаев

    # логарифм нуля не определен
    если 0 == a_number:
        возврат 0
    num_bits = int (ceil (log (a_number, 2))) # logbase2 доступен
    возврат (num_bits)
  

math - Почему 8 и 256 такие важные числа в компьютерных науках?

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

Действительно, когда был придуман байт , он был определен как 1-6-битная единица. Размеры байтов, используемые на протяжении всей истории, включают 7, 9, 36 и машины с байтами переменного размера.

Номер

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

Упомянутый вами стандарт ASCII предполагает 7-битный байт и был основан на более ранних 6-битных стандартах связи.


Edit: Возможно, стоит добавить к этому, поскольку некоторые настаивают на том, что те, кто говорит, что байты всегда являются октетами, путают байты со словами.

Октет - это имя, данное 8-битной единице (от латинского «восемь»). Если вы используете компьютер (или язык программирования с более высоким уровнем абстракции), где байты являются 8-битными, то это легко сделать, в противном случае вам понадобится код преобразования (или аппаратное обеспечение).Концепция октета больше используется в сетевых стандартах, чем в локальных вычислениях, потому что, будучи независимой от архитектуры, она позволяет создавать стандарты, которые могут использоваться при обмене данными между машинами с разными размерами байтов, следовательно, его использование в IETF и ISO. стандарты (кстати, ISO / IEC 10646 использует октетов , где стандарт Unicode использует байтов для того, что по сути - с некоторыми незначительными дополнительными ограничениями на последнюю часть - тот же стандарт, хотя стандарт Unicode подробно описывает, что они означают октетов. на байтов (, хотя байты могут иметь разный размер на разных машинах).Концепция октета существует именно потому, что 8-битные байты являются общими (отсюда и выбор использования их в качестве основы для таких стандартов), но не универсальными (отсюда необходимость в другом слове, чтобы избежать двусмысленности).

Исторически байт был размером, используемым для хранения символа, что, в свою очередь, основывается на практике, стандартах и ​​стандартах де-факто, которые предшествовали компьютерам, использовавшимся для телекса и других методов связи, начиная, возможно, с Бодо в 1870 году (I не знаю ни одного ранее, но открыт для исправлений).

Это отражено в том факте, что в C и C ++ единица для хранения байта называется char , размер которой в битах определяется CHAR_BIT в стандартном заголовке limits.h. Разные машины будут использовать 5,6,7,8,9 или более бит для определения символа. В наши дни, конечно, мы определяем символы как 21-битные и используем разные кодировки для их хранения в 8-, 16- или 32-битных единицах (и не-Unicode авторизованные способы, такие как UTF-7 для других размеров), но исторически это было как это было.

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

Слово - это "естественный" размер для данного компьютера. Это менее четко определено, поскольку затрагивает несколько дублирующих друг друга проблем, которые обычно совпадают, но могут не совпадать. Большинство регистров на машине будут иметь этот размер, но некоторые могут и не иметь. Наибольшим размером адреса обычно является слово, хотя это может быть не так (Z80 имел 8-битный байт и 1-байтовое слово, но допускал некоторое удвоение регистров для обеспечения некоторой поддержки 16-бит, включая 16-битное адресация).

Здесь мы снова видим разницу между C и C ++, где int определяется в терминах размера слова, а long определяется для использования процессора, который имеет концепцию «длинного слова», если таковой существует, хотя, возможно, идентично в данном случае int .Минимальное и максимальное значения снова находятся в заголовке limits.h. (Действительно, с течением времени int можно определить как меньший, чем естественный размер слова, как сочетание согласованности с тем, что распространено в других местах, сокращение использования памяти для массива целых чисел и, возможно, другие проблемы. не знаю).

Языки

Java и .NET используют подход, определяющий int и long как фиксированные для всех архитекторов, и устранение различий становится проблемой для среды выполнения (в частности, JITter).Примечательно, однако, что даже в .NET размер указателя (в небезопасном коде) будет варьироваться в зависимости от архитектуры, которая будет основным размером слова, а не размером слова, установленным языком.

Следовательно, октет, байт и слово очень независимы друг от друга, несмотря на то, что отношение октет == байт и слово является целым числом байтов (и целым двоичным круглым числом, таким как 2, 4, 8 и т. Д.). распространены сегодня.

символов - Представление данных - Higher Computing Science Revision

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

  • буквенно-цифровые данные (буквы и цифры)
  • символов (*, &,: и т. Д.)
  • управляющих символов (Shift, Escape и т. Д.)

ASCII

ASCII использует 8 бит для представления персонажа.

Однако одним из битов является бит четности . Это используется для проверки четности (форма проверки ошибок). Это использует один бит, поэтому ASCII представляет 128 символов (эквивалент 7 бит) с 8 битами, а не 256.

Например, код ASCII для строчной буквы z равен 122 и показан ниже:

4

расширенный

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

  • ASCII использует 8 бит для представления символа
  • ASCII может представлять 128 символов
  • ASCII устанавливает старший значащий бит как бит четности
  • Расширенный ASCII может допускать представление 256 символов и игнорирует использование бита четности
  • ASCII менее требователен к использованию памяти, чем Unicode.

Ограничение ASCII

Ограничение 128 или 256 символов для ASCII и расширенного ASCII ограничивает количество наборов символов, которые могут храниться.Представление наборов символов для нескольких различных языковых структур невозможно в ASCII, просто недостаточно доступных символов.

Unicode

Unicode был создан, чтобы разрешить использование большего количества наборов символов, чем ASCII.

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

  • Unicode может представлять 65 536 символов
  • Unicode использует 16 битов для представления каждого символа
  • Unicode может представлять больший диапазон наборов символов, чем ASCII
  • Существуют адаптированные формы исходного стандарта Unicode, способные представлять миллионы символов

Двоичное слово - обзор

III Коды постоянного веса

Код постоянного веса (CW) с параметрами n , d , w - это набор C двоичных слов длиной n все они имеют вес w , так что расстояние между любыми двумя кодовыми словами составляет не менее d .Все нетривиальные ( n , d , w ) коды CW имеют d ≤ 2 w . Пусть A ( n , d , w ) будет наибольшим количеством кодовых слов в любом CW-коде с этими параметрами. Тогда классическая проблема состоит в том, чтобы определить это число или найти наилучшие верхние и нижние границы для A ( n , d , w ).

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

Коды с постоянным весом были тщательно изучены, и хорошей ссылкой на них является MacWilliams and Sloane (1977). Эрик Рейнс и Нил Слоан ведут таблицу наиболее известных нижних границ для A ( n , d , w ) на веб-сайте: http://www.research.att.com/njas/ коды / Andw /. Мы представим обзор этой темы с акцентом на связи с дизайном.

Поскольку сумма любых двух двоичных слов с одинаковым весом всегда имеет четный вес, мы имеем A ( n , 2δ - 1, w ) = A ( n , 2δ, w ). С этого момента мы будем предполагать, что расстояние d четное. У нас также есть A ( n , d , w ) = A ( n , d , n - w ), поскольку всякий раз, когда два слова находятся на расстоянии d отдельно, так же их дополнения.Это означает, что нужно рассматривать только случай w n /2.

Связь между кодами CW и дизайном очевидна. С точки зрения наборов, код CW - это просто набор из w подмножеств из набора n , где пересечение любых двух подмножеств w содержит не более t = w − d2 элементов. Эквивалентно, CW-код является частичной системой Штейнера Sw − d2 + 1, w, n. Тогда мы имеем

A (n, d, w) ≤n (n − 1)… (n − w + d / 2) w (w − 1)… (d / 2)

с равенством тогда и только тогда, когда система Штейнера S (w − d2 + 1, w, n) существует.

Интерес к кодам CW также связан с проблемой поиска линейных (или нелинейных) кодов ( n , M , d ) максимального размера M . Очевидно, что A ( n , d , w ) - это верхняя граница количества слов с заданным весом в таком максимальном коде. И наоборот, такие коды (или их смежные классы) могут давать нижние границы для A ( n , d , w ). В частности, более сильная версия границы Хэмминга (приведенная в разделе о совершенных кодах) была первоначально доказана с использованием A ( n , 2 t + 2,2 t + 1).

A ( n , 2 t + 2,2 t + 1) - это просто количество блоков в максимальном частичном S ( t + 1,2 t + 1 , н ) конструкция или упаковка. Если C является кодом t с исправлением ошибок, то для любого c C количество блоков в упаковке соседства ∣ NS ( c ) ∣ ≤ A ( n , 2 т + 2,2 т + 1).Количество слов, которые находятся на расстоянии t + 1 от c , но не на расстоянии t от любого другого кодового слова, равно

(nt + 1) - (2t + 1t + 1) | NS (c) | ≥ ( nt + 1) - (2t + 1t + 1) A (2t + 2,2t + 1).

Каждое такое слово находится на расстоянии t + 1 от не более ⌊ n / t + 1⌋ других кодовых слов. Таким образом, суммируя все c C , каждое такое слово считается не более указанного количества раз. Это дает более сильную версию границы Хэмминга:

| C | ((∑i = 0t (ni)) + (nt + 1) - (2t + 1t + 1) A (n, 2t + 2,2t + 1 ) ⌊N / (t + 1) ⌋) ≤2n.

Коды с постоянным весом не могут быть линейными, поскольку это означало бы, что нулевой вектор был в коде, но можно иметь код, в котором все ненулевые слова имеют одинаковый вес. Эти коды иногда называются линейными кодами и эквидистантными кодами . Двойник кода Хэмминга (также называемый симплексным кодом ) является примером такого кода. Фактически было доказано, что единственные такие коды формируются путем взятия нескольких копий симплексного кода. Доказательства того, что все такие коды являются обобщенными симплексными кодами, явно вытекают из теории кодирования (Bonisoli, 1983), а также неявно из результатов по планам и системам множеств (Teirlinck, 1980).Существует тесная связь между линейными эквидистантными кодами и конечной геометрией. Слова симплексного кода соответствуют гиперплоскостям проективного пространства [более GF (2)] так же, как слова веса 3 в коде Хэмминга соответствуют строкам в этом проективном пространстве. [Для связи между кодами и конечной геометрией см. Black and Mullin (1976).]

Другой вариант кодов CW - это оптические ортогональные коды (OOC), которые были применены в оптических системах связи CDMA.Вкратце, ( n , w , t a , t b ) OOC - это код CW, C , длины n и веса w . так что для любого c = ( c 0 , c 1 ,…, c n -1 ) ∈ C , и каждый y C , c y и каждый i ≢ 0 (mod n ),

(1) ∑j = 0n − 1cjcj + i≤ta,

и

(2) ∑j = 0n −1cjyj + i≤tc.

Уравнение (1) является свойством автокорреляции, а уравнение. (2) - свойство взаимной корреляции. Большинство исследований было сосредоточено на случае, когда t a = t c = t , и в этом случае мы ссылаемся на ( n , w , t ) OOC. Опять же, можно изменить эти свойства в терминах (частичных) конструкций или упаковок. В этом случае OOC представляет собой набор из w подмножеств целых чисел (mod n ), так что для подмножеств c , b C ,

(3) c + i∩c + j≤tai ≠ j,

и

(4) c + i∩b + j≤tc.

Здесь c + i = { x + i (mod n ) ∣ x c }.

Код OOC эквивалентен циклическому расчету или упаковке. Код или упаковка называется циклической, если каждый циклический сдвиг кодового слова (или блока) является другим кодовым словом. Набор всех циклических сдвигов кодового слова называется орбитой . Представителя с этой орбиты часто называют базовым блоком. OOC ( n , w , t ) представляет собой набор базовых блоков для циклической (частичной) конструкции или упаковки S ( t + 1, w , n ) (при условии т < т ).

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

© 2024 Микро Тех Сервис
Бит четности 64 32 16 8 2 1
0 1 1 1 1 0 1