Qual è il modo più affidabile per rilevare se l'architettura utilizza la rappresentazione del complemento a uno o due in C++?Rileva l'architettura del complemento a uno o due in C++?
risposta
Non dovrebbe devi preoccuparti - non ci sono troppi quelli completano macchine là fuori :)
Ma la cosa più semplice potrebbe essere quella di confrontare "-1" con ~ 0.
Non è un comportamento definito dall'implementazione? –
@ R.MartinhoFernandes: certo che lo è. Saranno uguali su un'implementazione a due complementi, e non su implementazioni complemento a complemento (o di dimensioni del segno), e quindi possono essere utilizzate per testare quale rappresentazione viene utilizzata. –
È possibile rilevare questo con il pre-processore in fase di compilazione. –
- 1. Conversione del complemento a due
- 2. Complemento a due del numero intero lungo
- 3. firmato aritmetica complemento a due
- 4. Come si rileva l'overflow mentre si moltiplicano i due interi del complemento a 2?
- 5. Golang: complemento a due e fmt.Printf
- 6. Rileva Windows o Linux in C, C++
- 7. In che modo std :: cout stampa zero zero in un sistema a complemento a un complemento?
- 8. Le migliori pratiche per convertire 24 bit, little endian, i valori del complemento a due in pollici in C#?
- 9. a due, perché il nome di "due"
- 10. estrarre la differenza ("relativo complemento") tra due stringhe in r
- 11. -128 e 128 in complemento a 2
- 12. Da esadecimale al complemento di uno in Python
- 13. Ordinare due NSMutableArrays in base a uno
- 14. Rileva uno screenshot Android
- 15. Relazione EF uno-a-due
- 16. Uno o due cifre numeriche Regex
- 17. coltello: ottenimento di due (o più) attributi in uno andare
- 18. Rileva file letta in C#
- 19. Esistono architetture che non utilizzano il complemento a due per la rappresentazione di valori negativi?
- 20. Rileva in C se si invia a un terminale
- 21. La notazione a complemento a due di un numero positivo ha lo stesso numero?
- 22. C# rileva automaticamente le impostazioni del proxy
- 23. Mappare due (o più) matrici in uno con underscore.js
- 24. combo box complemento completo
- 25. Rileva lingua del testo
- 26. Determina il complemento relativo di due set IEnumerable <T> in .NET
- 27. Transform [: uno, 1,: due, 2] a {: uno => 1,: due => 2} in Ruby
- 28. "Bitwise Not" in Python che sconsiglia il complemento a 2
- 29. C#, Linq2Sql: è possibile concatenare due queryable in uno?
- 30. C'è un modo banale per ottenere complemento a 2 di uno std :: bitset <N>
Se queste sono le uniche opzioni, controllare '(-1) & 1'. –
@BasileStarynkevitch Io lavoro con architetture di supercomputer eterogenei e voglio registrare che all'inizio di ogni file binario sapere se è compatibile con l'architettura che proverà a leggerlo. – Vincent
oggi non conta molto o molto poco l'endianità? E fondamentalmente stai facendo serializzazione, e ci sono librerie per farlo in modo affidabile oggi ..... [s11n] (http://s11n.net/) e altri –