Главная » Просмотр файлов » assembler. Учебник для вузов_Юров В.И_2003 -637с

assembler. Учебник для вузов_Юров В.И_2003 -637с (862834), страница 17

Файл №862834 assembler. Учебник для вузов_Юров В.И_2003 -637с (Юров В.И - Assembler. Учебник для вузов. 2003) 17 страницаassembler. Учебник для вузов_Юров В.И_2003 -637с (862834) страница 172021-12-22СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 17)

Непозиционные системы счисления появились раньше позиционных. Онихарактеризуются тем, что в них символы, обозначающие то или иное число (тоесть цифры), не меняют своего значения в зависимости от местоположения в записи этого числа. Классическим примером такой системы счисления является римская. В ней для записи чисел используются буквы латинского алфавита. При этомбуква I означает единицу, V — пять, X — десять, L — пятьдесят, С — сто, D — пятьсот, М — тысячу.

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

Например:Двоичная система счисления75DLXXVII = 500 + 50 + 10 + 10 + 5 + 1 + 1 = 577.Другой пример:CDXXIX = 500 - 100 + 10 + 10 - 1 + 10 = 429.В позиционной системе счисления количество символов в наборе равно основанию системы счисления. Место каждой цифры в числе называется позицией.Номер позиции символа (за вычетом единицы) в числе называется разрядом.

Разряд 0 называется младшим разрядом. Каждой цифре соответствует определенныйколичественный эквивалент. Введем обозначение — запись А^,) будет означать количественный эквивалент числа А, состоящего из п цифр ak (где k = 0, ..., п - 1)в системе счисления с основанием р. Это число можно представить в виде последовательности цифр:A w - an_tan_2... аруПри этом, конечно, всегда выполняется неравенство ak < р.В общем случае количественный эквивалент некоторого положительного числа А в позиционной системе счисления можно представить выражением:А=(Р)«„-i -Р"'1 + а^'Р"~2 + ~- + al-pl + a0-pa,(4.1)где р — основание системы счисления (некоторое целое положительное число),а — цифра данной системы счисления, п — номер старшего разряда числа.Для получения количественного эквивалента числа в некоторой позиционнойсистеме счисления необходимо сложить произведения количественных значенийцифр на степени основания, показатели которых равны номерам разрядов (обратите внимание на то, что нумерация разрядов начинается с нуля).После такого формального введения можно приступить к обсуждению некоторых позиционных систем счисления, наиболее часто используемых при разработке программ на ассемблере.Двоичная система счисленияНабор цифр для двоичной системы счисления — {0,1}, основание степени (р) — 2.Количественный эквивалент некоторого целого n-значного двоичного числавычисляется согласно формуле (4.1):А(2) - «„-1' 2"-' + в я _ 2 ' 2-> +..- + v 2' + V 2°.(4-2)Как мы уже отмечали, наличие этой системы счисления обусловлено тем, чтокомпьютер построен на логических схемах, имеющих в своем элементарном видетолько два состояния — включено и выключено.

Производить счет в двоичной системе просто для компьютера, но сложно для человека. Например, рассмотримдвоичное число 10100111.Вычислим десятичный эквивалент этого двоичного числа. Согласно формуле(4.2), это будет величина, равная следующей сумме:1 • Т + 0 • 26 + 1 • 25 + 0 • 24 + 0 • 23 + 1 • 22 + 1 • 21 + 1 • 2°.Посчитайте сами, сколько получится.Сложение и вычитание двоичных чисел (рис. 4.1) выполняется так же, как и вдругих позиционных системах счисления, например десятичной.

Точно так жевыполняется заем (перенос) единицы из старшего разряда (в старший разряд).76Глава 4. Системы счисления11111111100110111100101011 11заем1101001001100111011011переносf110011000010010111000Рис. 4.1. Сложение и-вычитание двоичных чиселПриведем степени двойки (табл. 4.1).Таблица 4.1. Степени двойкиСтепень1Два в указанной степени22434853267648925651216128101024112048124096Шестнадцатеричная система счисленияШестнадцатеричная система счисления имеет набор цифр {0,1, 2,..., 9, А, В, С, D,Е, F} и основание степени (р) — 16.Количественный эквивалент некоторого целого «-значного шестнадцатеричногочисла вычисляется согласно формуле (4.1):А(,6) ° «,-, '16"~'+°п -2 '162"~ +•" + «, '16' + «О '16°-К примеру, количественный эквивалент шестнадцатеричного числа f45ed23cравен:76543215 • 16 + 4 • 16 + 5 • 16 + 14 • 16 + 13 • 16 + 2 • 16 + 3 • 16' + 12 • 16°.Посчитайте сами, сколько получится.

Приведем соответствие двоичных чисели их десятичных и шестнадцатеричных эквивалентов (табл. 4.2).Таблица 4.2. Шестнадцатеричные цифрыДесятичное числоДвоичная тетрада000001000120010Шестнадцатеричное число0Г12Десятичная система счисленияДесятичное числоДвоичная тетрадаШестнадцатеричное число3ООП34010045010156оно6701117810008910019101010А, а111011В,Ь121100С, с131101D,d141110Е,е151111F,f16100001077Поначалу запомнить эти соотношения сложно, поэтому полезно иметь под руками некоторую справочную информацию. Табл.

4.2 содержит представлениядесятичных чисел из диапазона 0-16 в двоичной и шестнадцатеричной системахсчисления. Ее удобно использовать для взаимного преобразования чисел в рассматриваемых нами трех системах счисления. Шестнадцатеричная система счисления при вычислениях несколько сложнее, чем двоичная, в частности, в том, чтокасается правил переносов в старшие разряды (заемов из старших разрядов). Главное здесь — помнить следующее равенство:<1 + F-10) 16 .Эти переходы очень важны при выполнении сложения и вычитания шестнадцатеричных чисел (рис. 4.2).11переносЕ F 1 5 1 слагаемоенС 1 Е 8 2 слагаемое1 В0FDрезультат11BCD85EF4заемуменьшаемоевычитаемое5DE4результатРис.

4.2. Сложение и вычитание шестнадцатеричных чиселДесятичная система счисленияДесятичная система счисления наиболее известна, так как она постоянно используется нами в повседневной жизни. Данная система счисления имеет набор цифр{О, 1, 2, 3,4, 5, 6, 7, 8, 9} и основание степени (р) - 10.Количественный эквивалент некоторого целого и-значного десятичного числавычисляется согласно формуле (4.1):78Глава 4. Системы счисленияА1ао> - «_, ' Ю- + ай_2 • 10-' + ...

+ GI • 10' + а0 • 10°.К примеру, значение числа А (|0) = 4523 равно:Перевод чисел из одной системысчисления в другуюОдного знания о существовании разных систем счисления мало. Для того чтобыв полной мере использовать их в своей практической работе при программировании на ассемблере, необходимо научиться выполнять взаимное преобразованиечисел между тремя системами счисления. Этим мы и займемся в дальнейшем. Кроме того, дополнительно будут рассмотрены некоторые особенности процессоровIntel при работе с числами со знаком.Перевод в десятичную систему счисленияПеревод в десятичную систему счисления является самым простым.

Обычно егопроизводят с помощью так называемого алгоритма замещения, суть которого заключается в следующем: сначала в десятичную систему счисления переводится основание степени р, а затем — цифры исходного числа. Результаты подставляютсяв формулу (4.1).

Полученная сумма и будет искомым результатом. Неявно приобсуждении двоичной и шестнадцатеричной систем счисления мы производиликак раз такое преобразование.Перевод в двоичную систему счисленияПеревод из десятичной системы счисленияПеревод числа в двоичную систему счисления из десятичной выполняется по описанному далее алгоритму.1.

Разделить десятичное число А на 2. Запомнить частное q и остаток а.2. Если в результате шага 1 частное q не равно 0, то принять его за новое делимоеи отметить остаток а, который будет очередной значащей цифрой числа, и вернуться к шагу 1, на котором в качестве делимого (десятичного числа) участвуетполученное на шаге 2 частное.3. Если в результате шага 1 частное q равно 0, алгоритм прекращается. Выписатьостатки в порядке, обратном их получению. Получится двоичный эквивалентисходного числа.К примеру, перевод в двоичную систему счисления числа 247)0 иллюстрируетрис. 4.3. Порядок обхода остатков для получения результата (111101112) показанстрелками.Перевод из шестнадцатеричной системы счисленияПеревод из шестнадцатеричной системы счисления мы уже обсуждали ранее. Сутьего заключается в последовательной замене шестнадцатеричных цифр соответствующими двоичными тетрадами, согласно табл.

4.2. К примеру, двоичное ч[исло, соответствующее числу e4d516, равно 1110 0100 1 101 01012.Перевод чисел из одной системы счисления в другую79Рис. 4.3. Перевод в двоичную систему счисленияПеревод в шестнадцатеричнуюсистему счисленияПеревод из десятичной системы счисленияОбщая идея алгоритма перевода из десятичной системы счисления в шестнадцатеричную аналогична рассмотренной ранее в алгоритме перевода в двоичную систему счисления из десятичной.1. Разделить десятичное число А на 16. Запомнить частное q и остаток а.2. Если в результате шага 1 частное q не равно 0, то принять его за новое делимое,записать остаток и вернуться к шагу 1.3.

Если частное q равно 0, прекратить работу алгоритма. Выписать остатки в порядке, обратном их получению. Получится шестнадцатеричный эквивалентисходного десятичного числа.К примеру, перевод в шестнадцатеричную систему счисления числа 32 767шиллюстрирует рис. 4.4. Порядок обхода остатков для получения результата (7fff 16 )показан стрелками.'<D(2}Рис. 4.4.

Характеристики

Тип файла
PDF-файл
Размер
14,34 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6381
Авторов
на СтудИзбе
308
Средний доход
с одного платного файла
Обучение Подробнее