2

저는 자체 명령 세트가있는 간단한 마이크로 프로세서 시뮬레이션을 작성하기 위해 일부 Verilog 코드를 작성했습니다. 지금까지 필자는 모든 코드를 머리에 컴파일하고 16 진수 편집기를 사용하여 프로그램 메모리를 시작할 때 사용할 수있는 이진 파일을 생성했습니다. 이제는 (C 나 BASIC과 같은) 대중적인 언어를 제 명령 세트로 컴파일 할 필요가 있습니다. 그리고 자신의 컴파일러를 작성하는 것은 매우 어렵고 오랜 시간이 걸릴 것으로 보입니다. 어떤 식 으로든 확장 할 수있는 컴파일러를 찾고 있습니다. 소스 코드는 다른 지시에 따라 간단히 다시 작성할 수 있습니다.자신의 어셈블리를 얻으려면 컴파일러를 확장하십시오.

이렇게 할 방법이 있습니까? 그런 컴파일러가 존재합니까?

+0

생각해 보셨습니까? – thebjorn

+0

나는 컴파일러를 전혀 사용하지 않았다. – user35443

+1

이런 종류의 프로젝트를 진행하기에 충분한 것을 배우려면 아마 하루도 안 걸릴 것입니다. 그것은 앞뒤가 잘 맞는 것입니다. 자세한 정보는 www.forth.com을 참조하십시오. – thebjorn

답변

2

C와 마찬가지로 매우 복잡한 작업입니다. 간단한 언어 컴파일러를 작성하는 것보다 훨씬 복잡합니다. 그러나,이 방법으로 가고 싶다면, GCC를보십시오. 오픈 소스이며 새로운 플랫폼을 위해 확장 가능하도록 설계되었습니다. 또한 다중 프런트 엔드 (프로그래밍 언어)와 백엔드 (대상 플랫폼 용 생성기)를 결합 할 수 있습니다.

그러나 활동이 뭔가를 배우고 실제로 새로운 프로덕션 마이크로 프로세서를 설계하지 않는 경우, 나는 Pascal과 같은 간단한 언어의 서브 세트를 선택하고 간단한 컴파일러를 작성합니다. 10k - 20k 라인의 코드로 끝날 수 있으며 많은 즐거움이 될 것입니다.

+0

감사합니다. GCC와 LLVM을 사용해 보겠습니다. – user35443

관련 문제