Ho notato per la prima volta nel 2009 che GCC (almeno sui miei progetti e sulle mie macchine) ha la tendenza a generare un codice notevolmente più veloce se ottimizzo per dimensioni ( -Os) anziché velocità ( -O2o -O3), e mi chiedo da allora perché. Sono riuscito a creare un …
Ho un elenco arbitrario di assembly .NET. Devo controllare a livello di programmazione se ogni DLL è stata creata per x86 (al contrario di x64 o qualsiasi CPU). È possibile?
Ho letto dive muloperazioni di assemblaggio e ho deciso di vederle in azione scrivendo un semplice programma in C: File division.c #include <stdlib.h> #include <stdio.h> int main() { size_t i = 9; size_t j = i / 5; printf("%zu\n",j); return 0; } E quindi generare il codice del linguaggio assembly …
Sfondo: Durante l'ottimizzazione del codice Pascal con linguaggio assembly incorporato, ho notato un'istruzione non necessaria MOVe l'ho rimosso. Con mia sorpresa, la rimozione delle istruzioni non necessarie ha fatto rallentare il mio programma . Ho scoperto che l' aggiunta di MOVistruzioni arbitrarie e inutili ha aumentato ulteriormente le prestazioni . …
I seguenti collegamenti spiegano le convenzioni di chiamata del sistema x86-32 sia per UNIX (sapore BSD) che per Linux: http://www.int80h.org/bsdasm/#system-calls http://www.freebsd.org/doc/en/books/developers-handbook/x86-system-calls.html Ma quali sono le convenzioni di chiamata del sistema x86-64 su UNIX e Linux?
Credo di aver trovato un bug in GCC durante l'implementazione del PRNG PCG di O'Neill. ( Codice iniziale su Godbolt's Compiler Explorer ) Dopo aver moltiplicato oldstateper MULTIPLIER, (risultato memorizzato in rdi), GCC non aggiunge quel risultato a INCREMENT, INCREMENTmovabs'ing invece a rdx, che viene quindi utilizzato come valore di …
Voglio determinare se un assembly nativo viene rispettato come x64 o x86 da un'applicazione di codice gestito ( C # ). Penso che debba trovarsi da qualche parte nell'intestazione PE poiché il caricatore del sistema operativo deve conoscere queste informazioni, ma non sono riuscito a trovarle. Ovviamente preferisco farlo nel …
Rust ha numeri interi a 128 bit, indicati con il tipo di dati i128(e u128per gli integri senza segno): let a: i128 = 170141183460469231731687303715884105727; In che modo Rust fa funzionare questi i128valori su un sistema a 64 bit; es. come fa l'aritmetica su questi? Dal momento che, per quanto ne …
Nel tour x86-64 dei manuali Intel , ho letto Forse il fatto più sorprendente è che un'istruzione come MOV EAX, EBXazzera automaticamente i 32 bit di RAXregistro superiori. La documentazione Intel (3.4.1.1 General-Purpose Registers in 64-Bit Mode in manual Basic Architecture) citata nella stessa fonte ci dice: Gli operandi a …
Ho un piccolo dilemma su come impostare le build del mio studio visivo per il multi-targeting. Sfondo: c # .NET v2.0 con p / invocazione in DLL a 32 bit di terze parti, SQL compact v3.5 SP1, con un progetto di installazione. Al momento, l'obiettivo della piattaforma è impostato su …
AMD ha una specifica ABI che descrive la convenzione di chiamata da utilizzare su x86-64. Tutti i sistemi operativi lo seguono, ad eccezione di Windows che ha la propria convenzione di chiamata x86-64. Perché? Qualcuno conosce le ragioni tecniche, storiche o politiche di questa differenza, o è solo una questione …
Allo stato attuale, questa domanda non è adatta al nostro formato di domande e risposte. Ci aspettiamo che le risposte siano supportate da fatti, riferimenti o competenze, ma questa domanda probabilmente solleciterà dibattiti, argomenti, sondaggi o discussioni estese. Se ritieni che questa domanda possa essere migliorata e possibilmente riaperta, visita …
Sto cercando di installare un servizio Windows utilizzando InstallUtil.exe e ricevo il messaggio di errore System.BadImageFormatException: impossibile caricare il file o l'assembly " {xxx.exe}" o una delle sue dipendenze. Si è tentato di caricare un programma con un formato errato. Cosa succede? EDIT: (Non da OP) Messaggio completo estratto da …
Sto eseguendo un lavoro critico per le prestazioni in C ++ e attualmente stiamo utilizzando calcoli interi per problemi che sono intrinsecamente in virgola mobile perché "è più veloce". Ciò causa molti fastidiosi problemi e aggiunge molto codice fastidioso. Ora, ricordo di aver letto di come i calcoli in virgola …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.