Recentemente ho dovuto fare un test di codifica. La domanda in sé era abbastanza facile. prendi una stringa di numeri e +, * fai un ciclo attraverso di essa, se il personaggio è un numero, aggiungilo a una pila, se un'operazione fa saltare due oggetti dalla pila, esegui l'operazione e rimetti il risultato in pila.
Tuttavia, la piccola e complicata stampa ha specificato che i valori dello stack store sono a 12 bit senza segno.
Questo mi ha dato un sacco di problemi Ho provato a cambiare bit per bit avanti e indietro ma ho ottenuto numeri negativi e probabilmente ho dovuto fare solo% 4096 prima che finisse il tempo.
Inoltre mi sono reso conto che in realtà avrei dovuto creare uno speciale 12 bit per aggiungere e moltiplicare gli operatori, o sarei ok solo a convertire un risultato a 16 bit?
Ho perso un trucco?
Qual è il modo migliore per emulare matematica a 12 bit in c #?