- •Глава 7. Основы алгоритмизации и программирования 114
- •Глава 8. Базы данных и система управления базами данных 171
- •Глава 9. Компьютерные сети 224
- •9.1. Терминология 224
- •Глава 10. Вопросы компьютерной безопасности 260
- •Введение
- •Глава 1. Терминология. Краткая история развития информатики. Системы счисления. Представление различных видов данных в эвм
- •1.1. Терминология
- •1.2.1. Единицы количества информации (объемный подход)
- •1.2.Краткая история развития информатики
- •1.3. Системы счисления
- •1.3.1. Позиционные системы счисления
- •1.4. Представление различных видов данных в эвм
- •1.4.1. Кодирование текстовых данных
- •1.4.2. Кодирование графических данных
- •1.4.3. Кодирование звуковой информации
- •Глава 2. Общие принципы построения эвм
- •2.1.Функциональные блоки эвм
- •2.2. Классическая структура эвм
- •2.3. Структура современных эвм
- •2.3.1. Режим прямого доступа к памяти
- •2.3.2. Основной цикл работы эвм
- •2.4. Основные команды эвм
- •2.4.1. Команды для работы с подпрограммами. Стеки
- •Глава 3. Устройство персонального компьютера
- •3.1. Печатная (материнская) плата
- •3.2. Процессор
- •3.3. Назначение и виды памяти
- •3.3.1.Оперативная память
- •Классификация оперативной памяти по способу реализации
- •3.3.2. Энергонезависимая электронная память
- •3.4. Внешние устройства пк
- •1. Устройства ввода
- •Глава 4. Программное обеспечение пк
- •4.1. Системное по
- •4.1.1. Компьютерные вирусы и антивирусные программные средства
- •4.2. Прикладное по
- •Глава 5. Операционные системы Функции ос пк
- •5.2. Операционная система ms dos
- •5.2.1. Работа с файлами в dos
- •5.2.2. Общие команды ms dos
- •5.2.3. Конфигурационные файлы
- •5.2.4. Организация файловой системы
- •5.3. Операционная система Windows компании Microsoft
- •5.3.1. Окно Windows
- •5.3.2. Программа Проводник
- •Глава 6. Основы работы с прикладными программами пакета Microsoft Office
- •6.1. Текстовый редактор Microsoft Word
- •6.1.1. Интерфейс приложений
- •6.1.2.Режимы отображения документа
- •6.1.3.Создание документа
- •6.1.4. Сохранение документа
- •6.1.5. Открытие документа
- •6.1.6.Ввод текста
- •6.1.7. Специальные средства ввода и редактирования текста
- •Специальные средства редактирования текста
- •6.1.8. Форматирование текста
- •6.1.9. Приемы и средства автоматизации форматирования
- •6.1.10. Работа с таблицами
- •6.1.11.Управление сменой страниц
- •6.1.12. Разделы
- •6.2. Электронные таблицы Excel
- •6.2.1. Особенности интерфейса
- •6.2.2. Виды вводимых данных
- •6.2.3. Ввод данных в ячейку и редактирование
- •6.2.4. Ввод рядов данных
- •6.2.5. Проверка орфографии
- •6.2.6. Форматирование рабочего листа
- •6.2.7. Использование и создание формул
- •6.2.8. Параметры страницы
- •6.2.9. Анализ данных с помощью сводных таблиц
- •6.2.10. Создание диаграмм и графиков
- •6.2.11. Управление данными
- •Глава 7. Основы алгоритмизации и программирования
- •7.1. Этапы решения задачи на эвм
- •7.2. Алгоритм и его свойства
- •7.2.1. Способы описания алгоритмов
- •7.2.2. Основные графические элементы блок-схем
- •Элементы блок-схем
- •7.3. Структурный подход к программированию
- •7.4. Языки программирования
- •7.5. Основные языки высокого уровня
- •7.6. Общее описание языка QuickBasic
- •7.6.1. Назначение и основные особенности языка
- •7.6.2. Алфавит языка
- •7.6.3. Данные. Виды данных
- •Числовые данные
- •Типы числовых констант
- •Переменные
- •7.6.4. Встроенные математические функции
- •Стандартные математические функции qbasic
- •Арифметические выражения
- •7.6.5. Основные операторы языка qbasic
- •7.6.5.1. Операторы для реализации линейной программы
- •7.6.5.2. Операторы для разветвляющихся вычислительных процессов
- •7.6.5.3. Операторы циклических алгоритмов
- •Операторы описания массивов
- •7.6.5.5. Подпрограммы и функции
- •Передача аргументов по значению
- •7.6.5.6. Операторы и функции обработки символьной информации
- •Передача аргументов по ссылке
- •7.6.5.7. Графические возможности qbasic
- •7.6.5.8. Звуковые средства языка qbasic
- •Глава 8. Базы данных и система управления базами данных
- •8.1. Базы данных и информационные системы
- •8.2. Архитектура информационной системы
- •8.3. Терминология баз данных
- •8.3.1. Виды взаимосвязей между объектами предметной области
- •8.4. Трехуровневая модель бд
- •8.5. Модели организации данных
- •8.5.1. Иерархическая модель данных
- •8.5.2. Сетевая модель данных
- •8.5.3. Реляционная модель данных
- •8.5. 4. Фундаментальные свойства отношений
- •8.6. Операции над данными в реляционной модели
- •8.7. Нормализация отношений
- •8.8. Системы управления базами данных
- •Функции субд
- •Централизованные и распределенные бд
- •8.9. Субд microsoft access
- •8.9.1. Структура окна Access
- •8.9.2. Создание таблиц
- •Операции с таблицами
- •8.9.3. Создание связей между таблицами
- •8.9.4. Формы
- •8.9.5. Сортировка и фильтрация данных
- •8.9.6. Запросы
- •8.9.7. Отчеты
- •Глава 9. Компьютерные сети
- •9.1. Терминология
- •9.2. Классификация сетей
- •9.3. Топология сетей
- •9.3.1 Шина
- •9.3.2. Звезда
- •9.3.3. Кольцо
- •9.4. Сетевые технические средства
- •9.4.1. Физическая среда передачи данных в лвс
- •9.4.2. Организация модемной связи
- •9.5. Сетевые программные средства
- •9.6. Способы коммутации компьютеров и виды сетей
- •9.6.1. Способы коммутации и передачи данных
- •9.6.2. Локальная вычислительная сеть (лвс)
- •9.6.3. Архитектура сети
- •9.6.4. Типы лвс
- •Одноранговые лвс
- •Лвс с выделенным сервером (иерархические)
- •9.7. Модель сетевой архитектуры iso/osi
- •Архитектура модели
- •Взаимодействие уровней модели osi
- •9.8. Общая характеристика сети Internet
- •9.8.1. История
- •9.8.2. Протокол tcp (Transmission Control Protocol)
- •9.8.3. Ip (Internet Protocol) – протокол межсетевого взаимодействия
- •9.8.4. Доменное имя
- •9.8.5. Понятие гипертекста и гиперссылки
- •9.8.6. Унифицированный указатель ресурса (url – Uniformed Resource Locator)
- •9.8. 7. Службы Интернета
- •Электронная почта
- •Сетевые новости, или телеконференции
- •Списки рассылки (Mail List)
- •Служба передачи файлов
- •Служба www
- •Служба icq
- •Поисковые системы
- •Глава 10. Вопросы компьютерной безопасности
- •10.1. Понятие о компьютерной безопасности
- •10.1.1. Компьютерные вирусы
- •Программные средства антивирусной защиты
- •10. 2. Защита информации в Интернете
- •10.2.1. Понятие о шифровании данных и электронной цифровой подписи
- •Алгоритмы с симметричным шифрованием
- •Алгоритмы с асимметричным шифрованием
- •Комбинированный метод шифрования
- •Электронная цифровая подпись
- •Идентификация и аутентификация
- •Средства эцп
- •Библиографический список
1.3. Системы счисления
Системой счисления называется принятый способ записи чисел и сопоставления этим записям реальных значений. Символы, при помощи записывается число, называются цифрами.
Все системы счисления можно разделить на два класса: позиционные и непозиционные.
Для записи чисел в различных системах счисления используется некоторое количество отличных друг от друга знаков. Число таких знаков в позиционной системе счисления называется основанием системы счисления.
Таблица 1.1.
Позиционные системы счисления
Основание |
Система счисления |
Знаки |
2 |
двоичная |
0,1 |
3 |
троичная |
0,1,2 |
4 |
четверичная |
0,1,2,3 |
8 |
восьмеричная |
0,1,2,3,4,5,6,7 |
10 |
десятичная |
0,1,2,3,4,5,6,7,8,9 |
16 |
шестнадцатеричная |
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F |
1.3.1. Позиционные системы счисления
Системы счисления, в которых вклад каждой цифры в величину числа зависит от ее положения (позиции) в последовательности цифр, изображающей число, называются позиционными.
Во всех вычислительных машинах применяется позиционная система счисления.
Десятичная система счисления является позиционной. В привычной нам системе счисления одна и та же цифра обозначает разные значения, в зависимости от того на каком месте она стоит. Например, в числе 777 первая семерка обозначает 7 сотен, вторая –7 десятков, а третья 7 единиц. Это число можно представить в следующем виде 777=7*100+7*10+7.
В любой позиционной системе счисления число Nq можно представить как сумму степеней основания q, умноженных на соответствующие коэффициенты 0<=ai<=q-1, являющиеся цифрами данного числа:
Nq=anqn+an-1qn-1+…+a1q1+a0q0+a-1д.-1+…+a-mq—m
n, m – произвольные целые числа
сокращенная запись числа будет иметь вид:
Nq=anan-1,…,a1a0a-1a-m
Например, число 7309, 204 в десятичной системе счисления можно записать как
7309,20410=7*103+3*102+0*101+9*10+2*10-1+0*10-2+4*10-3
откуда видно, что соответствующие коэффициенты изображают данное число в виде сокращенной записи.
Принимая за основание системы любые целые положительные числа: два, три, пять, восемь, десять, шестнадцать – можно получить двоичную, троичную, пятеричную, восьмеричную, десятичную, шестнадцатеричную системы счисления.
Десятичная система счисления - лишь одна из немногих возможных систем счисления. Она привычна для нас, однако не является удобной и рациональной для применения в вычислительных и логических устройствах.
Вся информация, обрабатываемая современными ЭВМ, хранится в них в двоичном коде.
Официальное рождение двоичной арифметики связано с Готфридом Вильгельмом Лейбницем. В 1703 г. он опубликовал статью, в которой были рассмотрены правила выполнения всех арифметических операций над двоичными числами.
До начала 30 г. 20 века данная система осталась вне поля зрения прикладной математики.
Потребность в создании надежных и простых по конструкции счетных, механических устройств и простота двоичной арифметики привели к более глубокому ее изучению, как системы, пригодной к аппаратной реализации.
Пионером в проектировании вычислительных машин двоичного действия на электронно-ламповой основе является инженер Атанасов. Одновременно с ним двоичную машину спроектировали на релейной (электромагнитной) основе.
Утверждение двоичной системы счисления в качестве основы при проектировании ЭВМ с программным управление состоялось под влиянием Беркса, Гольдстайна, Дж. Фон Неймана.
Каким образом осуществляется хранение информации в ЭВМ?
Каждый регистр арифметического устройства ЭВМ, каждая ячейка памяти представляет собой физическую систему, состоящую из некоторого числа однородных элементов. Каждый такой элемент способен находится в нескольких состояниях и служит для изображения одного из разрядов числа. Именно поэтому каждый элемент ячейки называют разрядом. Если при записи чисел в ЭВМ мы хотим использовать десятичную систему счисления, то мы должны получить 10 устойчивых состояний для каждого разряда (как на счетах при помощи косточек). Такие машины существую. Однако конструкция элементов такой машины оказывается чрезвычайно сложной, что сказывается на надежности и скорости ЭВМ.
Наиболее надежным и дешевым является устройство, каждый разряд которого может принимать два состояния: намагничено – не намагничено, высокое напряжение – низкое напряжение. В современной электронике развитие аппаратной базы ЭВМ идет именно в этом направлении. Следовательно, использование двоичной системы в качестве внутренней системы представления информации вызвано конструктивными особенностями ЭВМ.
Двоичная система счисления
В двоичной системе счисления используются только две цифры 0 и 1 для записи чисел. Основание данной системы счисления 2. Любое число в двоичной системе счисления записывается как комбинация только двух выбранных цифр 0 и 1.
49=110001
Достоинство двоичной системы счисления заключается в простоте выполнения арифметических операций:
0+0=0 0*0=0
0+1=1 0*1=0
1+0=1 1*0=0
1+1=10 1*1=1
К недостаткам двоичного кода относят то обстоятельство, что двоичные коды очень длинные. Это неудобство не имеет существенного значения для ЭВМ. Однако если возникает необходимость кодирования информации вручную, при составлении программ на машинном языке, то предпочтительнее оказывается пользоваться восьмеричной и шестнадцатеричной системой счисления. В первом случае длина числа сокращается в три раза, во втором – в четыре, т.к. 8=23, а 16=24.
Восьмеричная система счисления
В восьмеричной системе счисления используют цифры от 0 до 7. Основанием данной системы счисления является число 8, т.е. любое число разлагается по степеням числа 8.
110=1*80=18
1510=8+7=1*81+7*80=178
199710=3*83+7*82+1*81+5*80=37158
Шестнадцатеричная система счисления
Поскольку в программировании часто приходится иметь дело с большими числами (например, для адресации ячеек памяти), пользоваться которыми в двоичном виде весьма неудобно, то наряду с бинарной системой счисления применяется шестнадцатеричная.
В этой системе используется 16 цифр: цифры десятичной системы для обозначения первых десяти цифр и первые шесть букв латинского алфавита для остальных, соответствующих десятичным числам 10,11,12,13,14,15.
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
Основанием системы является число 16.
1610=1*161+0*160=1016
3010=1*161+14*160=1E16
199710=7*162+12*161+13*160=7CD16
Перевод целого числа из десятичного счисления в другое
1.Последовательно делить заданное число и получаемые целые части на новое основание счисления до тех пор, пока целая часть не станет меньше нового основания счисления.
2.Полученные остатки от деления, представленные цифрами из нового счисления записать в виде числа, начиная с последней, целой части.
Например.
12:2=6 (0) 54:16=3 (6) 20:8=2 (4)
6:2=3 (0)
3:2=1 (1)
1210=11002 5410=3616 2010=248
Перевод целого числа из двоичного счисления в десятичное счисление
Пронумеруем цифры в двоичной записи числа справа налево, начиная с нуля (номера соответствуют степеням 2 в многочлене);
Сложим те степени двоек, которые соответствуют номерам цифр 1 в двоичной записи числа. Полученный результат является значением числа в десятичной системе.
11 001 1012=1*27+1*26+1*23+1*22+1*20=128+64+8+4+1=20510
76 543 210
Арифметические операции в двоичной, восьмеричной и шестнадцатеричной системах счисления
10101112+1111112=100101102 11112-10112=1002
346018+127048=475058 543218-464328=76678
5ac359f16+1234cb16=5beba6a16 fabc16-123416=e88816
Перевод между основаниями, составляющими степень двойки
Перевод чисел в двоичную систему счисления из восьмеричной и обратно: чтобы восьмеричное число перевести в двоичное, надо каждую восьмеричную цифру заменить эквивалентным ей трехразрядным двоичным числом – триадой.
Например.
1234.7778=001 010 011 100. 111 111 1112=1 010 011 100. 111 111 1112
12345678=001 010 011 100 101 110 1112=1 010 011 100 101 110 1112
123456.0078=1 010 011 100 101 110. 000 000 1112
Лишние нули в старших разрядах отбрасываются.
Обратный перевод производится также просто, каждая триада двоичных цифр заменяется восьмеричной цифрой. Для правильного перевода число должно быть выровнено, т.е. число двоичных знаков должно быть кратно трем. Выравнивание производится простым дописыванием нулей перед старшим разрядом для целой части, за последним разрядом для дробной части.
Например.
11001112=001 100 1112=1478
11.10012=011.100 1002=3.448
110.01112=110.011 1002=6.348
Перевод чисел в двоичную систему счисления из шестнадцатеричной и обратно
При переводах между двоичными и шестнадцатеричными счислениями используют четверки двоичных чисел. При необходимости выравнивание выполняется до длины двоичного числа, кратной четырем.
Например.
1234.AB7716=0001 0010 0011 0100. 1010 1011 0111 01112=1 0010 0011 0100. 1010 1011 0111 01112
CE456716=1100 1110 0100 0101 0110 01112
11001112=0110 01112=6716
11.10012=0011. 10012=3.916
При переходе из восьмеричного счисления в шестнадцатеричное счисление и обратно используется вспомогательный, двоичный код.
Представление вещественные чисел
Их главное отличие от целых состоит в существовании двух частей – целой и дробной, разделенных при записи запятой. Любое вещественное число х, представленное в системе счисления с основанием N, можно записать в виде
X=mNp,
где m – мантисса, р – характеристика (или порядок) числа.
Для десятичной системы это выглядит очень привычно, например: заряд электрона равен – 1,6*10-19 К, а скорость света ~3*108 м/с.
Представление числа с плавающей запятой не является единственным:
3*108=30*107=0,3*109=0,003*1011. Поэтому договорились для выделения единственного варианта представления числа считать, что мантисса всегда меньше единицы, а ее первый разряд содержит отличную от нуля цифру – в нашем примере этим требованиям удовлетворяет только запись 0,3*109. Такое представление чисел называется нормализованным и является единственным.
