Курсовая работа: Ассемблер 2
call CalcCRC
mov Result,AX ;Сохранение результата
;*******************************
Mnu2: cmp AL,2 ;Определить чётность и сравнить с пред.
jne Mnu3
mov DX,OFFSET TestTab ;Смещение начала массива
mov BX,30 ;Размер блока данных
call CalcCRC
cmp Result,AX
je Mnu2End
;Результат не совпал. Данные искажены. Выдать сообщение об ошибке
mov DX,OFFSET ErrorResult
mov AH,9h
int 21h ;Вывод сообщения об ошибке
mov DX,OFFSET ByeStr ;Вывод приглашения
mov AH,9h
int 21h
mov AH,0Ch
mov AL,01h
int 21h ;Ожидание нажатия любой клавиши
Mnu2End:
call cls
jmp Mnu
;*******************************
Mnu3: cmp AL,3 ;Искажение масива (первый байт)
jne Mnu4
mov DI,OFFSET TestTab
mov AX,ES:[DI]
xor AX,1 ;Инвертируем младший бит