2014-10-13 2 views
0

Windows에서 실행되는 C를 어셈블리로 변환하는 도구가 있습니까?사용자 정의 CPU 아키텍처 용 컴파일러

cpu 아키텍처 (8 비트 및 16 비트)는 자체 명령 집합을 가지고 있음을 자체적으로 의미합니다.

C 컴파일러는 자체 어셈블리 언어를 사용해야합니다. 언어는 x86 또는 ARM을 기반으로하지 않습니다. 회사의 지적 재산권이므로 더 많은 세부 정보를 제공 할 수 없습니다.

+3

그럼 C 코드를 사내 8/16 비트 사용자 정의 cpu 아키텍처로 크로스 컴파일하고 시스템이 무엇인지 전혀 모르는 공용 컴파일러로 원하는가? 다른 어셈블리 언어가 많으므로 좀 더 구체적이어야합니다. 사용자 정의 CPU 아키텍처에서 x86 어셈블리를 실행할 수 있습니까? 팔? – RPGillespie

+0

어셈블리 언어는 사내이며 x86 또는 arm 기반이 아닙니다. – user1998844

답변

4

코드 생성을 위해 교체 가능한 백엔드를 사용하는 오픈 소스 컴파일러 중 하나를 배워야합니다. Gcc와 CLang이 좋은 출발점이 될 수 있습니다.

+2

http://sun.hasenbraten.de/vbcc/는 gcc 및 llvm보다 고통이 덜한 또 다른 프로그램입니다. –

+2

@dwelch [SDCC - 소형 장치 C 컴파일러] (http://sdcc.sourceforge.net/)는 유지 보수가 가능한 또 다른 타깃팅 가능 컴파일러 인 것으로 보입니다. 구글 쿼리 :'마이크로 컨트롤러 임베디드 8 비트 C 컴파일러'는 다른 후보들을 공개 할 수도 있습니다 – xmojmr

+1

맞아요, 깜박, sdcc가 또 하나이며 8/16 비트 마이크로를 충족합니다 ... –

0

예, 버지니아에는 Windows에서 C를 어셈블리로 변환하는 도구가 있습니다. GCC가 떠오른다. 마찬가지로 MS Visual Studio.

Windows 용 기성품 버전이 x86 객체 코드를 생성하는 경향이 있기 때문에 이것이 원하는 것이 아닙니다. 당신이 특별하지 않은 x86 명령어 세트를위한 컴파일러를 원하는 것처럼 들린다.

당신이 어떤 세부 사항도 제공하지 않았다면, 그런 컴파일러가 이미 존재한다면 아무도 응답 할 방법이 없습니다.

이러한 세부 사항이 없으면 누구나 할 수있는 일반적인 조언을 제공합니다. 비교적 임의의 명령어 세트에 대한 코드를 생성하도록 GCC를 설정할 수 있습니다. 이 일을하는 것은 공원에서 걷는 것이 아니지만 많은 다른 교훈 세트를 위해 행해졌습니다.

+0

안녕하세요, IP ... 당신이 이해하기를 바란다. 그렇다. 그런 컴파일러가 존재하지 않는다. 그래서 당신은 내가 MS Visual Studio에서 GCC를 컴파일 할 수 있다고 말하고 있는가? – user1998844

+1

GCC가 자동으로 컴파일됩니다. Windows의 경우 작동 가능한 x86 GCC 컴파일러가 포함 된 Cygwin 도구 (cygwin.org)를 구하십시오. http://www.gnu.org/software/software.html에서 GCC 소스를 얻을 수도 있습니다. 거기에서 GCC 컴파일러를 사용하여 수정 된 소스를 GCC로 컴파일 할 수 있습니다. 그런 다음 지침 세트와 일치하도록 소스를 수정하십시오. 나는 이것에 대한 특별한 경험이 없지만 사람들은 지난 20 년간 그것을 해왔다. MS C 컴파일러를 수정하는 것은 실용적이지 않습니다. –

관련 문제