![]() |
|
сделать стартовой | добавить в избранное |
![]() |
Операции над данными в СП с плавающей точкой |
Федеральное Агентство образования Российской Федерации Пензенский государственный университет Кафедра &quo ;Информационная безопасность систем и технологий&quo ;РЕФЕРАТ по теме: &quo ;Операции над данными в СП с плавающей точкой &quo ;Дисциплина: ЦиМПТ Группа: Выполнил: . Руководитель работы:Пенза 2006 Содержание1. Обзор 2. Операции с плавающей точкой стандарта IEEE 2.1 Формат с плавающей точкой повышенной точности 2.2 Формат коротких слов с плавающей точкой 2.3 Исключения при выполнении операций с плавающей точкой 3. Операции с фиксированной точкой 4. Округление 5. Арифметико-логическое устройство (ALU) 5.1 Работа ALU 5.2 Режимы работы ALU 5.2.1 Режим насыщения 5.2.2 Режимы округления данных с плавающей точкой 5.2.3 Границы округления данных с плавающей точкой 5.3 Флаги состояния ALU 5.3.1 Нулевой флаг ALU (AZ) 5.3.2 Флаги потери значащих разрядов (AZ, AUS) 5.3.3 Отрицательный флаг ALU (A ) 5.3.4 Флаги переполнения ALU (AV, AOS, AVS) 5.3.5 Флаг переноса операции АШ с фиксированной точкой (АС) 5.3.6 Знаковый флаг ALU (AS) 5.3.7 Флаги ошибки ALL) (Al, AIS) 5.3.8 Флаг операции с плавающей точкой ALU (AF) 5.3.9 Накопление сравнений 6. Умножитель 6.1 Работа умножителя 6.2 Результаты с фиксированной точкой 6.2.1 Регистры MR 6.3 Операции с фиксированной точкой 6.3.1 Обнуление регистра MR 6.3.2 Округление содержимого регистра MR 6.3.3 Насыщение регистра MR при переполнении 1.6.4 Режимы работы с плавающей точкой 6.4.1 Режимы округления данных с плавающей точкой 6.4.2 Граница округления данных с плавающей точкой 6.5 Флаги состояния умножителя 6.5.1 Флаги потери значащих разрядов (MU, MUS) 6.5.2 Отрицательный флаг умножителя (M ) 6.5.3 Флаг переполнения умножителя (MV) 6.5.4 Флаг ошибки умножителя (Ml) 7. Устройство сдвига 7.1 Работа устройства сдвига 7.2 Флаги состояния устройства сдвига 7.3.1 Нулевой флаг устройства сдвига (SZ) 7.3.2 Флаг переполнения устройства сдвига (SV) 7.3.3 Знаковый флаг устройства сдвига (SS) 7.4 Резюме команд устройства сдвига 8. Многофункциональные вычисления 9. Регистровый файл 9.1 Дополнительные регистры 1. ОбзорВычислительные устройства (ВУ) процессора ADSP-2106x используются для операций, осуществляемых при реализации алгоритмов цифровой обработки сигналов. Процессор ADSP-2106x содержит три ВУ: арифметико-логическое устройство (ALU), умножитель и устройство сдвига. Процессор поддерживает операции с фиксированной и плавающей точкой. Каждое ВУ выполняет команды за один цикл. ALU выполняет стандартный набор арифметических и логических операций в обоих форматах: с фиксированной и плавающей точкой. Умножитель выполняет умножения с фиксированной и плавающей точкой, а также операции умножение/сложение и умножение/вычитание с фиксированной точкой. Устройство сдвига выполняет логические и арифметические сдвиги, манипуляцию битами, операции внесения и извлечения поля над 32-разрядными операндами и определение порядка. В У имеют параллельную архитектуру, как показано на рис.2.1 Выход любого ВУ может быть входом любого ВУ в следующем цикле. ВУ получают и выводят данные через 10-портовый регистровый файл, который состоит из 16 первичных и 16 дополнительных регистров.
Регистровый файл доступен для шины данных памяти программы и шины данных памяти данных, по которым передаются данные между ВУ и внешней памятью или другими частями процессора. Один и тот же регистр в регистровом файле начинается с префикса F (в исходном коде ассемблера), когда он используется в вычислениях с плавающей точкой. И начинается с префикса R, когда используется в вычислениях с фиксированной точкой. Например, следующие команды используют одни и те же регистры: FO=F1 F2; умножение с плаваюгцей точкой RO=R1 R2; умножение с фиксированной точкой Префиксы F и R не влияют на передачу 32-разрядных (или 40-разрядных) данных; они только определяют, как ALU, умножитель или устройство сдвига обрабатывают данные. F и R могут быть прописными и строчными; в ассемблере не учитывается регистр клавиатуры. В этой главе рассматриваются следующие темы: форматы данных и округление; архитектура и функции ALU; архитектура и функции умножителя; архитектура и функции устройства сдвига; многофункциональные вычисления; регистровый файл и передача данных. 2. Операции с плавающей точкой стандарта IEEEУмножитель и ALU поддерживают формат чисел с плавающей точкой одиночной точности, определенный стандартом IEEE 754/854. Этот стандарт описан в приложении С Форматы представления чисел. ADSP-2106x соответствует стандарту IEEE 754/854 для операций с плавающей точкой одиночной точности, за исключением: ADSP-2106x не обеспечивает неточные флаги; при вводе A ( o -a- umber - &quo ;не число&quo ;) генерируется исключение и возвращается A (1 во всех разрядах); ненормализованные операнды обнуляются, когда попадают в вычислительное устройство, и исключение потери значащих разрядов не генерируется. Если результат арифметической операции не нормализован или произошла потеря значащих разрядов, то он обнуляется и генерируется исключение потери значащих разрядов; поддерживаются режимы округления к ближайшему и округления по направлению к нулю; округление к ±°о не поддерживается. Кроме того, в ADSP-2106x поддерживается режим повышенной точности с плавающей точкой для 40-разрядных операндов, которые имеют восемь дополнительных младших разрядов мантиссы. Режим не соответствует стандартам 754/854, но результаты в этом формате более точные, чем в формате одиночной точности стандарта IEEE. 2.1 Формат с плавающей точкой повышенной точностиВ ADSP-2106x данные с плавающей точкой могут быть как 32-, так и 40-разрядными. Формат с плавающей точкой повышенной точности (8 бит порядок и 32 бита мантисса) устанавливаются при записи 0 в бит R D32 в регистре MODEL Если этот бит установлен (1), то используется обычная точность стандарта IEEE (8 бит порядок и 24 бита мантисса). В этом случае в ВУ перед выполнением операции обнуляются восемь младших разрядов входного операнда. Мантисса результата округляется до 23 бит (не включая скрытый бит), а 8 младших разрядов 40-разрядного результата обнуляются, таким образом, формируется 32-разрядное число, которое эквивалентно представлению результата по стандарту IEEE. 2.2 Формат коротких слов с плавающей точкойADSP-2106x поддерживает тип 16-разрядных данных с плавающей точкой и обеспечивает команды преобразования для него.
Формат короткого слова с плавающей точкой имеет 11-разрядную мантиссу и 4-разрядный порядок, плюс знаковый бит.16-разрядное число размещается в 16 младших битах 32-разрядного поля. Две команды устройства сдвига, FPACK и FU PACK, выполняют преобразования (упаковку и распаковку) между 32 - и 16-разрядными словами с плавающей точкой. Команда FPACK преобразует 32-разрядное число с плавающей точкой стандарта IEEE в 16-разрядное число. FU PACK преобразует 16-разрядные числа назад в 32-разрядные. Каждая из этих команд выполняется за один цикл. Формат коротких слов с плавающей точкой поддерживает постепенную потерю значащих разрядов. Когда упаковывается число, которое могло бы потерять значащие разряды, порядок обнуляется, а мантисса (включая &quo ;скрытую&quo ; 1) сдвигается вправо на соответствующую величину. Упакованный результат является ненормализованным и может быть распакован в нормальное число с плавающей точкой стандарта IEEE. 2.3 Исключения при выполнении операций с плавающей точкойУмножитель и ALU информируют об исключении при выполнении операций с плавающей точкой. Они обновляют флаги переполнения, потери значащих разрядов, неправильной операции в регистрах арифметического состояния (AS A ) и &quo ;залипшие&quo ; флаги состояния (S KY). Кроме этого, при потере значащих разрядов, переполнении или неправильной операции эти устройства генерируют маскируемое прерывание. Т.о., существует три способа обработки исключительных ситуаций при операциях с плавающей точкой: Прерывания. Исключительная ситуация обрабатывается сразу же в программе обработки прерывания. Если необходимо обрабатывать исключения по мере их возникновения, то можно использовать этот метод. Регистр AS A . Флаги исключительных ситуаций в регистре AS A , соответствующие определенным арифметическим операциям, проверяются после того, как операция выполнена. Этот метод можно использовать для контроля выполнения определенной операции с плавающей точкой. Регистр S KY. Флаги исключительных ситуаций в регистре S KY проверяются после завершения последовательности операций. Если какой - либо флаг установлен, то это означает, что какие-то из результатов неправильны. Этот метод можно использовать, если обработка исключительной ситуации не критична ко времени. 3. Операции с фиксированной точкойРазрядность числа с фиксированной точкой всегда равна 32; в поле 40-разрядных данных оно занимает 32 старших бита. Форматы представления этих чисел могут быть дробные или целые, беззнаковые или знаковые. Каждое ВУ имеет свои собственные ограничения на то, как эти форматы совмещаются в данной операции. ВУ считывают 32-разрядные операнды из 40-разрядных регистров, игнорируя 8 младших разрядов, и записывают 32-разрядные результаты, обнуляя 8 младших разрядов. 4. ОкруглениеВ процессоре ADSP-2106x поддерживается два режима округления: округление к нулю и округление к ближайшему. Режимы округления соответствуют стандарту IEEE 754, как определено ниже: Округление к нулю. Если результат до округления точно не представить в определенном формате, то он округляется до числа, которое ближе к нулю.
Этот тип определяет, какие операции моно применять к имени (то есть к объекту, на который оно ссылается), и как эти операции интерпретируются. Например: int error number; float real(complex* p); Поскольку error_number описано как int, его можно присваивать, использовать в арифметических выражениях и т.д. Тогда как функция real может вызываться с адресом complex в качестве параметра. Можно взять адрес любого из них. Некоторые имена, вроде int и complex, являются именами типов. Обычно имя типа используется в описании для спецификации другого имени. Единственные отличные от этого действия над именем типа это sizeof (для определения количества памяти, которая требуется для хранения объекта типа) и new (для размещения объекта типа в свободной памяти). Например: main() (* int* p = new int; cout « "sizeof(int) = " «« sizeof(int) «\n; *) Имя типа можно также использовать для задания явного преобразования одного типа в другой, например: float f; char* p; //... long ll = long(p); // преобразует p в long int i = int(f); // преобразует f в int 2.3.1 Основные Типы В С++ есть набор основных типов, которые соответствуют наиболее общим основным единицам памяти компьютера и наиболее общим основным способам их использования: char short int int long int для представления целых различных размеров, float double для представления чисел с плавающей точкой, unsigned char unsigned short int unsigned int unsigned long int для представления беззнаковых целых, логических значений, битовых массивов и т.п
1. Анестезия при операциях на желудке и тонкой кишке
3. Данные, их носители и виды. Операции с данными
4. Операции с числами с плавающей запятой
5. Разработка проекта управления базами данных для процесса "Учет ремонта и ТО автотранспорта"
9. Дания
10. Экономическая система Дании
11. Безработица в России /данные на 1992г/
12. Движение Сопротивления в Дании и Норвегии
13. Особенности проведения банком операций с векселями
14. Международные транспортные операции
16. Кровоточащие и плачущие изображения с точки зрения современного естествознания
17. Судьба и творчество Даниила Хармса
19. Пражская наступательная операция Великой Отечественной войны
20. Были ли в Германии плавающие танки накануне Второй Мировой Войны?
21. Методы компьютерной обработки статистических данных. Проверка однородности двух выборок
25. Оценка методов и средств обеспечения безошибочности передачи данных в сетях
27. Организация и применение микропроцессорных систем обработки данных и управления
28. Сжатие данных
29. Пример базы данных на Delphi 2.0
30. Различные классы баз данных по предметным областям использования
32. База данных для учета оплаты за междугородние разговоры
33. Реляционные Базы Данных. SQL - стандартный язык реляционных баз данных
34. Разработка базы данных `ДЕКАНАТ` в среде программирования "Delphi"
35. База данных "Домашняя библиотека"
36. Работа с Базами данных в Delphi
37. Создание и описание базы данных "СТУДЕНТЫ" (Отчет по курсу "Базы данных")
41. Операции многократной точности (операции с длинными числами)
42. Системы управления базами данных
43. Автоматизированная обработка учета складских операций и реализации продукции
44. Алгоритм создания базы данных складского учета
45. Разработка базы данных для объекта автоматизации: гомеопатическая аптека
46. Разработка приложений на языке VBA в среде MS EXCEL по обработке данных для заданных объектов
47. Обработка данных о студентах
48. Инструкция по эксплуатации базы данных магазина «Телевизоры» средствами Access 2000
49. Системы обработки информации - язык баз данных SQL со средствами поддержания целостности
51. Ввод и редактирование данных в Word
53. Работа в среде EXCEL. Средства управления базами данных в EXCEL
57. Матричные операции в вейвлетном базисе
58. Техника операций при ИБС и перикардитах
60. Общие данные о нервной системе
61. Некоторые проблемы преступности на государственных границах РФ /по данным 1994-95 гг./
65. Миротворческая деятельность Вооруженных Сил РФ. Операции ООН по поддержанию мира
66. Статистическая обработка экспериментальных данных
69. Проект зон ТО-2 и ТР с разработкой слесарно-механического отделения
73. Память с точки зрения психологии и её совершенствование
74. Научная педагогическая деятельность Даниила Борисовича Эльконина
75. Расчет системы сбора и передачи данных
76. Проектирование средств организации каналов передачи данных
77. Учебная практика по специальности "ТО и ремонт РЭА"
78. Способы наглядного представления статических данных
79. Гравитация с точки зрения общей теории поля
80. Кант. Свобода с точки зрения философии Канта
82. Лизинговые операции банков
83. Форфейтинговые операции банков
84. Валютные операции коммерческих банков
85. Кредитные операции коммерческих банков и перспективы их развития
89. Управление ликвидностью коммерческого банка посредством активных операций
94. Фьючерсные операции товарных бирж в России (Доклад)
96. Общая оценка финансового состояния предприятия по данным бухгалтерской и статической отчетности
97. Методика аудиторской проверки операций с основными средствами