Курсовая работа: Перевод чисел из различных систем счисления
;##########################################################################
; in eax указатель на строку, edx разрядность выходной строки
; out флагошибки
public perevod
push eax
push ebx
push ecx
push edx
pushedi
push esi
mov ebx, eax; записываем в ebx указатель на строку
mov oss, ecx; записываем в oss разрядность выходной строки
xor eax, eax; обнуляем eax
mov al, BYTE PTR [ebx]; записываем в edi длину строки
mov edi, eax; копируем в edi длину строки
cmp edi, 0; если длина строки равна нулю,
je.pustayastroka; то переходим к.pustayastroka
call inputss; определяем входную разрядность, результат в iss
cmp flag, 0; если флаг ошибки не равен нулю,
jne.exitperevod; то переход к.exitperevod
call verinput; переводим символы в массиве в цифры и проверяем правильность ввода
cmp flag, 0; если флаг ошибки не равен нулю,
jne.exitperevod; то переход к.exitperevod
call perepolnenie; проверяем на превышение максимальных значений и производим перевод числа
jmp.exitperevod; переход к.exitperevod
pustayastroka:
mov flag, 1; присваеваем флагу код 1
exitperevod:
cmp flag, 0; если флаг равен нулю