Димитровградский инженерно - технологический институт – филиал НИЯУ МИФИ

Димитровградский инженерно - технологический институт – филиал НИЯУ МИФИ

 

Кафедра Информационные технологии

К защите допустить «» 2011 г.

Зав. кафедрой Ракова О.А__________

______________

(дата)

 

 

Курсовая работа

по дисциплине «Информатика»

Тема: «Характеристики основных языков программирования»

 

Выполнил: студент гр. ВТ-11

Полищук И.Д.

Руководитель: ст. преподаватель кафедры ИТ

Павлова Т.Н.

Нормоконтролер: доцент кафедры ИТ

Ракова О.А.

 

Димитровград, 2011

 

 

Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

Национальный исследовательский ядерный университет «МИФИ»

Димитровградский инженерно - технологический институт – филиал НИЯУ МИФИ

 

Задание

на курсовую работу

Дисциплина: Информатика

Тема: Характеристики основных языков программирования

Исполнитель: Полищук Иван Дмитриевич

Руководитель: ст. преподаватель Павлова Татьяна Николаевна

Краткое содержание работы:

1.Теоретическая часть: Характеристика основных языков программирования

2.Практическая часть:

Задание 1. Построение графиков функций и поверхностей.

1.1 Построить в разных системах координат при х [-2;2] графики следующих функций:

 
 

y = g = z =

 


1.2 Построить в одной системе координат при х [-2;2] графики следующих функций:

y=2sin(2 x)cos( x)+3sin( x), z =cos(2 x).sin²(2 x) – cos(4 x).

Задание 2. Обработка данных средствами Excel

2.1 Нагрузка преподавателя (Фамилия, Имя, Отчество, Учёная степень, Должность, Кафедра, Название предмета, Специальность, Группа, Факультет, Вид занятия, Количество). Значение поля Вид занятия: лекции, лабораторные работы, курсовая работа и т.д.

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

· сортировка (сортировку осуществлять по полям Название предмета, Кафедра, Учёная степень);

· поиск информации с помощью автофильтра (найти информацию о доцентах и ассистентах, которые проводят занятия по предмету Предмет на факультетах Факультет1 и Факультет2);

· поиск информации с помощью расширенного фильтра (найти дисциплины, изучаемые на факультет Факультет с минимальным количеством часов, отводимых на практические занятия);

· подведение итогов (определить общую нагрузку в часах и нагрузку по видам занятий для каждого преподавателя);

· анализ списка с помощью функции (определить, сколько лекционных курсов у преподавателя Преподаватель).

Каждое задание выполнять на отдельном листе; листы именовать в соответствии с выполняемым заданием (например, «Автофильтр», «Сортировка» и т.п.) Для этого потребуется копировать список на нужное количество листов.

Задание 3. База данных.

3.1 Создать БД. Выполнить задание1, 2, 3, 4, 8, 10, 14, 18, 22, 23, 25, 29, 33, 35.

Задание 4. Переведите данное число из десятичной системы счисления в двоичную, восьмеричную, шестнадцатеричную системы счисления: 154,23₁₀

Задание 5. Перевести данное число в десятичную систему счисления:

а) 1101100101,11010₂; б) 5BE, 1F₁₆; в) 555,5₈.

Задание 6. Сложите числа:

а) 782,61D₁₆ + EA3C3,895₁₆

б) 100100110,10₂ + 101111011,11010₂

в) 141,7₈ + 627,35₈

Задание 7. Выполните вычитание:

а) CD399,15₁₆ - 6A987,B7C₁₆

б) 1011010101,01₂ - 101001011,10011₂

в) 767,15₈ - 475,74₈

Задание 8. Выполните умножение:

а)110100,1₂ * 10111₂

б) 1001101₂ * 10011₂

в) ABE,9₁₆ * D4A₁₆

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

а) X =-100101 б) X=-1001110

Y=-1010100 Y=1011001

 

 

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

 

 
&
A

B

 
C

D

 

Задание 11. Составьте таблицу истинности для следующих выражений. Проверьте результат, упростив выражение.

F=B ʌ ((B A) ʌ ((B ʌ A) (B ʌ A)))

Сроки выполнения работы по графику:

1.Теоретическая часть – 20% к 8 неделе

2.Практическая часть – 70% к 15 неделе

3.Экспериментальный раздел – 85 % к 17 неделе

4.Защита – 100% к 20 неделе

Требования к оформлению:

1.Расчетно-пояснительная записка курсовой работы должна быть представлена в электронной и твёрдой копиях;

2.Объем отчета должен быть не менее 20 машинописных страниц без учета приложений;

3.РПЗ подписывается у ответственного за нормоконтроль

Руководитель работы Павлова Т.Н.

Исполнитель Полищук И.Д.

Дата выдачи «__» ______2011 г.

 
 


РЕФЕРАТ

Полищук И.Д. Характеристики основных языков программирования: Курсовая работа/ДИТИ, №230100 – Димитровград, 2011. – 47 стр., рис. 51, табл. 2, библ. Назв. 10, приложений 0

 

Ключевые слова: Программирование

 

 

Объект исследования – Информация и свойства информации

Цель работы – Изучение возможности пакета MS Excel. Изучение СУБД MS Accses. Модифицированный, дополнительный и обратный коды. Построение логических схем, изучение логических операций.

 

Выводы: Изучил возможности пакета MS Excel. Изученил СУБД MS Accses. Модифицированный, дополнительный и обратный коды. Научился строить логические схемы, изученил логических операций.

 

 

Оглавление

Теоретическая часть: 8

Введение. 8

Delphi 12

Бейсик. 14

HTML. 15

Java. 16

Perl 17

Практическая часть. 18

Задание 1. 18

Задание 2. 20

Задание 3. 23

Задание 4. 34

Задание 5. 37

Задание 6. 38

Задание 7. 39

Задание 8. 40

Задание 9. 41

Задание 10. 43

Задание 11. 45

Список литературы.. 47

 

Теоретическая часть:

Введение

Языки программирования компьютеров делятся на 2 главные группы:
1) языки низкого уровня;
2) языки высочайшего уровня.
Ассемблер

К языкам низкого уровня относятся языки Ассемблера. Свое заглавие они получили от имени системной программы Ассемблер, которая преобразует начальные программы, написанные на таковых языках, конкретно в коды машинных команд. Термин «Ассемблер» произошел от британского слова assembler (сборщик частей в одно целое). Частями тут служат операторы, а результатом сборки последовательность машинных команд. Процесс сборки именуется ассемблированием.

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

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

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

Ассемблер машинно-зависимый язык, т. Е. он отражает индивидуальности архитектуры определенного типа компа. Начальная программа, написанная на ассемблере, состоит из 1-го либо пары начальных модулей, а каждый модуль – из операторов.

 

 

Паскаль

Язык программирования Паскаль был разработан доктором кафедры вычислительной техники Швейцарского Федерального института технологии Николасом Виртом в 1968 году как кандидатура имеющимся и все усложняющимся языкам программирования, таковым, как PL/1, Algol, Fortran. Интенсивное развитие Паскаля привело к возникновению уже в 1973 году его эталона в виде пересмотренного сообщения, а число трансляторов с этого языка в 1979 году перевалило за 80.

Сначала 80-х годов Паскаль еще больше упрочил свои позиции с возникновением трансляторов MS-Pascal и Turbo-Pascal для ПЭВМ. С сих пор Паскаль становится одним из более принципиальных и обширно используемых языков программирования. Значительно то, что язык издавна вышел за рамки академического и узко проф энтузиазма и употребляется в большинстве институтов высокоразвитых государств не только лишь как рабочий инструмент юзера. Важной индивидуальностью Паскаля является воплощенная мысль структурного программирования. Иной значимой индивидуальностью является концепция структуры данных как 1-го из базовых понятий.
Главные предпосылки популярности Паскаля заключаются в последующем:
- простота языка дозволяет быстро его освоить и создавать алгоритмически сложные программы
- развитые средства представления структур данных обеспечивают удобство работы как с числовой, так и с символьной и битовой информацией
- наличие особых методик сотворения трансляторов с Паскаля упростило их разработку и содействовало широкому распространению языка – оптимизирующие характеристики трансляторов с Паскаля разрешают создавать действенные программы. Это послужило одной из обстоятельств использования Паскаля в качестве языка системного программирования
- в языке Паскаль реализуются идеи структурного программирования, что делает программу приятной и дает отличные способности для разработки и

 

отладки.

При описании плюсов Паскаля необходимо огласить, что он является макетом для языков новейшего поколения (посреди которых следует отметить языки Ada и Modula-II). Паскаль дает чрезвычайно много в осознании сути программирования, он прививает неплохой стиль программирования, кропотливую разработку метода. Достоинства этого языка в особенности ощутимы при написании довольно сложных и мобильных (т. Е. просто переносимых на остальные PC) программ.

Язык С++ является средством объектного программирования, новой методики проектирования и реализации программ, которая в текущем десятилетии, вероятнее всего, заменит обычное процедурное программирование. Главной целью создателя языка доктора Бьерна Страустрапа было оснащение языка С++ конструкциями, позволяющими прирастить производительность труда программистов и облегчить процесс овладения большими программными продуктами.

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


 

Delphi

Delphi – это комбинация нескольких важнейших технологий:

– высокопроизводительный компилятор в машинный код;

– объектно-ориентированная модель компонент;

– визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов;

– масштабируемые средства для построения баз данных.

Компилятор, встроенный в Delphi, обеспечивает высокую производительность, необходимую для построения приложений в архитектуре «клиент-сервер». Он предлагает легкость разработки и быстрое время проверки готового программного блока, характерного для языков четвертого поколения. Кроме того, Delphi обеспечивает быструю разработку без необходимости писать вставки на Си или ручного написания кода (хотя это возможно).

В процессе построения приложения разработчик выбирает из палитры компонент готовые компоненты как художник, делающий крупные мазки кистью. Еще до компиляции он видит результаты своей работы – после подключения к источнику данных их можно видеть отображенными на форме, можно перемещаться по данным, представлять их в том или ином виде. В этом смысле проектирование в Delphi мало чем отличается от проектирования в интерпретирующей среде, однако после выполнения компиляции мы получаем код, который исполняется в 10-20 раз быстрее, чем то же самое, сделанное при помощи интерпретатора. Кроме того, компилятор компилятору рознь, в Delphi компиляция производится непосредственно в родной машинный код, в то время как существуют компиляторы, превращающие программу в так называемый p-код, который затем интерпретируется виртуальной p-машиной. Это не может не сказаться на фактическом быстродействии готового приложения.

 

Объекты БД в Delphi основаны на SQL и включают в себя полную мощь Borland Database Engine. В состав Delphi также включен Borland SQL LINK, поэтому доступ к СУБД Oracle, Sybase, Informix и Interbase происходит с высокой эффективностью. Кроме того, Delphi включает в себя локальный сервер Interbase для того, чтобы можно было разработать расширяемые на любые внешние sql-сервера приложения в офлайновом режиме. Разработчик в среде Delphi, проектирующий информационную систему для локальной машины (к примеру, небольшую систему учета медицинских карточек для одного компьютера), может использовать для хранения информации файлы формата.dbf (как в dbase или clipper) или.db (paradox).

 

 

Бейсик
Бейсик (Basic – Beginner’s All-Purpose Symbolic Instruction Code – “универсальный символический код инструкций для начинающих”). Прямой потомок Фортрана и до этого времени самый популярный язык программирования для индивидуальных компов. Возник Бейсик в 1963 году (именовать создателя было бы тяжело, но основная награда в его возникновении непременно принадлежит американцам Джону Кемени и Томасу Курцу). Как и любые достоинства, простота Бейсика оборачивалась, в особенности в ранних версиях трудностями структурирования; не считая того, Бейсик не допускал рекурсию – увлекательный прием, позволяющий составлять действенные и в то же время недлинные программы. Разработаны массивные компиляторы Бейсика, которые обеспечивают не только лишь богатую лексику и высочайшее быстродействие, да и возможность структурного программирования. По мнению неких программистов, более увлекательными версиями являются GWBASIC, Turbo-Basic и Quick Basic.

В свое время возникновение Quick Basic ознаменовало рождение второго поколения систем программирования на языке Бейсик. Он предоставлял возможность модульного и процедурного программирования, сотворения библиотек, компиляции готовых программ и прочее, что вывело его на уровень таковых классических языков программирования, как Си, Паскаль, Фортран и др. Наиболее того, в связи с отсутствием официального эталона языка Бейсик, его реализация в виде Quick Basic стала фактическим эталоном. Безусловными фаворитами посреди разных версий Бейсика были Quick Basic 4.5 и PDS 7.1 компании Microsoft, появившиеся в конце 80-х годов.

 

 

HTML
Термин HTML (HyperText Markup Language) значит «язык маркировки (разметки) гипертекстов». Первую версию HTML разработал сотрудник Европейской лаборатории физики простых частиц Тим Бернерс-Ли.

Язык HTML был нужен для статического размещения страничек во “Всемирной паутине” WWW (World Wide Web).

Со времени сотворения первой версии HTML претерпел некие конфигурации. Как и почти все другое в компьютерном мире, версии, либо спецификации, HTML оказались пронумерованными. Известны спецификации 2.0, 3.0 и 3.2.

 

 

Java
Язык Java зародился как часть проекта сотворения передового программного обеспечения (ПО) для разных бытовых устройств. Реализация проекта была начата на языке С++, но скоро появился ряд заморочек, наилучшим средством борьбы с которыми было изменение самого инструмента – языка программирования. Стало естественным, что нужен платформо-независимый язык программирования, позволяющий создавать программы, которые не приходилось бы компилировать раздельно для каждой архитектуры и можно было бы применять на разных процессорах под разными операционными системами.

Язык Java потребовался для сотворения интерактивных товаров для сети Internet. Практически, большая часть строительных решений, принятых при разработке Java, было продиктовано желанием предоставить синтаксис, сходный с Си и Cи++. В Java употребляются фактически схожие соглашения для объявления переменных, передачи характеристик, операторов и для управления потоком выполнением кода. В Java добавлены все отличные черты C++.
Три главных элемента слились в технологии языка Java

- Java предоставляет для широкого использования свои апплеты (applets) — маленькие, надежные, динамичные, не зависящие от платформы активные сетевые приложения, встраиваемые в странички Web. Апплеты Java могут настраиваться и распространяться потребителям с таковой же легкостью, как любые документы HTML.

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

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

 

 

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

 

 


Perl

Perl является интерпретируемым языком, сделанным программером Лари Уоллом для обработки огромных текстов и файлов и расшифровывается, как Practical Extraction and Report Language (язык для практического извлечения данных и составления отчетов). При помощи Perl вы, к примеру, сможете сделать скрипт, который открывает один либо несколько файлов, обрабатывает информацию и записывает результаты.

 

 

Практическая часть

Задание 1. Для решения задачи воспользуемся ЭТ MS Excel.

1) Протабулировать заданную функцию на заданном отрезке, т.е. вычислить ее значения с заданным шагом.

2) Записать формулу для вычисления функции.

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

Рис. 1.1- Построение графика функции у(х)

Рис.1.2. – Построение графиков y(x) и z(x) в одной системе координат

 

Рис.1.3 – Построение графика функции z(x)

 

Задание 2.

1) Сортировка (сортировку осуществлять по полям Название предмета, Кафедра, Учёная степень);

Рис.2.1. – Сортировка по полю Название предмета

2) Поиск информации с помощью автофильтра (найти информацию о доцентах и ассистентах, которые проводят занятия по предмету Предмет на факультетах Факультет1 и Факультет2);

Рис.2.2. – Использование Автофильтра

Рис.2.3. – Поиск информации с помощью автофильтра

 

3) Поиск информации с помощью расширенного фильтра (найти дисциплины, изучаемые на факультет Факультет с минимальным количеством часов, отводимых на практические занятия);

Рис. 2.4. – Использование Расширенного фильтра

 

4) Подведение итогов (определить общую нагрузку в часах и нагрузку по видам занятий для каждого преподавателя);

Рис.2.5. – Подведение итогов

 

 

5) Анализ списка с помощью функции (определить, сколько лекционных курсов у преподавателя Преподаватель).

Рис.2.6. – Использование функции БСЧЁТА

Рис.2.7 – Анализ списка с помощью функции

 

 

Задание 3.

Создаём две связанные таблицы Сессия и Студенты.

Рис.3.1- Конструктор таблицы Сессия

Рис.3.2 – Таблица Сессия

Рис.3.3 – Конструктор таблицы Студенты

Рис.3.4

 

12. Используя таблицу Студенты, создать три запроса, по которым из базы данных будут поочередно отобраны фамилии и имена студентов групп 1-Э-1, 1-Э-2, 1-Э-3.

Рис.3.5 – Конструктор Запроса 1.1

Рис.3.6 – Запрос 1.1

Рис.3.7 – Конструктор Запроса 1.2

Рис.3.8 – Запрос 1.2

 

Рис.3.9 – Конструктор Запроса 1.3

Рис.3.10 – Запрос 1.3

 

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

Рис.3.11- Конструктор Запроса 2.1

Рис.3.12 – Запрос 2.1

Рис.3.13 – Конструктор Запроса 2.2

Рис.3.14 – Запрос 2.2

3)Использую таблицу Студенты, создать два запроса, по которым из базы данных будут поочередно отобраны фамилии и имена женщин группы 1-Э-2, а затем-мужчин группы 1-Э-1.

Рис.3.15 – Конструктор Запроса 3.1

Рис.3.16 – Запрос 3.1

Рис.3.17 – Конструктор Запроса 3.2

Рис.3.18 – Запрос 3.2

 

4) Используя связанные таблицы Студенты и Сессия, создать запрос, по которому из базы данных будут отобраны фамилии, имена, номера зачёток и оценки по математике студентов группы 1-Э-1.

Рис. 3.19 – Конструктор Запроса 4

Рис.3.20 – Запрос 4

5) Используя связанные таблицы Студенты и Сессия, создать запрос, по которому из базы данных будут отобраны фамилии, имена, номера зачёток и оценки по философии студентов (мужчин) группы 1-Э-2.

Рис.3.21- Конструктор Запроса 8

Рис.3.22 – Запрос 8

 

6) Используя связанные таблицы Студенты и Сессия, создать запрос, по которому из базы данных будут отобраны фамилии, имена, номера зачёток студентов, получивших оценку «удовлетворительно» (3) по философии.

Рис.3.23 – Конструктор Запроса 10

Рис.3.24 – Запрос 10

7) Используя связанные таблицы Студенты и Сессия, создать запрос, по которому из базы данных будут отобраны фамилии, имена, номера зачёток студентов, получивших оценку «хорошо» (4) одновременно по двум предмета: философии и математике.

Рис.3.25 – Конструктор Запроса 14

Рис.3.26 – Запрос 14

8) Используя связанные таблицы Студенты и Сессия, создать запрос, по которому из базы данных будут отобраны фамилии, имена, номера зачёток студентов, получивших оценку «неудовлетворительно» (2) по одному из двух предметов: по математике или информатике.

Рис.3.27 – Конструктор Запроса 18

Рис.3.28 – Запрос 18

9) Используя связанные таблицы Студенты и Сессия, создать запрос, по которому из базы данных будут отобраны фамилии, имена, номера зачёток студентов, получивших оценку «хорошо» (4) по всем предметам.

Рис.3.29 – Конструктор Запроса 22

Рис.3.30 – Запрос 22

 

10) Использую таблицу Сессия, создать запрос с именем Средний балл для расчёта среднего балла каждого студента по результатам сдачи четырёх экзаменов. Запрос обязательно должен содержать поле Зачётка, которое впоследствии будет использовано для связывания нескольких таблиц.

Рис.3.31 – Конструктор Таблицы Сессия

Рис.3.32 - Запрос Средний балл

 

11) Используя связанные таблицы Студенты, Сессия и запрос Средний балл, создать запрос, по которому из базы данных будут отобраны фамилии, имена, номера зачёток, номера групп студентов, имеющих средний балл 3,25.

Рис.3.33 – Конструктор Запроса 25

Рис.3.34 – Запрос 25

12) Используя связанные таблицы Студенты, Сессия и запрос Средний балл, создать запрос, по которому из базы данных будут отобраны оценка по математике, средний балл и номер группы студента Иванова.

Рис.3.35 – Конструктор Запроса 29

Рис.3.36 – Запрос 29

13) Используя связанные таблицы Студенты, Сессия и запрос Средний балл, создать запрос, по которому из базы данных будут отобраны фамилии, имена студентов имеющих средний балл менее 3,75.

Рис.3.37 Конструктор Запроса 33

Рис.3.38 – Запрос 33

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

Рис.3.39 – Конструктор Запроса 35

Рис.3.40 – Запрос 35

 

Задание 4. А) Для перевода чисел из десятичной системы счисления в двоичную используют так называемый «алгоритм замещения», состоящий из следующей последовательности действий:

1. Делим десятичное число А на 2. Частное Q запоминаем для следующего шага, а остаток a записываем как младший бит двоичного числа.

2. Если частное q не равно 0, принимаем его за новое делимое и повторяем процедуру, описанную в шаге 1. Каждый новый остаток (0 или 1) записывается в разряды двоичного числа в направлении от младшего бита к старшему.

3. Алгоритм продолжается до тех пор, пока в результате выполнения шагов 1 и 2 не получится частное Q = 0 и остаток a = 1.

 

154,23₁₀ =10011010,001₂

     
     
     
     
     
     
     
0, 23
0 46
0 92
1 84


б) Для перевода чисел из десятичной системы счисления в восьмеричную используют тот же «алгоритм замещения», что и при переводе из десятичной системы счисления в двоичную, только в качестве делителя используют 8, основание восьмеричной системы счисления:

 

1. Делим десятичное число А на 8. Частное Q запоминаем для следующего шага, а остаток a записываем как младший бит восьмеричного числа.

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

3. Алгоритм продолжается до тех пор, пока в результате выполнения шагов 1 и 2 не получится частное Q = 0 и остаток a меньше 8.

154,23₁₀ = 232,165₈

154 19 2
19 2 3
0, 23
1 84
6 72
5 76

в) Для перевода чисел из десятичной системы счисления в шестнадцатеричную используют тот же «алгоритм замещения», что и при переводе из десятичной системы счисления в двоичную и восьмеричную, только в качестве делителя используют 16, основание шестнадцатеричной системы счисления:

1. Делим десятичное число А на 16. Частное Q запоминаем для следующего шага, а остаток a записываем как младший бит шестнадцатеричного числа.

2. Если частное q не равно 0, принимаем его за новое делимое и повторяем процедуру, описанную в шаге 1. Каждый новый остаток записывается в разряды шестнадцатеричного числа в направлении от младшего бита к старшему.

3. Алгоритм продолжается до тех пор, пока в результате выполнения шагов 1 и 2 не получится частное Q = 0 и остаток a меньше 16.

 

154,23₁₀ = A, 3AE₁₆

154 9 10
0, 23
3 68
10 88
14 08

 

 


Задание 5. 1) Для перевода целой части необходимо умножить разряд числа на соответствующую ему степень разряда.

2) Для перевода дробной части необходимо разделить разряд числа на соответствующую ему степень разряда

а)1101100101₂ = 1*2^9+1*2^8+1*2^6+1*2^5+1*2^2+1*2^0 = 869

0,11010₂ = 1*2^(-1)+ 1*2^(-2)+ 1*2^(-4) = 0.8125

1101100101, 11010₂ = 869,8125₁₀

Б) 5BE₁₆ = 11*16^1+14*16^0+5*16^3 = 20670

0,1F₁₆ = 1*16^(-2)+15*16^(-1) = 0,94140625

5BE,1F₁₆ = 20670,94140625₁₀

В) 555 = 5*8^0+5*8^1+5*8^2 = 365

0,5 = 5*8^(-1) = 0,625

555,5₈ = 365,625₁₀

 

 

Задание 6. Арифметические операции во всех позиционных системах счисления выполняются по одним и тем же хорошо известным вам правилам.

Сложение. Рассмотрим сложение чисел в двоичной системе счисления. В его основе лежит таблица сложения одноразрядных двоичных чисел:

  +   =  
  +   =  
  +   =  
  +   =  

 

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

Сложение многоразрядных двоичных чисел происходит в соответствии с вышеприведенной таблицей сложения с учетом возможных переносов из младших разрядов в старшие.

 

+ 1 0 0 1 0 0 1 1 0. 1 0 0 0 0

1 0 1 1 1 1 0 1 1. 1 1 0 1 0

1 0 1 0 1 0 0 0 1 0. 0 1 0 1 0

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

+ 7 8 2, 6 1 D A₁₆ + 1 4 1, 7 0₈

E A 3 C 3, 8 9 5 0₁₆ 6 2 7, 3 5₈

E A B 4 5, E B 2 A₁₆ 7 7 1, 0 5₈

 

Задание 7.

Рассмотрим вычитание двоичных чисел. В его основе лежит таблица вычитания одноразрядных двоичных чисел. При вычитании из меньшего числа (0) большего (1) производится заем из старшего разряда. В таблице заем обозначен 1 с чертой:

 

  -   =  
  -   =  
  -   =  
  -   =  

 

 

Вычитание многоразрядных двоичных чисел происходит в соответствии с вышеприведенной таблицей вычитания с учетом возможных заемов из старших разрядов.

-1 0 1 1 0 1 0 1 0 1, 0 1 0 0 0

1 0 1 0 0 1 0 1 1, 1 0 0 1 1

1 1 0 0 0 1 0 1 0,1 0 1 0 1

 

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

– C D 3 9 9, 1 5 0 ₁₆ - 7 6 7, 1 5₈

6 A 9 8 7, B 7 C ₁₆ 4 7 5, 7 4₈

C 2 A 1 1, 5 D 4₁₆ 2 7 1, 2 1₈

Задание 8. В основе умножения лежит таблица умножения одноразрядных двоичных чисел:

    =  
    =  
    =  
    =  

 

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

 

* 1 1 0 1 0 0, 1 * 1 0 0 1 1 0 1

1 0 1 1 1 1 0 0 1 1

1 1 0 1 0 0 1 1 0 0 1 1 0 1

1 1 0 1 0 0 1 1 0 0 1 1 0 1

1 1 0 1 0 0 1 1 0 0 1 1 0 1.

1 1 0 1 0 0 1. 1 0 1 1 0 1 1 0 1 1 1

1 0 0 1 0 1 1 0 1 1 1,1

 

Аналогично можно выполнять арифметические действия в восьмеричной и шестнадцатеричной системах счисления.

ABE,9

* D4A

 

Задание 9.

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

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

Дополнительный код (англ. Two’s complement, иногда twos-complement) — наиболее распространённый способ представления отрицательных целых чисел в компьютерах. Он позволяет заменить операцию вычитания на операцию сложения и сделать операции сложения и вычитания одинаковыми для знаковых и беззнаковых чисел, чем упрощает архитектуру ЭВМ. При записи числа для положительного числа совпадает с прямым кодом, а для отрицательного числа дополнительный код обуславливается получением обратного кода и добавлением 1.

А) X =-100101

Y=-1010100

Прямой код: X=1,0100101

Y=1,1010100

1,0100101

* 1,1010100

10100101.

1,10100010100100 = -10100010100100

 

 

Обратный код: X= 1,1011010

Y= 1,0101001

+ 1,1011010

1,0101011

11,0000101

1

1,0000110 = 1,1111001

Дополнительный код: X= 1,1011011

Y= 1,0101100

+ 1,1011011

1,0101100

11,0000111 = 1,111100

1

1,1111001

б) X=-1001110

Y=1011001

Прямой код: X = 1,1001110

Y=0,1011001

1,1001110

* 0,1011001

11001110.

1,00011110011110 = -11110011110

 

Обратный код: X=1,0110001

Y= 0,1011001

+ 1,0110001

0,1011001

10,0001010

1

0,0001011 = 0,0001011

 

Дополнительный код: X = 1,0110010

Y = 0,1011001

+1,0110010

0,1011001

10,0001011 = 0,0001011

Задание 10.

 

1.Логический элемент НЕ(Х) выполняет логическое отрицание.

Условное обозначение Таблица истинности

X Y

 

2. Логический элемент ИЛИ (XvY) выполняет логическое сложение.

Условное обозначение Таблица истинности

X

Z

Y

 

3.Логический элемент И (XʌY) выполняет логическое умножение

Условное обозначение Таблица истинности

X

Z

Y

 

 

&
 
 
А

В

 

 

С

D

 

A B C D B C D Av B D v C (Av B) ʌ (D v C) (Av B) ʌ (D v C) F
                       
                       
                       
                       
                       
                       
                       
                       
                       
                       
                       
                       
                       
                       
                       
                       

Таблица 10.1 – Таблица истинности

 

F = ((Av B) ʌ (D v C))

 

 

Задание 11

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

1.Закон двойного отрицания: (А) = А

Двойное отрицание исключает отрицание.

2. Переместительный (коммутативный) закон:

— для логического сложения: A V B = B V A

— для логического умножения: A&B = B&A

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

3.Сочетательный (ассоциативный) закон:

— для логического сложения: (A v B) v C = A v (Bv C);

— для логического умножения: (A&B)&C = A&(B&C).

При одинаковых знаках скобки можно ставить произвольно или вообще опускать.

4.Распределительный (дистрибутивный) закон:

— для логического сложения: (A v B)&C = (A&C)v(B&C);

— для логического умножения: (A&B) v C = (A v C)&(B v C).

Определяет правило выноса общего высказывания за скобку.

5.Закон общей инверсии (законы де Моргана):

— для логического сложения: (Av B) = A & B;

— для логического умножения: (A& B) = A v B;

6. Закон идемпотентности

— для логического сложения: A v A = A;

— для логического умножения: A&A = A.

Закон означает отсутствие показателей степени.

7. Законы исключения констант:

— для логического сложения: A v 1 = 1, A v 0 = A;

— для логического умножения: A&1 = A, A&0 = 0.

 

8. Закон противоречия: A& A = 0.

Невозможно, чтобы противоречащие высказывания были одновременно истинными.

9. Закон исключения третьего: A v A = 1.

10. Закон поглощения:

— для логического сложения: A v (A&B) = A;

— для логического умножения: A&(A v B) = A.

11. Закон исключения (склеивания):

— для логического сложения: (A&B) v (A &B) = B;

— для логического умножения: (A v B)&(A v B) = B.

12. Закон контрапозиции (правило перевертывания):

(A v B) = (Bv A).

(А→В) = А&В

А&(АvВ)= А&В

Аv А&В=АvВФормула имеет нормальную форму, если в ней отсутствуют знаки эквивалентности, импликации, двойного от­рицания, при этом знаки отрицания находятся только при переменных.

 

F= B ʌ ((B A) ʌ ((BʌA) (BʌA))) = B ʌ ((BvA) ʌ ((BʌA) v (BʌA))) = B ʌ ((B v A) ʌ (B v A v B ʌ A)= B ʌ (((B v A) ʌ B) v ((B v A) ʌ A) v ((B v A) ʌ (B v A)))= B ʌ (⌐B v (A ʌ ⌐B) v(⌐A ʌ ⌐B) v(A ʌ ⌐A)v(⌐BʌA))= B ʌ (⌐B v(A ʌ ⌐B) v(⌐A ʌ ⌐B)) = B ʌ(⌐B v ⌐B ʌ (A v⌐A))= B ʌ⌐B = 0

 

 

Таблица 11.1 – Таблица истинности

A B B B ʌ A B ʌ A (B ʌ A) (B ʌ A) B A (B A) ʌ ((B ʌ A) (B ʌ A)) F
                 
                 
                 
                 

 

 

Список литературы

1.Информатика под редакцией Е.К. Хеннера, М.,Академия,2004г.

2.Информатика.Базовый курс под ред. С. В. Симоновича, С.-П «Питер» 2005г.

3.Языки программирования. Обзор-ликбез. Хакер №4,с.36-40.

4.Р.Богатырев, Природа и эволюция сценарных языков, Мир ПК, №11,2001

5.Г.Буг, Объектно-ориентированный анализ и проектирование

6.http://citforum.ru

7. http://school.keldysh.ru/sch444/MUSEUM /LANR/evol.htm

8. http://ru.wikipedia.org

9. http://www.levenez.com/lang

10. http://tiobe.com

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: