Из газеты Body #21, Минск, 05.11.2000 --------------------------[ Coding ]-------------------------- (c) Brom^Еllipse mdm 2383150 --------------------------+ in : HL - исходное число | Не многие знают, что извлечь при- out : BC - результат | близительный корень из любого целого used: HL,DE,BC,IX,A | числа так просто, ну или почти | просто. Метод описаный ниже был при- SQR LD BC,1 | думам еще в начале 80-х. По-научному LD DE,1 | звучит он так: Квадратный корень из XOR A | любого целого числа равен количеству L1 OR A | последовательных четных чисел, SBC HL,DE | которые можно из него вычесть. PUSH HL | Суть метода заключается в том OR A | чтобы вычитать из числа все нечетные SBC HL,DE | числа (начиная с 1) пока результат POP HL | не станет равным нулю, либо пока RET C | уменьшаемое не станет больше вычита- INC DE | емого, количество раз вычитания и INC DE | будет,округлюнный до меньшего, резу- INC BC | льтат. JR L1 | Слева приведена процедура на asm'e --------------------------+ которая явно не является слишком быстрой, но в принципе у меня все работает :)