nasm

    1

    2답변

    어셈블리에서 : 연산자가 수행하는 작업은 무엇입니까? 은 다음과 같은 코드에 표시됩니다. DS:DX 이 연산자에 대한 문서를 찾을 수 없습니다. (NASM를 이용 임)

    1

    1답변

    그래서 최근에 어셈블리에서 win32 호출을 호출하고 싶었고 NASM을 외부 어셈블러로 사용했습니다. call [email protected] 이 상대 점프 (0xE8 연산 코드)에 조립 한 결과는 액세스 위반했다 : 나는 다음과 같은 방법으로 내 코드에 SendMessage를 호출했다. 디버거에서 계산 된 점프 오프셋이 올바른 것으로 보였습니다. (

    0

    1답변

    나는 어떤 종류의 어셈블리에서도 프로그래밍에 익숙하지 않다. 그리고 리눅스 용 NASM 타입 어셈블리가 DOS 기반 어셈블리에 비해 비교적 간단하다고 들었 기 때문에 나는 그것을 시도하기로 결정했다. 이 내 프로그램은 지금까지입니다 : section .data opening: db 'Opening file...',10 openingLen:

    0

    1답변

    getline 및 print_string "functions"가있는이 작은 experiement 부트 스트랩을 작성했습니다. 부트 물건은 MikeOS 튜토리얼에서 가져 왔지만 나머지는 나 자신을 썼다. 이것을 NASM으로 컴파일하고 QEMU에서 실행합니다. 실제 질문 : 저는이 변수 curInpLn을 6 행에 선언했습니다. 사용자 유형이 그 변수에 저장되고

    0

    1답변

    64 비트 OS X 컴퓨터에서 nasm을 사용하여 this OS을 컴파일하려고합니다. 그러나 어셈블러는이 코드가 32 비트가 아니라 64 비트라는 사실을 알지 못하는 데서 오는 오류를 알려주고 있습니다. 어떻게하면 코드를 수정하지 않고도이 문제를 해결할 수 있습니까? 오류는 : $ nasm kernel64.asm -o kernel64.sys init_64

    1

    1답변

    x86-64에서이 상대 주소를 사용하여 다음 작업을 수행 할 수 있습니까? 내가 NASM과 OS X에이 방법을 수행 할 때 section .text two dq 0 section .data one: dq two , 나는 다음과 같은 링커 경고를 얻을 : LD : 경고 : PIE 사용할 수 없습니다. 절대 주소 지정 ( -mdyn

    7

    1답변

    MS-DOS 용 어셈블리 (16 비트)에 TSR (Terminate-Stay-Resident) 프로그램을 작성하려고했습니다. 나는 위키피디아 페이지 TSR과 또한 그것을 DOS에서 특별히 사용하는 페이지를 통해 읽었습니다. (하지만 C로 직접 가르치는 것 같고 어셈블리는 아닙니다.) 나는 수많은 도스 인터럽트 문서가있는 사이트를 살펴본 결과 this one

    6

    1답변

    각 프로세스마다 별도의 로컬 디스크립터 테이블을 사용할 작은 OS에서 작업하고 있습니다. 내 GDT에서 LDT 세그먼트를로드하려면 lldt 명령어를 사용해야 함을 이해합니다. 나는 이미 유효한 GDT로 보호 모드에서 커널을 실행시키고 있지만, LDT에 대한 GDT 항목이 어떻게 생겼는지 알 수 없다. 기본 주소가 내 LDT를 가리켜 야한다는 것을 이해하지만

    10

    2답변

    사용자 모드 (권한 레벨 3)에서 일부 코드를 실행할 작은 OS를 작성 중입니다. 해당 사용자 수준 코드에서 메시지를 인쇄하는 OS에 다시 인터럽트를 호출하려고합니다. 지금 당장은 인터럽트 처리기가 인수 나 그와 같은 것을 어떻게 사용하는지 신경 쓰지 않고, 인터럽트 처리기에서 코드가 실행되었음을 사용자에게 알리고 싶습니다. 제 질문은 : 사용자 모드에서

    5

    2답변

    좋은 참고가 필요할 수도 있지만 좋은 예가 필요할 것입니다. 내가 NASM 어셈블러를 사용하여 어셈블리에 코드를 작성하기 시작했기 때문에 필요합니다. 나는이 참조가 : 매우 좋은 유용 http://bluemaster.iu.hio.no/edu/dark/lin-asm/syscalls.html 을하지만, 다른 레지스터의 필드를 설명하지 않기 때문에 그것은 많은