Курсовая работа: Перевод чисел из различных систем счисления
jne.hexver; то переход к.hexver
jmp.exitverinput; иначе переход к.exitverinput
null:
mov flag, 4; присваеваем flag код ошибки 4
exitverinput:
pop eax
pop edi
ret
verinput endp
;#########################################################################
; in iss входная разрядность, ebx указатель на строку, edi длина строки, oss выходная; разрядность
; out
perepolnenie proc; проверка превышения максимальных значений и окончание перевода
public perevod
push edi ; сохраняемedi встеке
xor ecx, ecx ; очищаемрегистры
xor edx, edx;
xor esi, esi;
xor eax, eax;
point1:
mov cl, BYTE ptr [ebx+esi+1]; пересылаембайтподномером esi в cl
add eax, ecx ; прибавляем его к eax
inc esi ; инкрементируем esi
cmp edi, esi; если esi равен edi,
je.point2 ; то переходим к.point2
mul iss ; умножаем eax на основание входной системы
jmp.point1; переходк.point1
point2:
cmp edx, 0 ; если старшее слово произведения не равно нулю,