Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КПиЯП(Шпоры).doc
Скачиваний:
20
Добавлен:
11.05.2015
Размер:
294.4 Кб
Скачать

Int 25h ;функция чтения секторов

POP CX ;выталкиваем со стека флаги

POP DS ;восстанавливаем регистры

JNC NO_ERROR ;если нет ошибки, то на продолжение

CMP AH,3 ;проверка возможных ошибок

.

.

NO_ERROR: ;продолжение программы

Если при возврате флаг переноса равен 1, то произошла ошибка и в этом случае AH и AL содержат два отдельных байта статуса ошибки. Если AH = 4, то указанный сектор не найден, а если AH = 2, то диск неверно отформатирован. Если AH = 3, то была попытка записи на дискету, защищенную от записи. Все остальные значения AH говорят об аппаратной ошибке.

1. Архитектура персонального компьютера. Назначение регистров микропроцессора.

2. Структура памяти и методы адресации. Способы адресации данных и переходов.

3. Сегментная организация памяти. Понятия физического и логического адреса.

4. Объявление и инициализация данных.

5. Использование логических и сдвиговых операций.

6. Стандартные директивы определения сегментов.

7. Упрощенные директивы определения сегментов.

8. Организация и использование стека.

9. Структура программ типа .com и .exe.

10. Организация обслуживания прерываний. Типы прерываний. Таблица векторов прерываний.

11. Подпрограммы. Передача параметров. Ближние и дальние процедуры.

12. Повторяющиеся блоки и макросы.

13. Вывод информации на экран. Видеорежимы. Видеопамять

14. Строковые команды. Префиксы повторения.

15. Организация циклов, условных и безусловных переходов

16. Мультимодульные программы.

17. Обработчики прерываний и резидентные программы.

18. Структура резидентной программы.

19. Интерфейс модулей, написанных на языке ассемблера с модулями, написанными на языке С.

20. Вызов из программы, написанной на языке С , процедур, написанных на ассемблере.

21. Вызов из ассемблерной программы функций на языке С.

22. Использование встроенного ассемблера.

23. Написать программу транспонирования матрицы, заданной в кодовом сегменте (в сегменте данных).

24. Найти в строке символ, введенный с клавиатуры, вывести на экран номер его позиции в строке.

25. Умножение длинных чисел. Числа ввести с клавиатуры

26. Обработка переполнения при делении чисел. Числа ввести с клавиатуры

27. Выполнить сортировку символов строки, заданной в кодовом сегменте (в сегменте данных), методом пузырька, выбора. Строку ввести с клавиатуры.

28. Выполнить транспонирование битовой матрицы, используя операции сдвига.

29. Выполнить сортировку элементов главной или побочной диагонали матрицы, заданной в сегменте данных или кода. Матрицу чисел ввести с клавиатуры, результат вывести на экран.

30. Найти суммы элементов четных (нечетных) строк матрицы. Матрицу чисел ввести с клавиатуры, результат вывести на экран.

31. Ввести с клавиатуры массив чисел. Найти в нем минимальное и максимальное значение. Вывести их на экран.

32. В сегменте данных расположены числа в формате двойного слова. С клавиатуры вводится число и определяется, имеется ли это число в сегменте данных.

33. Ввести с клавиатуры массив чисел. Отсортировать массив методом пузырька (выбора и т.д.). Вывести результат.

34. Написать программу вывода символов строки в обратном порядке. Строку ввести с клавиатуры, дополнительных строк не использовать.

35. Ввести с клавиатуры массив чисел. Найти суммы положительных и отрицательных чисел. Вывести результат.

36. Дан массив строк. Найти строку наибольшей длины, вывести ее на экран. Массив строк ввести с клавиатуры.

37. Выполнить перевод числа из одной системы счисления в другую. Данные вводить с клавиатуры.

38. В матрице найти сумму элементов строк, столбцов. Программа типа EXE. Или COM. Матрицу чисел ввести с клавиатуры, результат вывести на экран.

39. Преобразовать строковую запись в число. Строку ввести с клавиатуры, Результат вывести.

40. Отсортировать элементы главной (побочной) диагонали матрицы (строк, столбцов) заданной в сегменте данных (кодовом менте). Матрицу чисел ввести с клавиатуры, результат вывести на экран.

41. Ввести с клавиатуры матрицу чисел. Найти суммы элементов главной и побочной диагоналей и вывести их на экран.

42. Работа с окнами в текстовом режиме.

43. Сложение и вычитание длинных чисел. Числа вводить с клавиатуры, результат вывести на экран.

44. Вывести на экран ASCII символы по 16 в строке. Использовать прямой доступ к видеопамяти.

45. Переслать строку из сегмента данных в сегмент кода (или наоборот). Строку ввести с клавиатуры, результат вывести.

46. Ввести с клавиатуры массив символов, выделить из него числа, найти их сумму

47. Ввести с клавиатуры две строки. Используя процедуру, сравнить строки, результат вывести на экран.

48. В массиве чисел, определенном в сегменте данных, отрицательные значения заменить нулями, а положительные просуммировать.

49. Подсчитать количество четных элементов массивва чисел и найти их сумму. Массив задан в сегменте данных.

50. В массиве чисел, определенном в сегменте данных, подсчитать количество отрицательных, положительных и нулевых элементов.

51. В массиве чисел, определенном в сегменте данных, элементы, кратные пяти, заменить единицами, подсчитать их количество и записать в память.

52. Определить, входит ли в строку, определенную в сегменте данных, подстрока, введенная с клавиатуры. Результат работы программы – текст соответствующего сообщения.

53. Выполнить реверс слов строки, определенной в сегменте данных (кода). Результат вывести.

54. Отсортировать слова в строке (по длине слова, по алфавиту).

55. Удалить из строки заданное слово.

56. Удалить из строки слова, содержащие заданный символ.

57. Удалить из строки слова, являющиеся числами..

58. В массиве подсчитать число элементов, лежащих в заданном диапазоне.

59. Арифметические операции со знаковыми и беззнаковыми числами.

60. Процедуры в ассемблере, передача параметров, возврат значений.

61. Операции с файлами: создание, открытие, закрытие.

62. Операции с файлами: чтение и запись данных.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]