Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lekcii_inform_1.doc
Скачиваний:
14
Добавлен:
13.11.2019
Размер:
1.16 Mб
Скачать

3.3. Индикаторы переноса и переполнения

Рассмотрим пример сложения двух чисел в системе без знака и со знаком:

1111+0001=0000 ( ) – в системе со знаком это верно; 0111+1=1000 ( ) – перенос в знаковый бит – не верно.

Для учета таких явлений в процессоре существует два индикатора: индикатор переноса и индикатор переполнения. Каждый индикатор содержит 1 бит информации. Индикатор переноса указывает на перенос из знакового бита, а индикатор переполнения - на перенос в знаковый бит. Таким образом, после завершения операции, в которой происходит перенос в старший бит, процессор устанавливает индикатор переполнения.

Пример. 3.4. Рассмотрим сложение двух чисел 0101+0011=1000. В результате выполнения операции сложения произошел перенос в знаковый бит, а переноса из знакового бита не было. После этой операции индикатор переноса будет сброшен, а индикатор переполнения – установлен. Если рассматривать эти два числа, как целые без знака, то результат является арифметически правильным: , так как индикатор переноса сброшен. Если рассматривать числа в системе со знаком, то бит переполнения показывает, что произошло изменение знака (перенос в знаковый бит есть, а из него – нет), поэтому арифметический результат неправильный: .

Пример. 3.5. В результате сложения 1101+0101=0010 происходит перенос и в знаковый бит и из знакового бита. Поэтому будет установлен индикатор переноса, а индикатор переполнения – сброшен. Следовательно, в системе чисел без знака результат является арифметически неправильным: , а в системе чисел со знаком – правильным: .

Пример. 3.6. В результате сложения 0011+0010=0101 не происходит переноса ни в знаковый бит, ни из него. Поэтому оба индикатора переноса будут сброшены. Следовательно, в этом случае в обеих системах результат будет арифметически правильным: .

4. ТеХнические средства информатики

4.1. История развития вычислительных средств до XX века: механические первоистоки

Первое счетное устройство – абак – появилось в 4-ом тысячелетии до н.э. в Азии. За 500 лет до н. э. в Китае появляется более «современный» вариант абака с косточками на соломинках — суан-пан. В средние века в Европе абак претерпел изменения – стали считать на линиях. В XIV веке появляется ещё одно вычислительное устройство – механические часы. В России в XVI-XVII вв. появились русские счеты.

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

С середины XVII в. начинается развитие вычислительных устройств. В 1642 г. Б. Паскаль изобретает суммирующую машину «Паскалин», а в 1645 г. появляется нормально работающий экземпляр машины. В 1694 г. Г. Лейбниц создает 12-разрядный арифмометр (стоил 24000 талеров3). Вычислительные машины ни того, ни другого ученого не нашли широкого применения ввиду дороговизны и малой потребности в автоматизации расчётов.

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

По мере развития производства и общества потребность в счётных машинах начала расти. Самой серьезной проблемой была проблема составления морских календарей – ориентирование было по звездам, и огромные штаты сотрудников-счетчиков сидели и считали эти календари (при расчетах использовались логарифмические таблицы) и всё же ошибались много и часто. В результате английское правительство поручило Ч. Бэббиджу создать специальную счётную машину для составления морских таблиц. В 1822 г. такая машина была изобретена (разностная). В 1834 г. возникла идея программно-управляемой машины. Бэббидж впервые сделал шаг на пути к гибкому программированию – ввел принцип разделения программ и данных. До своей смерти он трудился над созданием аналитической машины с применением перфокарт. Им первые были использованы условные переходы, что считается началом использования в машине логических операций. Составлением программ для этой машины занималась леди Ада Лавлейс – друг Бэббиджа и родная дочь Байрона. Именно она опубликовала статью с подробным описанием и математическими основаниями машины Бэббиджа – по существу это была первая статья по программированию.

Рис. 4.1. Механические счетные устройства

(«Паскалин» и разностная машина Ч. Бэббиджа)

В 1855 г. братья Георг и Эдвард Шутц (George & Edvard Scheutz) из Стокгольма построили первую разностную машину на основе работ Ч. Бэббиджа. В 1876 г. русским математиком П.Л. Чебышевым создан суммирующий аппарат с непрерывной передачей десятков. В 1881 г. он же сконструировал к нему приставку для умножения и деления – Арифмометр Чебышева.

В 1888 г. американский инженер Герман Холлерит сконструировал первую электромеханическую счетную машину – «табулятор», которая использовалась в переписях населения 1890 и 1900 г. в США и в 1897 г. в России. Об эффективности вычислительных машин можно судить по следующему факту: в 1890 г. изобретение Холлерита было впервые использовано в 11-й американской переписи населения. Работа, которую пятьсот сотрудников выполняли в течение семи лет, Холлерит сделал с 43 помощниками на 43 табуляторах за один месяц.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]