Сложение чисел
Модератор: Andy
-
- Сообщения: 340
- Зарегистрирован: 22 ноя 2004, 19:15
- Откуда: Минск
- Контактная информация:
Как сделать программу для суммирования 16-разрядных чисел в bcd формате??
Просто набрать исходники может и любая обезьяна, а придумать и отладить не каждый человек.
...
fild word ptr YourNumber1
fiadd word ptr YourNumber2
fbstp tbyte ptr BCDResult
...
Самый старший бит в 10-байтовом значении - знаковый, остальные 9 байт - 18 цифр числа. Если число на стеке было не целое, то оно округлятся в соответствии с управляющим словом FPU.
fild word ptr YourNumber1
fiadd word ptr YourNumber2
fbstp tbyte ptr BCDResult
...
Самый старший бит в 10-байтовом значении - знаковый, остальные 9 байт - 18 цифр числа. Если число на стеке было не целое, то оно округлятся в соответствии с управляющим словом FPU.
It's a long way to the top if you wanna rock'n'roll
Если YourNumber1 и YourNumber2 уже должны быть в BCD формате, то рекомендуеться использовать для них TBYTE, просто остальные 7*8=56 разрядов обнулить, дабы соответствовали условиям задачи (16 разрядные BCD), и тогда :
fbld tbyte ptr YourNumber1
fbld tbyte ptr YourNumber2
fadd
fbstp tbyte ptr BCDResult
fbld tbyte ptr YourNumber1
fbld tbyte ptr YourNumber2
fadd
fbstp tbyte ptr BCDResult
It's a long way to the top if you wanna rock'n'roll