Domanda

Sto cercando di eseguire operazioni aritmetiche utilizzando solo 16 bit parole firmati. Ho bisogno di essere in grado di eseguire addizioni, moltiplicazioni, ecc.

Per fare un esempio ho bisogno di sottrarre due valori di dati, di seguito è un esempio: 7.269,554688-46,8 o 4385,6616,210938 millions + 32,2

Tuttavia, questi valori devono essere convertiti in parole di 16 bit e quindi la sottrazione, moltiplicazione, o aggiunta può essere effettuata.

Potrei anche usare più parole di 16 bit per memorizzare un valore.

Come potrei fare per operazioni come addizione, sottrazione e moltiplicazione e come vorrei convertire tutti i miei valori di input in modo appropriato in modo che i punti decimali si allineano sempre correttamente?

l'esecuzione
È stato utile?

Soluzione

Quale piattaforma stai codifica per? Per eseguire le operazioni che hai dato a titolo di esempio, si avrebbe bisogno di un'unità in virgola mobile. numeri in virgola mobile sono solitamente rappresentati attraverso 32 bit o 64 bit, raramente 16 bit.

Se non si dispone di uno e tutto quello che hai sei semplici operazioni su interi 16 bit, si potrebbe emulare un'unità in virgola mobile, ma che non è un compito banale.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top