.exe를 .com로 변환하십시오.


1

최근에 랩톱에서 MS-DOS 6을 다운로드하고 cmd에서 모든 명령을 수행 할 수 있기를 원하지만 .exe를 .com으로 변환해야합니다. 이렇게하려면 모든 소프트웨어를 다운로드합니다.


어느 .exe 파일?
Synetech

나는 이론 프로그램이 해체 할 수있다. .com 파일을 컴파일하고 .exe, 그러나 나는 그것을 보지 못했다. (물론 이것은 처음에 DOS 실행 파일에 대해 말하고 있다고 가정합니다.)
Synetech

답변:


25

Methinks .com 및 .exe 확장의 의미에 대해 약간 혼란스러워합니다.

  • .com은 본질적으로 64K 이하의 크기 (실제로는 0xFF00 바이트, 65280, 기술적으로는 cmd 행과 물건에 대한 256 바이트 이후)로 제한된 메모리의 이미지입니다.
  • .exe는 링크 된 프로그램입니다 (실제 메모리 제한이 존재 함에도 불구하고 라이브러리 및 코드, 리소스 및 기타 등등의 일부로 구성되며 크기는 본질적으로 무제한입니다)

두 기능 모두 명령처럼 똑같이 잘 작동합니다. 실제로 DOS 하위 디렉토리에서 보면 .com 파일과 .exe 파일이 흩어져있는 것을 볼 수 있습니다. .com 파일 만 COMmands라고 생각하여이 문제를 혼동하지 마십시오. 그냥 명명 규칙.

MSDOS의 CP / M 뿌리와 관련이 있습니다. 프로그램 크기가 64k로 제한되어 있고 더 큰 프로그램이 스스로를 메모리로 페이징해야했기 때문에 ... COMmands를 고려했습니다. 하지만 고맙게도 우리는 CP / M의 한계를 넘어 새로운 한계에 직면했습니다 ...하지만 그것은 또 다른 이야기입니다.

잘하면이 도움이됩니다.


0.S.o0 x644 비트 프로그램도 변환하는 x32 비트 일명 impossibble
Jake Inc.

사과를 오렌지로 바꾸는 것과 거의 같습니다 : 불가능하기 때문에 그들은 매우 다릅니다.
Renan

4
아니요, 64 비트와 32 비트는 전적으로 주목할만한 것입니다. 우리는 DOS에서 사용할 수있는 프로그램에 대해서 이야기하고 있습니다. DOS의 64 비트 버전이 흥미 롭긴하지만 ... "vw 버그의 페라리 엔진"에서 다소 재미있다.
lornix

@lornix 당신은 매우 기술적으로 상세한 답변을 주었지만, 중요한 부분은 생략했습니다. 그는 자신이 원하는 것을 할 수 없습니다. 아래 답변은 요점에 관한 것입니다. 사실, "양쪽 모두 명령과 똑같이 잘 작동합니다 ..."라고 쓰면 질문자가 자신이 원하는 것을 할 수 있다고 생각하게 될 것입니다.
Fran

그는 .exe를 .com으로 변환하여 명령으로 사용하는 방법에 대해 질문했습니다. 사용자가 지정하지 않은 과거를 수행합니다. Windows 환경에서 MSDOS 6을 사용하려고한다면 다른 문제가 있습니다. 주어진 것에 만 대답 할 수 있고, 내 수정 구슬은 연간 유지 보수를 위해 나왔습니다.
lornix

7

다른 유형의 EXE 파일이 있습니다. 일부는 MS-DOS에서 실행될 수 있고 다른 일부는 Windows가 필요할 수 있습니다. MS-DOS에서 실행할 수있는 것은 변환 할 필요가 없습니다.

Windows 용으로 컴파일 된 EXE 파일은 명령 줄 인수를 받아들이고 콘솔 출력을 생성하더라도 DOS에서는 실행되지 않습니다. Windows 기능 및 API (응용 프로그램 프로그래밍 인터페이스)에 의존하여 올바르게 작동합니다.

DOS에서 Windows EXE 파일을 실행하려고하면 다음 메시지가 표시됩니다.

This program cannot be run in MS-DOS mode.

3
일반적으로 예, dos에서 실행될 때의 동작은 사용자 정의 할 수 있습니다. Windows에서 win32 콘솔로 실행되는 하이브리드 exe를 생성 할 수 있으며 실제 DOS에서도 실행할 수 있습니다.
psusi

@ psusi, dual-exes를 좋아하지만 유감스럽게도 제대로 작동하지는 않습니다. XP에서 Windows 계산기를 간단한 DOS 계산기와 결합하려고 시도했지만 작동하지 않았습니다. :-( 불행히도이를 달성 할 수있는 도구는 거의 없으며 (예 : 2 개만 가능) 다양한 형식 (예 : Windows 9x + PE)을 지원할 수있는 도구가 적습니다.
Synetech

0

다른 모든 대답은 좋다. DOS의 옛날 COM 실행 파일이 L1 캐시에로드되었다는 것을 알려주는 것이 좋을 것이다. DOS 시간에 멀티 태스킹에 가장 가까운 것이었다.

예 : Mouse.com이 캐시 메모리에로드되었으므로 실행중인 다른 모든 후속 프로그램이 마우스를 사용할 수있었습니다.

  • 386 프로세서가 16 ~ 64KB의 캐시를 지원할 수 있음

  • 486 프로세서의 경우 8KB 캐시가 CPU 다이에 직접 통합되었습니다. 이 캐시는 느린 마더 보드 또는 L2 (Level 2) 캐시와 구별하기 위해 레벨 1 또는 L1 캐시라고 불렀습니다. 이 마더 보드 캐시는 훨씬 더 크며 가장 일반적인 크기는 256KB입니다.

386, 486, 그리고 x86의 격동하는 시간 동안, 386 시대에 필요한 모든 COM을로드 할 수있는 충분한 L1 캐시가 없었기 때문에 마우스, 사운드, CDROM, MEMCACHE에 대해 생각해 보면 일부 DOS 게임이 486에서 올바르게 실행되지 않았습니다. 예를 들어 마우스로 게임을 즐기려면 사운드가없는 게임을 선택해야합니다.


사실이 아닙니다. 캐시에로드 된 프로그램 - TSR 또는 Terminate & amp; Stay Resident 프로그램 - .COM 일 필요는 없습니다. 그들은 종종 .EXE 또는 .SYS였습니다.
Chenmunka
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.