/ / Arytmetyka z 16-bitowymi słowami podpisanymi - matematyka, mnożenie, dodawanie, odejmowanie, 16-bit

Arytmetyka z 16-bitowymi słowami podpisanymi - matematyka, mnożenie, dodawanie, odejmowanie, 16-bit

Próbuję wykonać arytmetykę za pomocą tylko 16-bitowych słów sygnowanych. Muszę umieć dodawać, mnożyć itp.

Jako przykład muszę odjąć dwie wartości danych, poniżej przykład: 7269.554688-46.8 lub 4385.6616210938 + 32,2

Jednak te wartości muszą zostać przekonwertowane na 16-bitowe słowa, a następnie można wykonać odejmowanie, mnożenie lub dodawanie.

Mogłabym również użyć wielu 16-bitowych słów do przechowywania jednej wartości.

Jak chciałbym wykonywać operacje, takie jakdodawanie, odejmowanie i mnożenie, i w jaki sposób przekonwertować wszystkie moje wartości wejściowe odpowiednio, aby punkty dziesiętne zawsze były poprawnie ustawione?

Odpowiedzi:

1 dla odpowiedzi № 1

Na jakiej platformie kodujesz? Aby wykonać operacje, które podałeś jako przykład, potrzebujesz jednostki zmiennoprzecinkowej Numery zmiennoprzecinkowe są zwykle reprezentowane przez 32-bitowe lub 64-bitowe, rzadko 16-bitowe.

Jeśli nie masz jednego i wszystkie masz proste operacje na 16-bitowych liczbach całkowitych, możesz emulować jednostkę zmiennoprzecinkową, ale to nie jest trywialne zadanie.