Шпаргалка по "ЭВМ"

Автор работы: Пользователь скрыл имя, 20 Марта 2012 в 19:10, шпаргалка

Описание

Работа содержит 50 ответов на вопросы по дисциплине "ЭВМ"

Содержание

1. Команды RET и CALL.

2. Команды ввода и вывода.

3. Команды цикла.

4. Логические команды.

5. Команды сравнения и перехода.

6. Метки.

7. Команды POP и PUSH.

8. Оборудование для сетей и способы их подключения.

9. Арифметические команды.

10. Вывод символов.

11. Вывод чисел.

12. Директивы.

13. Команды XOR, OR.

14. Основные архитектуры сетей ЭВМ.

15. Команда NEG, её свойства аналог. команды.

16. Оценка производительности ЭВМ.

17. Команды JMP и JXX.

18. Подпрограммы.

19. Команды INT 21h.

20. Протокол передачи FTP.

21. Команды INT 16h.

22. Протоколы передачи SMTP.

23. Команды INT 10h.

24. Протокол передачи TCP/IP.

25. Команды INC и ADD, ADC.

26. Работа с графикой.

27. Команды DEC и SUB, SBB.

28. Работа с массивом.

29. Команды AND, NOT.

30. Работа со стеком.

31. Команды LEA, XLAT.

32. Разработка и отладка программ на языке Ассемблера.

33. Команды TEST и CMP.

34. Регистры.

35. Команды PUSH и POP.

36. Регистры назначения.

37. Команды MUL, IMUL.

38. Сегментные регистры.

39. Команды сдвига.

40. Сегменты.

41. Команды MOV, PTR.

42. Сети ЭВМ и протоколы передачи данных.

43. Прерывания и их использование.

44. Флаги.

45. Типы данных.

46. Условные и безусловные переходы.

47. Команда DIV, IDIV.

48. Сравнения с флагами.

49. Команда ADD, XCHG.

50. Условные переходы с использованием флагов.

Работа состоит из  1 файл

ЭВМ.doc

— 132.50 Кб (Скачать документ)


 

1. Команды RET и CALL.

2. Команды ввода и вывода.

3. Команды цикла.

4. Логические команды.

5. Команды сравнения и перехода.

6. Метки.

7. Команды POP и PUSH.

8. Оборудование для сетей и способы их подключения.

9. Арифметические команды.

10. Вывод символов.

11. Вывод чисел.

12. Директивы.

13. Команды XOR, OR.

14. Основные архитектуры сетей ЭВМ.

15. Команда NEG, её свойства аналог. команды.

16. Оценка производительности ЭВМ.

17. Команды JMP и JXX.

18. Подпрограммы.

19. Команды INT 21h.

20. Протокол передачи FTP.

21. Команды INT 16h.

22. Протоколы передачи SMTP.

23. Команды INT 10h.

24. Протокол передачи TCP/IP.

25. Команды INC и ADD, ADC.

26. Работа с графикой.

27. Команды DEC и SUB, SBB.

28. Работа с массивом.

29. Команды AND, NOT.

30. Работа со стеком.

31. Команды LEA, XLAT.

32. Разработка и отладка программ на языке Ассемблера.

33. Команды TEST и CMP.

34. Регистры.

35. Команды PUSH и POP.

36. Регистры назначения.

37. Команды MUL, IMUL.

38. Сегментные регистры.

39. Команды сдвига.

40. Сегменты.

41. Команды MOV, PTR.

42. Сети ЭВМ и протоколы передачи данных.

43. Прерывания и их использование.

44. Флаги.

45. Типы данных.

46. Условные и безусловные переходы.

47. Команда DIV, IDIV.

48. Сравнения с флагами.

49. Команда ADD, XCHG.

50. Условные переходы с использованием флагов.

 

 

 

 

1. Команды RET и CALL.

Вызов подпрограмм возврат из них - CALL, RET. Команда call передает управление ближней или дальней процедуре с запоминанием в стеке адреса точки возврата. Команда ret возвращает управление из процедуры вызывающей программе, адрес возврата получает из стека. Пример:

..code..

call 0455659

..more code..

Код с адреса 455659:

add eax, 500

mul eax, edx

ret

Когда выполняется команда call, процессор передает управление на код с адреса 455659, и выполняет его до команды ret, а затем возвращает управление команде следующей за call. Код который вызывается командой call называется процедурой. Вы можете поместить код, который вы часто используете в процедуру и каждый раз когда он вам нужен вызывать его командой call.

Подробнее: команда call помещает регистр EIP (указатель на следующюю команду, которая должна быть выполнена) в стек, а команда ret извлекает его и передаёт управление этому адресу.

 

2. Команды ввода и вывода.

in <аккумулятор>,<номер_порта> — ввод в аккумулятор из порта с номером <номер_порта>;
out <номер_порта>,<аккумулятор> — вывод содержимого аккумулятора в порт с номером <номер_порта>.

 

3. Команды цикла.

Команды управления циклом:
организации цикла со счетчиком ЕСХ/СХ;
организации цикла со счетчиком ЕСХ/СХ с возможностью досрочного выхода из цикла по дополнительному условию.

 

4. Логические команды.

В системе команд микропроцессора есть следующий набор команд, поддержива­ющих работу с логическими данными:

and операнд_1, операнд_2 — операция логического умножения. Команда выполняет поразрядно логическую операцию И {конъюнкцию) над битами операндов операнд1 и  операнд_2. Результат записывается на место опвранд_1.

or операнд_1,операнд_2 — операция логического сложения. Команда выполняет поразрядно логическую операцию ИЛИ (дизъюнкцию) над битами операндов операнд_1 и операнд_2. Результат записывается на место операнд_1.

хоr операнд_1, операнд_2 — операция логического исключающего сложения. Коман­да выполняет поразрядно логическую операцию исключающего ИЛИ над битами операндов операнд_1 и опвранд_2. Результат записывается на место операнд_1.

test операнд_1,операнд_2 — операция «проверить» (способом логического умножения). Команда выполняет поразрядно логическую операцию И над би­тами операндов операнд_1 и операнд_2. Состояние операндов остается прежним, изменяются только флаги zf, sf, и pf, что дает возможность анализировать состояние отдельных битов операнда без изменения их состояния.

not операнд — операция логического отрицания. Команда выполняет по­разрядное инвертирование (замену значения на обратное) каждого бита опе­ранда. Результат записывается на место операнда.

 

5. Команды сравнения и перехода.

cmp, она позволяет сравнивать два операнда, которыми могут быть регистр и число, регистр и регистр, регистр и память. Если значения совпадают флаг нуля (см.флаги) устанавливается в единицу (или просто устанавливается). Если значения больше или меньше друг друга, то тут уже реагирует флаг переноса (переполнения). Кроме того флаг знака постоянно следит за тем положительное ли число сравнивается или отрицательное.

В качестве инструкции перехода используется JMP.

 

6. Метки.

Метки в ассемблере определяются также, как в Паскале: перед оператором записывается идентификатор метки и двоеточие. Как и в Паскале, метки в ассемблере должны описываться в объявлении label того блока, который содержит оператор asm. Однако из этого правила есть одно исключение. Это локальные метки.

Локальные метки - это метки, которые начинаются с символа @. Поскольку этот символ не может быть частью идентификатора Паскаля, такие локальные метки автоматически ограничиваются использованием их в операторах asm. Локальная метка известна только в определяющем ее операторе asm (то есть область действия локальной метки начинается от ключевого слова asm и заканчивается ключевым словом end оператора asm, который ее содержит).

В отличие от обычной метки, локальную метку перед ее использованием не требуется описывать в объявлении label.

Идентификатор локальной метки состоит из символа @, за которым следует одна или более букв (A..Z) цифр (0..9) символов подчеркивания или символов @. Как и все метки, идентификатор завершается двоеточием.

 

7. Команды POP и PUSH.

Есть две команды, для размещения значения в стеке и извлечения его из стека: PUSH и POP. Команда PUSH размещает значение в стеке, т.е. помещает значение в ячейку памяти, на которую указывает регистр ESP, после этого значение регистра ESP увеличивается на 4. Команда Pop извлекает значение из стека, т.е. извлекает значение из ячейки памяти, на которую указывает регистр ESP, после этого уменьшает значение регистра ESP на 4. Значение, помещенное в стек последним, извлекается первым. При помещении значения в стек, указатель стека уменьшается, а при извлечении - увеличивается.

 

8. Оборудование для сетей и способы их подключения.

 

9. Арифметические команды.

Программирование арифметических выражений в языке Ассемблер происходит через некоторые команды такие, как:  mul, div, sub, add. Эти команды называются командами арифметических операций.

Mul – команда умножения. Она умножает регистр ax на то, что стоит после нее. Результат заносится в ax.
Div – команда деления. Она делит регистр ax на то, что стоит после нее. Результат заносится в ax.
Add – команда сложения. Слаживает два числа. Результат заносится в первый регистр.
Sub – команда вычитания. Вычитает два числа. Результат заносится в первый регистр.

 

10. Вывод символов.

 

11. Вывод чисел.

 

 

 

12. Директивы.

Директивы являются указаниями Ассемблеру о том, как проводить ассемблирование. Директив м.б. великое множество.

 

13. Команды XOR, OR.

Логические операции с битами - OR, XOR. Эти команды работают с приемником и источником, исключение команда 'NOT'. Каждый бит в приемнике сравнивается с тем же самым битом в источнике, и в зависимости от команды, 0 или 1 помещается в бит приемника: OR (логическое ИЛИ) устанавливает бит результата в 1, если один из битов, бит источника или бит приемника установлен в 1.
XOR (НЕ ИЛИ) устанавливает бит результата в 1, если бит источника отличается от бита приемника.

 

14. Основные архитектуры сетей ЭВМ.

 

15. Команда NEG, её свойства аналог. команды.

 

16. Оценка производительности ЭВМ.

http://bk0010.narod.ru/docs/BK_Magazine/199301/015.htm

 

17. Команды JMP и JXX.

    Разберем действие этой команды на конкретном примере. В программе, расположенной ниже, регистры AX, BX, CX получают значение 1. Затем в цикле выполняются следующие операции:

к значению регистра AX прибавляется 1;

к значению регистра AX прибавляется содержимое регистра BX;

удваивается значение в регистре CX.

    Многократное повторение этих команд приводит к увеличению содержимого регистров AX - на 1; BX - на величину, находящуюся в регистре AX; CX - в 2 раза. Повторяющиеся команды начинаются с метки A20. Переход на эту метку осуществляется при выполнении команды JMP A20. Так как здесь не предусмотрен выход из повторения, то программа будет выполняться бесконечно.

Семейство команд условного перехода Jxx проверяют условие xx и, если оно истинно, совершают прыжок по указанному адресу. Например, JE прыгает, если числа равны (Jump if Equal), а JNE если неравны (Jump if Not Equal). JB/JA работают с беззнаковыми числами, а с JL/JG - со знаковыми. Любы два не противоречащих друг другу условия могут быть скомбинированы друг с другом, например: JBE - переход, если одно беззнаковое число меньше другого или равно ему.

 

18. Подпрограммы.

 

19. Команды INT 21h.

int 21h - прерывание 21h (читается двадцать первое прерывание)

 

20. Протокол передачи FTP.

FTP это еще одно широко используемое приложение. Оно является стандартом Internet для передачи файлов. Необходимо различать передачу файлов, именно то, что предоставляет FTP, и доступ к файлам, что предоставляется такими приложениями как NFS. Передача файлов заключается в копировании целого файла из одной системы в другую. Чтобы использовать FTP, необходимо иметь открытый бюджет на сервере, или можно воспользоваться так называемым анонимным FTP (anonymous FTP).

FTP отличается от других приложений тем, что он использует два TCP соединения для передачи файла.

Управляющее соединение устанавливается как обычное соединение клиент-сервер. Сервер осуществляет пассивное открытие на заранее известный порт FTP (21) и ожидает запроса на соединение от клиента. Клиент осуществляет активное открытие на TCP порт 21, чтобы установить управляющее соединение. Управляющее соединение существует все время, пока клиент общается с сервером. Это соединение используется для передачи команд от клиента к серверу и для передачи откликов от сервера. Тип IP сервиса для управляющего соединения устанавливается для получения "минимальной задержки", так как команды обычно вводятся пользователем (рисунок 3.2).

Соединение данных открывается каждый раз, когда осуществляется передача файла между клиентом и сервером. (Оно также открывается и в другие моменты, как мы увидим позже.) Тип сервиса IP для соединения данных должен быть "максимальная пропускная способность", так как это соединение используется для передачи файлов.

 

21. Команды INT 16h.

int 16h - ожидает нажатия клавиши и читает символ (ход программы выполнения приостанавливается пока не будет нажата клавиша)
Выход:
AH = скан код
AL = ASCII-код или 0 при нажатии специальной функциональной клавиши.

 

22. Протоколы передачи SMTP.

Для передачи сообщений по TCP-соединению большинство МТА пользуются протоколом SMTP. Сообщения форматированы по правилам виртуального сетевого терминала (NVT), то есть в NVT ASCII. NVT подобен виртуальному сетевому протоколу и нужен затем, чтобы скрыть различия в восприятии разными компьютерами разных символов, например переводов каретки, переводов строки, маркеров конца строки, очистки экрана и т. д. Символ в NVT состоит из семи битов набора ASCII и является буквой, цифрой или знаком пунктуации. Семи битный набор ASCII часто называется NVT ASCII.

 

23. Команды INT 10h.

Прерывание INT 10H обеспечивает управление всем экраном. В регистре AH устанавливается код, определяющий функцию прерывания. Команда cохраняет содержимое регитров BX, CX, DX, SI и BP. Ниже описывается все возможные функции.

AH=00: Установка режима. Данная функция позволяет пере ключать цветной монитор в текстовый или графический режим. Установка pежима для выполняемой в текущий момент программы осуществляется c помощью INT 10H. При установке происходит очистка экрана.

 

24. Протокол передачи TCP/IP.

Протокол управления передачей TCP (Transmission Control Protocol) является протоколом транспортного уровня и базируется на возможностях, предоставляемых межсетевым протоколом IP. Основная задача TCP - обеспечение надежной передачи данных в сети. Его транспортный адрес в заголовке IP-сегмента равен 6.

 

25. Команды INC и ADD, ADC.

арифметические операции ADD, ADC, INC

(INCrement operand by 1) Увеличить операнд на 1 

Схема команды: 

inc операнд 

Назначение: увеличение значения операнда в памяти или регистре на 1.

Алгоритм работы: команда увеличивает операнд на единицу.

(ADDition) Сложение

Схема команды:

add приемник,источник

Назначение: сложение двух операндов источник и приемник размерностью байт, слово или двойное слово.

Алгоритм работы: сложить операнды источник и приемник; записать результат сложения в приемник; установить флаги.

 

(Addition with Carry) Сложение с переносом

Схема команды:

adc приемник,источник

Назначение: сложение двух операндов с учетом переноса из младшего разряда.

Алгоритм работы: сложить два операнда; поместить результат в первый операнд: приемник=приемник+источник; в зависимости от результата установить флаги.

 

26. Работа с графикой.

 

27. Команды DEC и SUB, SBB.

арифметические операции SUB ,  SBB ,  DEC 

(SUBtract) Вычитание

 Схема команды: 

sub операнд_1,операнд_2 

Назначение: целочисленное вычитание.

Алгоритм работы: выполнить вычитание операнд_1=операнд_2-операнд_1; установить флаги.

(DECrement operand by 1) Уменьшение операнда на единицу

Схема команды: 

dec операнд 

Назначение: уменьшение значения операнда в памяти или регистре на 1.

Информация о работе Шпаргалка по "ЭВМ"