Курсовая работа: Перевод чисел из различных систем счисления

cmp eax, 7fffffffh; если eax больше 7fffffffh,

ja.errmax ; то переход к.errmax

mov ecx, oss; посылаем в ecx основание выходной системы

xor esi, esi; очищаем esi

point3:

xor edx, edx ; очищаем edx (остаток от деления)

div ecx ; делим eax на ecx

mov BYTE ptr str[esi], dl; пересылаем остаток от деления в массив str

inc esi ; инкрементируем esi

cmp eax, 0; если частное не равно нулю,

jne.point3; то переходим к.point3

mov edx, esi ; сохраняем esi (количество элементов нового массива в edx)

xor esi, esi ; очищаем esi

mov BYTE ptr [ebx], dl; сохраняем в память длинну массива

point4:

mov al, BYTE ptr str [edx-1]; сохраняем символ из str в al (начиная с конца)

mov BYTE ptr [ebx+esi+1], al ; сохраняем его в исходном массиве

dec edx ; уменьшаем edx на 1

inc esi ; увеличиваем esi на 1

cmp edx, 0 ; если edx не равен нулю

jne.point4 ; то переходим к.point4

mov dl, BYTE ptr [ebx]; копируем в dl длинну массива

mov edi, edx; копируем в edi длину массива

point5:

cmp BYTE ptr [ebx+edi], 9; если элемент массива больше 9

ja.point6; то переходим к.point6

add BYTE ptr [ebx+edi], 30h; иначе прибавляем 30h

jmp.point7; переходк.point7

point6:

К-во Просмотров: 900
Бесплатно скачать Курсовая работа: Перевод чисел из различных систем счисления