x86

    4

    3답변

    나는 인라인 어셈블리를 통해 단순히 호출하는 기계어 기능을 위해 예약 된 일부 n 바이트 헤더 세트를 사용하여 128 바이트 블록을 절차 적으로 생성하고 있습니다. 그것들은 어디에도 정의되어 있지 않으며 런타임에 실행을 위해 메모리에 할당 된 페이지로 생성됩니다. 그러나 메모리 오프셋 호출을 32 비트 대신 8 비트로 축소 할 수 있기 때문에이 함수 내에서

    5

    3답변

    나는 마이크로 소프트의 과거에 묻는 면접 질문의 샘플을 통해 온라인으로보고이 하나 건너 온되었다이 다음 ASM 블록은 공통 수학 함수가 무엇을 수행? cwd xor ax, dx sub ax, dx 사람이 대답하고 나에게 답을 설명해 주시겠습니까? 감사!! 업데이트 : 좋습니다. 따라서 절대 값을 계산합니다. 누군가 그것을 단계적으로 설명해 주시겠습니까

    6

    4답변

    어셈블리에서 아무것도 쓰지 않거나 어셈블리를 모든 프로그램에 추가하면 이식성이 손상된다는 것을 알고 있습니다. 하지만, 얼마나 나빠요? 기본적으로 모든 PC는 요즘 x86이나 x64입니다. 맞습니까? 그래서 C 프로그램에 어셈블리를 임베드한다면 왜 그것이 어디서 컴파일 되더라도 컴파일되지 않을까요? 실제로 특정 프로세서의 특정 단점을 파헤 치면 코드 조각에

    0

    3답변

    나는 (이 원래 MSVC 기능이다)는 MinGW에 MSVC++에서 VOID __declspec(naked) BNSTUB() { __asm { pushad; call OnChatPacketReceived; TEST EAX,EAX; popad; jnz oldCall; MOV

    12

    4답변


    6

    3답변

    리눅스는 32 비트 및 64 비트를 동시에 어떻게 사용합니까? 또는 glibc에서 처리되는 것이 있습니까? CentOS 5.3을 실행하며 "64 비트"버전입니다. 비록 64 비트와 32 비트를위한 것들을 만들지 만. 내가 아는 것부터 Windows에는 32 비트 에뮬레이터가 있다고 가정합니다. 리눅스도 똑같은 일을합니까? 사용자 공간 또는 커널 공간에 있습

    2

    4답변

    SSE 명령어를 사용하여 어셈블리를 배우고 ASM 코드를 C 코드와 연결하려면 gcc가 필요합니다. 나는 어디에서 시작해야하고 Google이 도움이되지 않았는지 알지 못합니다.

    5

    3답변

    ASM/C/C++ 프로그램에서 모든 인터럽트를 비활성화하여 프로세서에 대한 완전한 제어권을 가질 수 있습니까? 예 -> 어떻게? "원자력"운영 체제 호출이 어떻게 작동합니까 (예 : 중요한 섹션에 진입)? 도움 주셔서 감사합니다.

    1

    1답변

    EAX에 저장된 값을 XOR 할 수 있습니까? 문제는이 라인에있다 : xor eax, key EAX 내가 XOR에 원하는 값의 주소를 포함합니다. 이것을 어떻게 할 수 있습니까? 나는 그것의 라인을 따라 뭔가 될 것이지만 : xor [eax], key 하지만 ... (구문 오류) decrypt proc startAddress:DWORD , sizeO

    3

    3답변

    어셈블러, C++ 및 PE 파일 작동 방식에 대해 더 배우는 방법으로 exe packer/protector를 코딩하려고합니다. 나는 현재 EP를 포함하고있는 섹션이 키와 XOR되고, 새로운 섹션이 나의 암호 해독 코드를 포함하도록 생성되도록하고있다. 해독 후 원본 EP에 JMP를 시도 할 때를 제외하고 모든 것이 훌륭합니다. DWORD originalEnt