ВМЗ 12 Политех

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » ВМЗ 12 Политех » форум ВМЗ 12 » Ассемблер и Машинно-зависимые языки


Ассемблер и Машинно-зависимые языки

Сообщений 1 страница 7 из 7

1

Все по теме - ТУТ. Кому нужно пособие - рекомендую "Ассемблер. Самоучитель" автор: Крупник. также, есть на торрентах.
А вот к нему файлы ( листинги, компиляторы и FAR)

0

2

Таблица соответствия чисел в различных системах:
http://s2.uploads.ru/t/THPND.jpg
=======================================================
Онлайн перевод чисел тут
=======================================================

Очень понятно о сложении в 16-ричной системе тут или ниже:

Сначала вспомним, как выполняется сложение в традиционной десятичной системе счисления.

Пусть надо сложить два числа: 748 + 254.

Складываем, начиная с самой правой позиции. 8+4 =12. Результат больше 10, поэтому переносим 1 в следующий слева разряд, вычитаем 10 из 12 и записываем в первой позиции 2. Переходим к следующей слева позиции.
Складываем 4 и 5. Получаем 9. Да еще была 1 из предыдущего разряда – всего 10. Результат равен 10. Вычитаем 10 и в данной позиции записываем 0. Переносим 1 в следующий разряд. Переходим к следующей слева позиции.
Складываем 7 и 2. Получаем 9. Да еще была 1 из предыдущего разряда – всего 10. Результат равен 10. Вычитаем 10 и в данной позиции записываем 0. Переносим 1 в следующий разряд. Переходим к следующей слева позиции.
Складывать уже нечего, но был перенос 1 из предыдущего разряда. Записываем окончательный результат: 1002

Теперь попробуем сложить два числа в шестнадцатеричной системе счисления: 2A3C + 7B97. При сложении все время будем смотреть в приведенную выше Таблицу соответствия.

Складываем, начиная с самой правой позиции: С + 7. Вспоминаем, что С – это 12. 12 + 7 = 19. Так как результат больше 16, то переносим 1 в следующий разряд, Потом из 19 вычитаем 16 и получаем 3. Записываем эту цифру в первой справа позиции. Переходим к следующей позиции.
Складываем 3 и 9. И еще 1 из предыдущей позиции. Всего 13. В шестнадцатеричной системе это цифра D. Записываем D в этой позиции. Переноса нет, потому что сумма меньше 16. Переходим к следующей слева позиции.
A + B. 10+11 = 21. Больше 16, поэтому вычитаем 16, переносим 1 в следующий разряд, а тут записываем цифру 5 (21 – 16 =5). Переходим к следующей слева позиции.
2+7+1 = A. Переноса нет. Записываем окончательный результат A5D3
Сложим два двоичных числа 10111 и 11011.
1)    Начинаем справа: 1+1 = 2. Результат равен основанию системы счисления (т.е. 2), поэтому 1 в следующий разряд, а 2-2 =0.
2)    1+1+1(от переноса) = 3. 1 в следующий разряд и 3-2 = 1.
3)    1+0+1(от переноса) =2. 1 в следующий разряд, а 2-2 =0.
4)    0+1+1(от переноса) =2. 1 в следующий разряд, а 2-2 =0.
5)    1+1+1(от переноса) = 3. 1 в следующий разряд и 3-2 = 1.
6)    Складывать уже нечего, но есть 1 от переноса. Пишем эту 1 и получаем окончательный результат: 1100102.

0

3

Кинул на диск  то, что делали сегодня на лабах
Добавлено спустя 2 дня 2 часа 35 минут 15 секунд:
Как делать лабы по Ассемблеру.

1. копируем в корень с: папку dosdisk (присылали на почту всем, лежит на яндекс-диске!)
c:\dosdisk\
2. В папку c:\dosdisk\lab1\  кладем написанный \скопированный ранее файл с кодом *.asm. Впрочем, если такового нет, то там есть шаблонный файл lab.asm.

2. Запускаем VC.COM из папки c:\dosdisk\VC
3. С помощью этого менеджера переходим в папку c:\dosdisk\lab1\     и редактируем  свой файл ( например lab.asm).
Редактирование: F4
Сохранение F2
Закрытие файла F10
Затем сохраняем и закрываем этот файл.
Ставим курсор на   tasm.exe и жмем Ctrl+Enter
Затем ставим курсор на отредактированный файл и жмем Ctrl+Enter
В командной строке менеджера появляется строка: "tasm.exe lab.asm". Жмем Enter.

Если не появляется в этой же папке одноименный файл с расширением *. obj, то жмем Ctrl+o и читаем в какой строке кода у нас ошибка.

Если появился файл *. obj, то:
Ставим курсор на   tlink.exe и жмем Ctrl+Enter
Затем ставим курсор на появившийся файл  *. obj  и жмем Ctrl+Enter
В командной строке менеджера появляется строка: " tlink.exe lab.obj ". Жмем Enter.
Появляется lab.exe. Жмем Enter. Проверяем работает ли.... если нет, то читай с начала.)

Могу кинуть на диск свой файл. Задание: прибавить слово бай к любому введенному. Пример: Пример бай.

Монтаж папки vc, находящейся в корне с: в виде диска с:               mount c c:\vc

0

4

Перечень вопросов к итоговому контролю знаний
по курсу «Машино-ориентированные языки»

1. Типовая архитектура микропроцессорных систем. Понятие процессора, оперативной памяти, внешних устройств, шины данных, шины адреса.
2. Архитектура микропроцессора i8086. Основные регистры микропроцессора и их назначение. Понятие регистров, сегментных регистров, регистра флагов.
3. Группы команд микропроцессора i8086. Назначение команд и их примеры.
4. Понятие программного стека. Особенности организации. Команды и регистры для работы со стеком.
5. Сегментная организация памяти. Понятие сегмента памяти. Формирование физического адреса в реальном режиме микропроцессора.

6. Понятие внешнего устройства. Команды для работы с внешними устройствами.
7. Команды пересылки данных. Особенности команд.
8. Арифметические и логические команды процессора.
9. Команды манипулирования битами. Особенности команд.
10. Команды передачи управления. Организация программных циклов на языке Ассемблер.
11. Команды обработки строк. Особенности итераторов и флага направления.
12. Аппаратные и программные прерывания. Программные прерывания как системные вызовы MS-DOS.
13. Привилегированные команды процессора. Функционирования механизма защиты процессора.  Кольца защиты.
14. Макроподстановки языка Ассемблера. Условное ассемблирование.
15. Этапы создания программы. Компиляция и компоновка программ. Библиотеки компоновки *.lib.
16. Математический сопроцессор (FPU). Формат представления чисел. Регистры FPU. Группы команд математического сопроцессора, примеры.
17. Понятия расширения команд процессоров MMX, AMD3D, SSE
18. Структура программы под Windows. Модель памяти, системные вызовы. Понятие функции окна.

выбираем себе вопросы. Нужно сделать ответы и кинуть на диск
Беру себе 4 и5 вопросы...

0

5

Кароче сделал, что смог. Можно было бы дополнить. 4 вопроса не успел...Кто заинтересован - звоните. ICQ number is 395696897
89275213494

0

6

у меня есть протоколы по 2-м первым лабораторкам с правильными листингами

0

7

korhall написал(а):

у меня есть протоколы по 2-м первым лабораторкам с правильными листингами

В студию! (в смысле на яндекс-диск)))

0


Вы здесь » ВМЗ 12 Политех » форум ВМЗ 12 » Ассемблер и Машинно-зависимые языки