I – информативность символа
Вопросы и задания ¨ Что такое информация для каждого из нас? § Перечислите источники информации, из которых вы получали информацию сегодня. ¨ Назовите основные действия с информацией. § Почему информацию, которую мы «помним наизусть», можно назвать оперативной? Приведите примеры оперативной информации, которой вы владеете. § Сравните оперативную и внешнюю информацию: в чем их достоинства и недостатки? · Приведите примеры ситуаций, в которых вы являлись передатчиком информации (источником, приемником). Какую роль сегодня вам чаще приходилось выполнять? ¨ Приведите три примера обработки информации?
I. 2. Содержательный подход к измерению информации.
Мы отметили, что в мировой науке есть три объекта изучения: вещество, энергия и информация. Вещество и энергия имеют определенные единицы измерения. А как измерить информацию? Так как информация – это знания человека то, следовательно, любое сообщение, если оно пополняет знания человека, содержит ненулевую информацию. Например, я еду в автобусе. Передо мной стоят люди, а мне надо выходить. Я нахожусь в неопределенности: выходят они тоже или нет? Задаю вопрос: - Вы выходите? Вариантов ответа может быть два: «Да» или «Нет». После того как прозвучит ответ, вариант останется один. То есть моя неопределенность в знании ответа уменьшилась в два раза.
Ø Сообщение, уменьшающее неопределенность знаний в два раза, несет 1 бит информации. Рассмотрим примеры:
1. Ученик написал контрольную работу. После, он хочет обратиться к учителю за информацией об оценке. Чтобы узнать, сколько битов информации он получит, задав вопрос: «Что у меня за оценка?», постараемся составить вопросы, ответы на которые будут измеряться в 1 бит («Да», «Нет»). Например, вопросы: «У меня хорошая оценка?», «Это оценка 5?».Узнать оценку ученик сможет, задав два простых вопроса, следовательно, информация об оценке измеряется двумя битами информации.
2. В библиотеке восемь полок. Ученику необходимо знать, на какой из полок лежит нужный ему учебник. Сколько битов информации он получит, задав вопрос библиотекарю: «На какой из полок лежит учебник?». Простые вопросы: «Книга лежит на одной из первых четырех полок?», «Книга лежит на первой или второй полке?», «Книга лежит на второй полке?». Аналогично, следует, что информация о полке, измеряется тремя битами.
3. Нетрудно догадаться, что в случае шестнадцати полок, ответ измерялся бы четырьмя битами.
Итак, мы приходим к закономерности:
Вопросы и задания: ¨ Что такое информация для человека? ¨ Что такое неопределенность знаний в результате какого-либо события? Приведите примеры. · Какой из предложенных источников содержит на ваш взгляд ненулевую информацию для вас: книга на древнеиндийском языке; стихотворение «Уронили мишку на пол…»; свежая газета; учебник информатики для 7 класса. ¨ Какая наименьшая единица измерения информации вам известна? ¨ Что такое бит? ¨ В каких случаях, и по какой формуле можно вычислить количество информации, содержащейся в сообщении? § Сколько бит информации несет сообщение о том, что из колоды в 32 карты достали туз пик? · В корзине 4 шара: черный, белый, красный и зеленый. Сколько бит несет сообщение, что вынули белый шар? ¨ Проводятся две лотереи: «1 из 32» и «1 из 64». Сообщение о результатах, какой из лотерей несет больше информации? · У лотерейщика одинаковые количества билетов с выигрышем по 5, по 10, по 50, по 100, по 200, по 500, по 1000 руб. и без выигрыша. Сколько бит несет сообщение о том, что папа выиграл 1000 рублей?
I. 3. Алфавитный подход к измерению информации.
А теперь познакомимся с другим способом измерения информации. Содержательный подход связывает количество информации с содержанием сообщения. А как сосчитать, сколько бит информации содержит ваш учебник? Здесь используется другой подход – алфавитный. Нужно посчитать количество символов в учебнике. Узнать, сколько битов информации содержит один символ. Умножить количество битов, приходящихся на один символ, на количество символов учебника. Обозначим: I – информативность текста; K – количество символов в тексте; I – информативность символа. I=K * i Осталось посчитать количество информации, содержащееся в одном символе. Наш учебник напечатан в определенном текстовом редакторе, поддерживающем определенный алфавит. Алфавит текстового редактора – это не только буквы, но и скобки, знаки препинания, цифры, специальные символы, пробел.
Ø Полное число символов алфавита принято называть мощностью алфавита.
Допустим, мощность равна 64. Если поместить карточки со всеми 64 символами алфавита в мешок, а затем вытянуть одну из них, то вероятность выпадения того или иного символа «1из 64». Таким образом, чтобы посчитать информативность одного символа, следует воспользоваться содержательным подходом к измерению информации. Обозначим: N – мощность алфавита; i – информативность символа. N=2 i В нашем примере информативность символа 6 бит. В связи с устройством компьютера, наиболее достаточным является алфавит 256 символов. В нем можно поместить практически все необходимые символы: латинские и русские буквы, цифры, знаки арифметических операций, скобки, знаки препинания и символы псевдографики (значки для рисования рамок таблицы). Такой алфавит поддерживают текстовый редактор Блокнот, текстовые редакторы систем программирования алгоритмических языков Бейсика и Паскаля. То есть для каждого символа 256 равновероятных вариантов. Применяя формулу N=2i , получаем, что один символ содержит 8 битов информации. Так как 8 бит имеют важную значимость в измерении информации, то ввели новую единицу измерения – байт. Ø 1 байт = 8 битов
Вопросы и задания: ¨ Что такое алфавит? Что такое мощность алфавита? ¨ Как определяется количество информации в сообщении при алфавитном подходе? § Докажите, что, исходя из алфавитного подхода, сообщение любой длины, использующее односимвольный алфавит, содержит нулевую информацию. ¨ Два текста содержат одинаковое количество символов. Первый текст составлен в алфавите мощностью 32 символа, второй – мощностью 64 символа. Во сколько раз отличается количество информации в этих текстах? ¨ Что такое байт?
I. 4. Единицы измерения информации
Байт очень мелкая единица, поэтому, для измерения больших объемов информации используются производные от байта единицы. Ø Укрупненные единицы измерения информации: 1Кб=1024 байта= 210байта (Килобайт) 1Мб=1024 Кб=210Кб (Мегабайт) 1Гб=1024 Мб=210Мб (Гигабайт) 1Тб=1024 Гб=210Гб (Терабайт)
Задача: Книга содержит 150 страниц. На каждой странице по 40 строк по 60 символов в строке. Определить объем информации, содержащейся в книге. Решение: Сосчитаем количество символов в книге: К=150*40*60; К=360000; Известно, что 1 символ занимает 1 байт: i=1 байт; Согласно формуле: I=K*i=360000 байт=351Кб 576 байт.
Вопросы и задания: ¨ Что такое байт? ¨ Какие укрупненные единицы измерения информации вам известны и как они взаимосвязаны? ¨ Текстовый документ напечатан в 128–символьном алфавите и занимает 4 Кб. Сколько символов содержит текст?
I. 5. Хранение информации в компьютере
Теперь стоит поговорить о необходимости измерения информации. Для эффективности работы с информацией был изобретен компьютер. Как известно, компьютер – это электрический прибор. Поэтому, чтобы осуществлять информационные процессы, необходимо чтобы информация была представлена в виде электрических сигналов. Необходимость измерения информации связана с устройством внутренней памяти компьютера. Внутренняя память
Неделимой крупинкой компьютерной памяти является миниатюрный элемент, который может находиться в одном из двух состояний: Содержать электрический ток в пределах установленной нормы или ниже этой нормы. Первое состояние мы обозначим единицей, а второе – нулем. Согласуясь с формулой об измерении количества информации N=2 i , приходим к выводу, что информативность одного элемента равна 1 биту (2=2 1). Поэтому:
Ø Мельчайший элемент памяти компьютера называют битом. Ø Любая информация хранится в виде последовательности заряженных и слабо заряженных битов, т.е. любую информацию можно закодировать в виде последовательности нулей и единиц.
Внутренняя память компьютера разбивается на группы по 8 битов – байты. Байты пронумерованы. Нумерация начинается с нуля.
Ø Порядковый номер байта называется его адресом.
Вопросы и задания: ¨ Как устроена компьютерная память? ¨ Что представляет собой информация в памяти компьютера? ¨ 2400 Мб выразите во всех известных единицах измерения информации. ¨ Какой информационный объем текста, содержащего слово ИНФОРМАТИКА? · Во сколько раз уменьшится информационный объем страницы текста при преобразовании его из кодировки Unicode (65536 различных символов) в кодировку Windows CP-1251 (256 различных символов)?
I. 6. Числа и системы счисления
Ø Система счисления – это способ изображения чисел и соответствующие ему правила действий над числами.
Различают два вида систем счисления:
Разница в системах следующая: в примере числа арабской системы счисления, цифра 2, стоящая на первом месте, означает количество сотен (т.е. число 200). А цифра 2, стоящая на последнем месте – количество единиц. В примере числа из римской системы, где бы ни стояла цифра Х, она все равно означает 10.
Ø В непозиционных системах счисления от позиции цифры в числе не зависит величина, которую она обозначает.
Ø В позиционных системах счисления от позиции цифры в числе зависит величина, которую она обозначает.
Позиционных систем счисления много. Известный русский математик Н. Лузин сказал: «Преимущества десятичной системы не математические, а зоологические. Если бы у нас на руках было не 10 пальцев, а 8, то человечество пользовалось бы восьмеричной системой».
Ø Количество используемых цифр в позиционной системе счисления называется основанием, а сами цифры - алфавитом.
Например:
Два – это наименьшее основание системы. Если допустить, что основание системы равно 1, то количество цифр в системе счисления было бы равно 1. То есть мощность алфавита была бы равна 1. Мы уже убедились, что любое сообщение, написанное в алфавите мощности 1, будет нести нулевую информацию.
Ø Основание системы счисления – любое натуральное число, большее единицы.
Чтобы научиться работать с числами, записанными в различных позиционных системах счисления, освоим правила перевода.
Алгоритм перевода чисел в систему с новым основанием: 1. Делим число на основание новой системы счисления, записывая остаток – младший разряд числа в новой системе. 2. Полученное частное снова делим, выписывая остаток. 3. И так до тех пор, пока последнее частное не станет меньше основания – старший разряд числа. 4. Выписываем остатки от старшего разряда к младшему и приписываем в качестве индекса основание системы.
Осуществим перевод: 12610 Х2 Ответ:11111102
Любое число в десятичной системе счисления можно представить в виде суммы произведений соответствующих цифр, на соответствующие степени десятки. Например: 24510=200+40+5=2*100+4*10+5=2*102+4*101+5*100 ! Не забывайте понятие степени числа: an=a*a*a*..a , a0=1. Оказывается, такая закономерность распространяется на любую систему счисления. Десятка - есть основание десятичной системы счисления. У новой системы счисления основанием будет другое число. Поэтому:
Ø Число в любой системе счисления можно представить в виде суммы произведений соответствующих цифр, на соответствующие степени основания.
Например: 2231106=2*62+3*61+1*60=72+18+1=9110
Алгоритм перевода чисел в десятичную систему: 1. Нумеруем цифры числа справа налево, начиная с 0; 2. Составляем сумму произведений цифр, на степени основания системы соответствующие номерам; 3. Выполняем арифметические операции.
Осуществим перевод: А216 Х10 А12016=10*161+2*160=160+2=16210
Ø Чтобы перевести из системы с одним основанием в систему с другим основанием, если оба основания отличны от 10, нужно: перевести данное число в десятичную систему, а затем перевести в новую систему. Например: 579 Х3.
51709=5*9+7=5210
Ответ: 12213
Вопросы и задания: ¨ Дайте определение понятию "система счисления"? ¨ Какие виды систем счисления вы знаете? ¨ Чем отличается позиционная система от непозиционной системы? ¨ Чем отличаются позиционные системы? ¨ Что такое основание? ¨ Какое оно может быть? ¨ Что называется алфавитом системы счисления? ¨ Каковы правила перевода из одной системы в другую? ¨ Верно, ли записаны числа: А216, 356, 198, 323, Е313, 0Е316? Если неверно, то почему? ¨ Осуществить перевод: 789 Х5, 1278 Х4, 4568 Х3 § Решите уравнение: 1013+237*Х4= 3035
I. 7. Системы счисления, где основания являются степенями двойки
Существуют простые способы перевода между системами, основания которых являются степенями двойки. Вспомним формулу измерения количества информации: N- алфавит системы счисления; i – количество бит, приходящееся на один символ. N=2i Исходя из этой формулы, в двоичной системе каждый символ несет один бит информации, а, например, в восьмеричной системе 3 бита (N=8=23, следовательно, на каждый символ приходится три бита информации) и т.д. Ø В системах счисления, основание которых является степенью двойки, цифры алфавита занимают целое количество бит.
Осуществим перевод: 658 Х2 по обычным правилам. 658=6*8+5=53 53:2=26(ост. 1) 26:2=13(ост. 0) 13:2=6(ост. 1) 6:2=3(ост. 0) 3:2=1(ост. 1) Ответ: 1101012. А теперь переведем цифры восьмеричного числа по отдельности как десятичные числа в двоичную систему счисления. 6:2=3(ост. 0) 5:2=2(ост. 1) 3:2=1(ост. 1) 2:2=1(ост. 0) 1102 1012 Объединив результаты, получаем тот же ответ.
Алгоритм перевода чисел из системы с основанием 2i в двоичную систему счисления: 1. Переводим по отдельности цифры числа по правилам перевода из десятичной системы в двоичную систему; 2. Запись каждой цифры должна состоять из i бит. В случае недостающих битов, дописываем незначащие нули; 3. Объединяем переводы в одно число. Приписываем индекс 2.
Алгоритм перевода чисел из двоичной системы счисления в систему с основанием 2i : 1. Разбиваем число, начиная с конца по i символов. В случае недостающих битов, дописываем незначащие нули; 2. Переводим по отдельности группы в десятичную систему; 3. Объединяем переводы в одно число. Приписываем индекс системы. Осуществим перевод: 1110001002 Х8. 7 0 6 Ответ:7068.
Вопросы и задания: ¨ Как взаимосвязаны системы с основаниями, являющимися степенями двойки? ¨ Каков алгоритм перевода чисел из системы с основанием 2i в двоичную систему счисления? ¨ Каков алгоритм перевода чисел из двоичной системы счисления в систему с основанием 2i ? ¨ Осуществите перевод: 328 Х2 . § Осуществите перевод: Е216 Х2 . § Осуществите перевод: 1100001011102 Х16 . · Осуществите перевод: А316 Х2 . ¨ Осуществите перевод: 1101011102 Х8 .
I. 8. Представление положительных чисел в памяти компьютера
В предыдущих беседах, мы научились записывать числа в различных системах счисления. Теперь, займемся решением вопроса о том, как числа представлены в памяти компьютера. Нам уже известно, что в памяти компьютера вся информация представлена в двоичном коде, т. е. в виде 0 и 1. Мы с вами отметили, что компьютерная память состоит из миниатюрных элементов – битов, каждый из которых может находиться в одном из двух состояний. Бит может содержать электрический ток, соответствующий норме (1), а может содержать электрический ток ниже допустимой нормы (0). Много ли различных чисел можно закодировать в одном бите информации? Всего два: 0 и 1. Поэтому биты объединяются в группы – байты.
Ø Минимальным размером памяти для кодировки чисел следует выбрать 1 байт. Минимальное неотрицательное число, которое можно закодировать в одном байте 0.
Максимальное неотрицательное число, которое можно закодировать в одном байте 255.
=27+26+25+24+23+22+21+20=128+64+32+16+8+4+2+1=255
Ø Вывод: В одном байте можно закодировать числа от 0 до 255.
Но этого мало. Как же быть с остальными числами? Решили смежные байты объединить по два или по четыре.
Ø Два (четыре) смежных байта называются двухбайтовым (четырехбайтовым) машинным словом.
Минимальное неотрицательное число, которое можно закодировать в одном двухбайтовом слове 0.
Максимальное неотрицательное число, которое можно закодировать в одном двухбайтовом слове 65535.
=65535 Алгоритм кодирования неотрицательных чисел: 1. Перевести число в двоичную систему; 2. Дополнить незначащими нулями до байта (или слова). Алгоритм декодирования неотрицательных чисел: 1. Перевести число в десятичную систему.
Вопросы и задания: ¨ Как представлены числа в компьютере? От чего это зависит? ¨ Много ли различных чисел можно закодировать в одном бите информации? Назовите минимальную единицу хранения числовой информации. ¨ Что такое машинное слово? ¨ Какое минимальное неотрицательное число можно закодировать в одном байте (слове) и какое максимальное? ¨ Каковы алгоритмы кодирования и декодирования неотрицательных чисел? ¨ Закодируйте числа: 23, 129, 315, 3275. ¨ Декодируйте числа: 11110000, 00110011, 1111100000011111.
I. 9. Действия над неотрицательными числами в памяти компьютера
А теперь решим вопрос, как компьютер выполняет арифметические операции с неотрицательными числами, ведь числа представлены в двоичной форме. Рассмотрим основные операции: сложение и вычитание. Компьютер – это машина, поэтому подчиняется строгим законам:
Ø результат сложения или вычитания чисел должен занимать в памяти компьютера целое количество байтов (1, 2 или 4);
Ø при сложении или вычитании чисел в двоичной системе действуют те же правила, что и при сложении или вычитании чисел в десятичной «столбиком»;
Ø при сложении или вычитании цифр в соответствующих разрядах необходимо следовать правилам двоичной арифметики.
Правила двоичной арифметики: 0+0=0 0+1=1 1+0=1 1+1=10 (0 пишу, 1 переношу в следующий разряд) 0-0=0 0-1=1 (такой результат возможен только тогда, когда есть возможность занять из старших разрядов) 1-0=1 1-1=0 Например:
Ø Если при сложении неотрицательных кодов чисел получаем код, занимающий в памяти компьютера больше места, чем исходные коды, то к нему необходимо приписать незначащие нули, до более крупного формата числа. Вопросы и задания: ¨ Назови три основных правила сложения и вычитания чисел. ¨ Каковы правила двоичной арифметики? · Сложи коды чисел: 11100011 и 00010101. ¨ Сложи коды чисел: 11001111 и 11100001. ¨ 0000001110001111 и 0000110001010011. · Выполни вычитание: 11100011 – 00011101. ¨ Выполни вычитание: 10001110 – 00011000. § Выполни вычитание: 0000011110000011 – 0000000001111001.
I. 10. Представление чисел в памяти компьютера с учетом их знака Возникает вопрос: «Как быть с отрицательными числами? Как закодировать знак минус перед числом?». Решили обмануть компьютер. Для отрицательных чисел придумали другие правила кодировки. Решили старший бит в байте или слове отводить под знак числа. Знак числа: если 0, то «+», если 1, то «-»
10011011 – отрицательное, 01110011 – положительное.
Алгоритм кодирования отрицательных чисел: 1. Переводим в двоичную систему модуль числа; 2. Дополняем до байта (слова); 3. Инвертируем (единицы заменяем нулями, а нули единицами); 4. Прибавляем единицу по правилам двоичной арифметики.
Например, закодируем –126 в одном байте. 1) Переведем модуль:
Получили 1111110. 2) Дополним до байта: 01111110. 3) Инвертируем: 10000001 4) Прибавим 1:
Ответ: 10000010. Если рассмотреть коды чисел с учетом их знака, то у неотрицательных чисел старший бит равен 0. Декодировать такие числа мы уже умеем. У отрицательных чисел старший бит равен 1.
Алгоритм декодирования отрицательных чисел: 1. Инвертируем число (меняем единицы на нули, а нули на единицы); 2. Прибавляем единицу; 3. Переводим в десятичную систему; 4. Перед результатом ставим знак минус. Например. Декодировать число 10011011. =64+32+4+1=10110 Ответ: -101.
Рассмотрим число 10000011. Если предположить, что при кодировке числа знак не учитывали, то есть, следовали правилам кодирования неотрицательных чисел, то при декодировании получим число131. Если же следовать правилам представления чисел с учетом знака, то это число -125. Чтобы компьютер не путал различные представления чисел, его заранее предупреждают о способе представления чисел (с учетом знака или без). Как это происходит, вы узнаете позже. Посмотрите, как компьютер выполняет действия при различных представлениях.
Вопросы и задания: ¨ Как кодируются отрицательные числа? ¨ Как декодировать отрицательное число? ¨ Даны числа в двоичной кодировке с учетом знака:11000010, 01111110, 00001111, 11111100. Каков их знак? Какие это числа? ¨ Закодируйте число 45 в одном байте и слове с учетом знака. ¨ Закодируйте число –115 и убедитесь в правильности перевода, декодировав результат. ¨ Сложите два числа: 11100100 и 01011001 по правилам двоичной арифметики с учетом и без учета знака. Убедитесь в правильности (для этого декодируйте слагаемые и сумму). § Докажите, что с учетом знака в одном байте можно представить любое число из диапазона -128 до 127. · Докажите, что с учетом знака в одном двухбайтовом слове можно представить любое число из диапазона –32768 до 32767. ¨ Переведите числа 110 и –110 в двоичный код и убедитесь, что при сложении этих чисел получится 0. § Закодируйте числа -76 и -109 в одном байте с учетом знака. Выполните их сложение. Декодируйте результат и убедитесь в правильности перевода.
Часть II
II. 1. Системы программирования
Компьютер, изготовленный на заводе, подобен новорожденному человеку, он может осуществлять какие-то действия, но не знает как. Но если человек в дальнейшем способен к обучению, то компьютер необходимо научить, то есть, заложить в него программное обеспечение. Компьютер без программы – бесполезная конструкция из железа, пластмассы и проводов. Вывод: Работа компьютера строго подчиняется заложенной в него программе. Ø Компьютер является исполнителем.
Ø Программа – алгоритм, записанный на языке исполнителя. Важнейшее отличие работы компьютера от работы человеческого ума состоит в том, что работа компьютера строго подчинена заложенным в него программам, человек же сам управляет своими действиями.
Ø Программа – это указание на последовательность действий (команд), которую должен выполнить компьютер, чтобы решить поставленную задачу обработки информации.
У каждого исполнителя своя система команд, которые он понимает и может выполнить. Выстроив эти команды в четкий алгоритм, мы позволим исполнителю получить необходимый результат.
Ø У компьютера своя система команд – машинных команд. Машинные команды представлены в виде двоичных кодов.
Язык машинных команд понятен компьютеру, но сложен для человека. Простому человеку писать программу из таких команд трудно, так как они не наглядны. Поэтому программисты придумали другие языки – языки, которые ближе человеку по смыслу. Их назвали языками программирования высокого уровня. Языки программирования высокого уровня обладают набором команд, состоящих из слов английского языка, что делает программу гораздо короче и понятнее. Однако эта программа становится непонятной компьютеру, ведь он «говорит» только на машинном языке. Тогда программисты придумали специальные пакеты программ, которые могли переводить компьютеру программу с языка высокого уровня, на понятный ему машинный язык.
Ø Системы программирования позволяют писать и исполнять на ЭВМ программы, написанные на языках высокого уровня.
Мы пишем программу в специальном текстовом редакторе системы программирования, система программирования без нашего участия сама переводит программу на язык машинных команд. Только тогда компьютер может выполнить программу.
Ø Система программирования – это исполнитель программ на соответствующем ей языке. Осуществлять перевод программы с языка программирования на язык машинных команд позволяет система программирования. Процесс перевода называется трансляцией. Для этого в системе программирования есть программа - транслятор.
Популярное: Генезис конфликтологии как науки в древней Греции: Для уяснения предыстории конфликтологии существенное значение имеет обращение к античной... Почему люди поддаются рекламе?: Только не надо искать ответы в качестве или количестве рекламы... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (1291)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |