fasm

    3

    1답변

    어셈블리로 작성된 해체 앱을 사용하려고합니다. Linux, x64 : $ objdump -d my_app my_app: file format elf64-x86-64 그래, 맞아. 그게 뭐가 잘못 됐어? 몇 줄의 코드가 단순한 hello world이 아니라 약 200 줄의 코드입니다. $ gdb -q my_app Reading symbols fro

    1

    1답변

    "ELF 실행 파일 3"은 x86 실행 파일을 만듭니다. "ELF64 실행 파일 3"은 x64 실행 파일을 만듭니다. 그러나 x32 (32 비트 포인터가있는 x64) 실행 파일을 어떻게 만들 수 있습니까? https://en.wikipedia.org/wiki/X32_ABI p.s. "실행 파일"다음에 나오는 "3"은 무엇을 의미합니까?

    0

    1답변

    스택에 로컬 변수를 만들었거나 문자열 대신 메모리를 할당 했으므로 값을 입력하고 싶습니다. 내가 할 방법을 undertand에 할 strcat(my_str1, "something1"); strcat(my_str1, get_var2()); strcat(my_str1, "something3"); strcat(my_str1, get_var4()); 그

    1

    1답변

    커널을 만들 때 전화 명령에 도움이 필요합니다. 플랫 어셈블러를 사용하여 커널을 빌드하고 있습니다. call fs:bx 가능합니까? 플랫 어셈블러에서 "잘못된 피연산자 크기"오류가 발생합니다. 은 내가 call 1000h:0h 을 할 수있어하지만 내가 원하는 것이 아니다. 누군가이 질문에 대한 답을 갖고 있습니까?

    -1

    1답변

    코드를 구성하기위한 적절한 규칙이 없으면 어셈블리 코드가 엄청나게 복잡 해지는 경향이 있습니다. 아무도 매크로, 프로 시저 등을 포함한 코드 구성에 유용한 기술을 제안 할 수 있습니까?

    0

    2답변

    레이블 주소를 얻으려면 어떻게해야합니까? 내가 추가 코드를 예를 추가하지 않고 평면 어셈블러에서 라벨의 ADRESS을 얻으려면 : label1: ;is at adress 0 db 1h,2h,3h,4h,5h ;some data label2: ;is at adress 5 because label1 has 5 bytes of data 내가 콘솔 화면으로

    0

    1답변

    일부 조작을 통해 ret op와 관련된 문제점을 해결했습니다. 나는 call이 반환 주소를 스택에 푸시한다는 것을 알고있다; 그것을 터뜨리고 다시 밀어 넣는 것은 불법입니까? format ELF64 executable 3 entry start segment readable executable start: pop rcx ; argc

    0

    1답변

    플랫 어셈블러를 사용하여 어셈블리에 작은 부팅 가능 OS를 만들었습니다. 나는 그것을 PulsarOS라고 부른다. 그러나, 나는 그것에 대한 타이핑 프로그램을 만들고 싶다. 제가 말했듯이, 그것은 모두 x86 어셈블리에 있습니다. 사용자가 입력 할 수있는 곳으로 간단하게 입력하고 입력 한 텍스트가 화면에 표시됩니다. 여기에 코드가 있습니다. 비교적 간단한,

    1

    1답변

    Fasm의 설명서를 읽었지만 이해할 수 없습니다. section ".bss" struc my_struct .a resw 1 .b resw 1 .c resb 1 .d resb 1 endstruc section ".data" my_struct_var1 istruc my_stru

    1

    1답변

    나는 fasm을 사용하여 fasm과 함께 제공되는 매크로를 사용하는 dll을 컴파일하고 있는데, 전처리 기 이후 출력이 무엇인지보고 싶지만 이진 스테이지 전에 출력하고 싶습니다. 이것을 볼 방법이 있습니까? 매크로에 대한 종속성을 제거하는 것이 가치가 있는지 확인하기 위해 생성되는 내용을 빨리 확인하고 싶습니다. "매크로 풀다", 소스를 컴파일 매크로 호출