WMmail.ru - сервис почтовых рассылок

воскресенье, 24 июня 2012 г.

RFpro.ru: Ассемблер? Это просто! Учимся программировать

 
Если выпуск не отображается, вы можете прочесть его на сайте Отказаться от рекламы
  
  
Спутниковая сигнализация новейшего поколения. Круглосуточный контроль! Скидки на КАСКО до 80%
  

  Мои подписки      Мои группы      Мои новости     
        Автор 
Калашников О.А.
      
  
Компьютеры и интернет   →   Софт   →   Программирование   →   RFpro.ru: Ассемблер? Это просто! Учимся программировать
  
RFpro.ru: Ассемблер? Это просто! Учимся программировать
 
 

Хостинг портала RFpro.ru:
Московский хостер
Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Лучшие эксперты по данной тематике

Асмик Гаряка
Статус: Советник
Рейтинг: 10968
• повысить рейтинг »
Коцюрбенко Алексей aka Жерар
Статус: Советник
Рейтинг: 4364
• повысить рейтинг »
Boriss
Статус: Академик
Рейтинг: 2261
• повысить рейтинг »

/ КОМПЬЮТЕРЫ И СОФТ / Программирование / Assembler (Ассемблер)

Номер выпуска:1527
Дата выхода:24.06.2012, 19:30
Администратор рассылки:Лысков Игорь Витальевич (Старший модератор)
Подписчиков / экспертов:91 / 34
Вопросов / ответов:1 / 1

Консультация # 186404: Здравствуйте, уважаемые эксперты! Прошу вас ответить на следующий вопрос: Нужна помощь в решении задач по Операционным системам на ассемблере. Задание 1. Записать в двоичном и шестнадцатеричном виде представление в памяти ПК следующих чисел (следует учитывать, что числа размером в слово хранятся в «перевернутом» виде), приведенных ниже

Консультация # 186404:

Здравствуйте, уважаемые эксперты! Прошу вас ответить на следующий вопрос: Нужна помощь в решении задач по Операционным системам на ассемблере.
Задание 1. Записать в двоичном и шестнадцатеричном виде представление в памяти ПК следующих чисел (следует учитывать, что числа размером в слово хранятся в «перевернутом» виде), приведенных ниже

Числа для представления в памяти ПК:

Числа-байты: 21, -6, 188
Числа-слова 21, -6, 288


Задание 4. Изучить особенности сложения и вычитания целых чисел в ПК (беззнаковых и со знаком). Разобраться, для чего служат флаги переноса (CF) и переполнения мантиссы (OF). Изучить команды сложения и вычитания, допустимые типы операндов, устанавливаемые флаги.
Написать фрагмент программы на ассемблере (описание переменных и команды вычислений) в соответствии с указанным вариантом из табл. 5. Подобрать числовые значения таким образом, чтобы команды устанавливали различные флаги условий (OF,CF,ZF,SF); в каждом варианте – по крайней мере 3 различных флага. В комментариях к командам указать получаемые значения флагов.
В заданиях «массив байт» означает массив целых типа байт, а «массив слов» – массив целых типа слово.

Таблица 5:
А – массив из 4 байт. Выполнить сложение двух крайних и двух средних. Найти разность полученных промежуточных сумм. Результат поместить в BH.

Дата отправки: 21.06.2012, 18:52
Вопрос задал: Flawless (Посетитель)
Всего ответов: 1
Страница онлайн-консультации »


Консультирует Лысков Игорь Витальевич (Старший модератор):

Здравствуйте, Flawless!
1)
Числа-байты: 21, -6,188
Числа-слова 21, -6, 288

Числа-байты:
21 = 00010101b = 15h
-6 = 11111010b = 0fah
188 = 10111100b = 0bch
Обратите внимание, что число 188 можно рассматривать только, как беззнаковое число

Числа-слова:
21 = 00010101 00000000b = 1500h
-6 = 11111010 11111111b = 0faffh
288 = 00100000 00000001b = 2001h
Байты в двоичной записи, для наглядности, отделил пробелом

4)

Код :
;Краткая справка по необходимым флагам ;OF — флаг переполнения. Этот флаг устанавливается в 1, если результат предыдущей  ;     арифметической операции над числами со знаком выходит за допустимые для них пределы.  ;     Например, если при сложении двух положительных чисел получается число со старшим битом,  ;     равным единице (то есть отрицательное) и наоборот. ;CF — флаг переноса. Устанавливается в 1, если результат предыдущей операции  ;     не уместился в приемнике и произошел перенос из старшего бита или если  ;     требуется заем (при вычитании), иначе устанавливается в 0.  ;     Например, после сложения слова 0FFFFh и 1, если регистр, в который надо  ;     поместить результат, — слово, в него будет записано 0000h и флаг CF = 1.  ;ZF — флаг нуля. Устанавливается в 1, если результат предыдущей команды — ноль.  ;SF — флаг знака. Этот флаг всегда равен старшему биту результата.   ;А – массив из 4 байт. Выполнить сложение двух крайних и двух средних.  ;Найти разность полученных промежуточных сумм. Результат поместить в BH  S SEGMENT STACK   DW      64 DUP(?) S ENDS D   SEGMENT         ; сегмент данных             ; ДИРЕКТИВЫ ОПИСАНИЯ ДАННЫХ A   DB   0ffh,07fh,7fh,0ffh D    ENDS C       SEGMENT          ASSUME  SS:S,CS:C,DS:D Start   PROC    FAR  ; Выполнение соглашений DOS и настройка регистра DS           PUSH   DS                  SUB   AX,AX               PUSH   AX                  MOV   AX,D    MOV   DS,AX     MOV   BH,A      ; BH = 0ffh    ADD   BH,A+3    ; BH = 0ffh+0ffh = 0feh с переносом             ; O=0, S=1, Z=0, C=1    MOV   AL,A+1    ; AL = 7fh    ADD   AL,A+2    ; AL = 7fh + 7fh = 0feh             ; O=1, S=1, Z=0, C=0    SUB   BH,AL     ; BH = 0feh - 0feh = 0             ; O=0, S=0, Z=1, C=0 ; Возврат в DOS               RET                       Start   ENDP     C   ENDS                        END   Start

Консультировал: Лысков Игорь Витальевич (Старший модератор)
Дата отправки: 21.06.2012, 19:14

5
нет комментария
-----
Дата оценки: 21.06.2012, 20:01

Рейтинг ответа:

НЕ одобряю 0 одобряю!


Оценить выпуск | Задать вопрос экспертам

главная страница  |  стать участником  |  получить консультацию
техническая поддержка  |  восстановить логин/пароль

Дорогой читатель!
Команда портала RFPRO.RU благодарит Вас за то, что Вы пользуетесь нашими услугами. Вы только что прочли очередной выпуск рассылки. Мы старались. Пожалуйста, оцените его. Если совет помог Вам, если Вам понравился ответ, Вы можете поблагодарить автора - для этого в каждом ответе есть специальные ссылки. Вы можете оставить отзыв о работе портале. Нам очень важно знать Ваше мнение. Вы можете поближе познакомиться с жизнью портала, посетив наш форум, почитав журнал, который издают наши эксперты. Если у Вас есть желание помочь людям, поделиться своими знаниями, Вы можете зарегистрироваться экспертом. Заходите - у нас интересно!
МЫ РАБОТАЕМ ДЛЯ ВАС!


 
 
Комментировать выпуск
     В избранное

Прошлые выпуски
RFpro.ru: Ассемблер? Это просто! Учимся программировать    23 июня 2012, 15:32
RFpro.ru: Ассемблер? Это просто! Учимся программировать    22 июня 2012, 15:02
RFpro.ru: Ассемблер? Это просто! Учимся программировать    21 июня 2012, 14:33

Все выпуски рассылки

25 июня 2012 отмечают:
День дружбы и единения славян
День моряка
День таможенной службы Украины
День государственности Словении
День Аугсбургского вероисповедания
Уимблдонский теннисный турнир

Именины: Андрей, Анна, Арсений, Иван, Мария, Петр, Степан, Тимофей, Юлиан
 
 

Subscribe рекомендует
 
Компьютеры и интернет  →   рассылки   и   группы
  
Отношения между мужчиной и женщиной
Группа об отношениях между мужчиной и женщиной. Для того, чтобы лучше понять мужчину, нужно узнать его психологию, знать о чём он говорит и что на самом деле имеет ввиду.
Темы: 17229   Участники: 11748
  Русские на Украине-взгляд на Россию!
Пишем обо всем: когда и как оказались вне России, проблемные семейные, религиозные, политические, денежные, любовные... За Россией наблюдаем, сопереживаем, любим, радуемся, осуждаем..... Хотим быть вместе...
Темы: 76   Участники: 745
  Здоровое и правильное питание
В Группе обсуждаются вопросы правильного и здорового питания. Здоровый образ жизни. Раздельное питание. Вегетарианство. Сыроедение. Пожалуйста, не разме...
Темы: 3182   Участники: 14422
 
 
 
Подписан адрес: admin10383.deep@blogger.com
Код этой рассылки: comp.prog.assembler
Архив рассылки
Отписаться:  На сайте  Почтой
Поддержка подписчиков
Убрать рекламу
Другие рассылки этой тематики
Другие рассылки этого автора
 
Рассылка производится: Subscribe.Ru / ЗАО «Интернет-Проекты» / О компании / Политика конфиденциальности

Комментариев нет:

Отправить комментарий