inline-assembly

    2熱度

    1回答

    我正在使用rdtscp指令讀取ecx寄存器以檢測cpu和numa節點ID(我正在開發OS)。 的代碼如下所示 inline static long get(unsigned char *node_id = 0, unsigned char *cpu_id = 0) { unsigned int p; __asm__ __volatile__("rdtscp\n" : "=c"

    -1熱度

    1回答

    我試圖生成隨機數,但這個種子 int rdtsc() { __asm__ __volatile__("rdtsc"); } 但是,當我嘗試編譯我得到這個錯誤: error C2065: '__asm__' : identificador no declarado error C2146: error de sintaxis : falta ';' delante del i

    0熱度

    1回答

    我應該重寫代碼從C到內聯彙編。代碼將十進制數轉換爲十六進制。 代碼我應該轉移是: #include <stdio.h> static int a; int main() { char str[]="XX je hex\n"; if (scanf("%i", &a)==1) { /* This part of code i am supposed to transfer */

    0熱度

    1回答

    這是輕量級加密PRESENT算法實現的一部分,針對速度,8位,由C實現,與通過內聯彙編實現的算法的pLayer相關。 // ****************** pLayer ****************************** asm volatile("clr %0 \n" "clr %1 \n" "clr %2 \n"

    1熱度

    2回答

    我想重用我的C項目中一些彙編代碼的函數體。假設我有一個指令序列,我想組織他們作爲一個函數: void foo() { __asm__ ( "mov %eax, %ebx" "push %eax" ... ); } 然而,一個障礙是,在功能foo編譯彙編代碼,除了內聯彙編代碼,編譯器也將產生這個功能有些序幕指令,整個彙編程序將成爲類似: foo:

    5熱度

    1回答

    如果未定義__SHA__,我們使用內聯彙編來使SHA指令可用。在GCC我們使用: GCC_INLINE __m128i GCC_INLINE_ATTRIB MM_SHA256RNDS2_EPU32(__m128i a, const __m128i b, const __m128i c) { asm ("sha256rnds2 %2, %1, %0" : "+x"(a) : "xm"(

    0熱度

    1回答

    當我們在一般的C/C++ CUDA代碼,例如編寫內聯PTX彙編: __device__ __inline__ uint32_t bfind(uint32_t val) { uint32_t ret; asm ("bfind.u32 %0, %1;" : "=r"(ret): "r"(val)); return ret; } 我們可以asm後添加volatile

    1熱度

    1回答

    我想寫一個簡單的操作系統,使用GCC,這將允許我在我輸入的顯示器上顯示文本。我在C中有一箇中斷表,我需要加載並希望能夠使用內聯彙編代替外部彙編語言模塊。 我在尋找的是將指針傳遞給內聯彙編的一種方法。 我試圖內聯的指令,需要一個存儲器操作數是LIDT: 載荷將源操作數的值代入全局描述符表寄存器(GDTR)或中斷描述符表寄存器(ID​​TR) 。源操作數指定包含全局描述符表(GDT)或中斷描述符表(I

    0熱度

    1回答

    我有下面的c彙編代碼以降序對數組進行排序,我已經使用8086emu進行了測試,並且它工作了100%,但在visual studio中它給了我錯誤的結果和錯誤。任何想法或如何解決這個問題。 我的代碼: - #include "stdafx.h" #include <iostream> using namespace std; void main(void) { short *arr;

    1熱度

    1回答

    uint8_t* dataPtr; uint8x8x4_t dataVec; __asm__ __volatile__("vldmia %1, %h0" : "=w"(dataVec) : "r"(dataPtr)); 以上ARM內聯彙編代碼時使用GCC工具鏈armeabi-v7a ABI的Android NDK編譯工作正常。不過,我得到以下編譯器錯誤,當我切換到Clang error: