————
[소식]
https://devblogs.microsoft.com/commandline/microsoft-open-sources-gw-basic/
[소스]
https://github.com/microsoft/GW-BASIC
————
1983년, MS가 도스 2.0과 함께
발표한 바로 그 GW BASIC입니다.
C코드 하나도 안 섞인
100% pure 어셈블리!!
우와아아아아.......ㅠㅠ
————
[소식]
https://devblogs.microsoft.com/commandline/microsoft-open-sources-gw-basic/
[소스]
https://github.com/microsoft/GW-BASIC
————
1983년, MS가 도스 2.0과 함께
발표한 바로 그 GW BASIC입니다.
C코드 하나도 안 섞인
100% pure 어셈블리!!
우와아아아아.......ㅠㅠ
본인 소스가 공개되었는데 '그렇군요' 그러면서 느긋하게 있을때가...? ㅋㅋㅋ
대학때 ASM 코딩했는데 재밌더라구요.
어셈블리어라 쉽게 컴파일이 될 겁니다.
없으면 만들어 써도 됩니다. 간단한 어셈블러 만들기는 학부생 과제로도 나올 정도로 비교적 쉽습니다.
심지어 파이썬으로 ASM 소스코드 읽어서 인터프리터 방식으로 X86 CPU 에뮬레이팅해도 요새 컴에선 빠르게 돌아갈 겁니다.
그래도 C는 있었죠.굳이 C를 안 쓴 이유는 당시 x86이 나온지 얼마 안 되어서 OS나 C 개발환경이 제대로 구축이 안 되어 있던터라 ASM을 선택할 수 밖에 없었을 겁니다. 당시에 거의 대부분의 DOS 프로그램들은 ASM 으로 작성 많이 했습니다.
<Q>
Why assembly? Why didn’t developers use higher-level languages like C, or Pascal?
<A>
When developing on/for mainframes and minicomputers of the day, developers were sometimes able to use higher-level languages like FORTRAN, LISP, COBOL, RPG, CPL/BCPL, C, etc. but the compilers for such languages were often hugely expensive, rarely generated efficient code, and were generally unavailable for the space and performance constrained home and personal computers of the day.
When writing software for early PCs, every single byte and every single instruction mattered, so developers often wrote code entirely in assembly language simply to be able to physically fit their software into the available memory, and to be able to access the computer’s resources and internal workings.
Thus, all the source code for GW-BASIC is pure assembly code, translated on a per-processor/per-machine basis from core/master sources.
/Vollago
20 input "Ending value (20-30)";x2
30 print
40 for x = x1 to x2 step 2
50 for y = 1 to 5
60 print x*y;
70 next y
80 print
90 next x