2010-04-15 4 views
6

Открытый вопрос - но я не могу найти где-нибудь, чтобы начать!MSDOS «Hello World» EXE

Я хочу скомпилировать «Hello World» MS-DOS exe.

Не программа, работающая в режиме XP 16bit, или в режиме MSDos поверх ОС Windows.

A HELOWRLD.EXE, который я могу запустить на моем поле MSDOS.

Спасибо!

+2

В каком (программировании) языке? – wqw

+3

echo Hello World (что напишет, что вам нужно), возможно, вам нужно что-то более конкретное, скажите нам –

+1

Вот примеры на многих языках (OS перечисленные рядом с ними). Как указывали другие, скорее всего, вы собираетесь использовать C, C++, Assembly или даже dos batch. http://www.ntecs.de/old-hp/uu9r/lang/html/lang.en.html – ktharsis

ответ

23

Я думаю, DEBUG.EXE по-прежнему поставляется с окнами (по крайней мере, с XP). Выполнить отладку и ввести что-то вдоль линий следующей транскрипта:

c:\src> debug 
-a 100 
1373:0100 mov ah,9 
1373:0102 mov dx,108 
1373:0105 int 21 
1373:0107 ret 
1373:0108 db "Hello world!$" 
1373:0115 
-n c:\hi.com 
-r bx 
BX 0000 
:0 
-r cx 
CX 0000 
:15 
-w 
Writing 00015 bytes 
-q 

c:\src> c:\hi.com 
Hello world! 

c:\src> _ 

Подробнее о DEBUG.EXE на: http://en.wikipedia.org/wiki/Debug_(command)

и на дисплее строки INT 21 HTTP по адресу: http://www.uv.tietgen.dk/staff/mlha/PC/Prog/asm/int/21/09.htm

+3

+1 для старой школы –

+0

Все ответы были действительно полезны - но когда вы открыли дверь для меня :) награжден Спасибо !! – divinci

+0

Его нет в Windows 7 x64, возможно, потому, что это 16-битное приложение. – nyuszika7h

0

Вам нужен компилятор MS-DOS C. Есть ли еще старая версия Borland C, плавающая вокруг? Кроме того, вы можете найти порт компилятора GNU C для DOS.

7

Выполните следующие действия:

  1. Получить и установить Turbo C 2.0 из here, legally.
  2. Скопируйте данный код (*)
  3. Скомпилируйте его.
  4. Ваш hello.exe готов к запуску.

Это код, который вы должны скопировать (*):

int main(int argc, char **argv) 
{ 
    printf("Hello, world.\n"); 
    return 0; 
} 
+2

Существует также DJGPP, который является настоящим бесплатным программным обеспечением, а не просто отказом: http://www.delorie.com/djgpp/ –

+1

yep, см. Мой ответ;) –

+0

Полностью согласен с вами обоими. Мне просто нравятся старые компиляторы Borland. Они были УДИВИТЕЛЬНЫ! –

4

DJGPP полный 32-битный/C++ система разработки C для Intel 80386 (и выше) ПК под управлением DOS. Он включает в себя порты многих GNU-разработок утилит. Средства разработки требуют, чтобы 80386 или более новый компьютер выполняли , как и выполняемые ими программы. В большинстве случаев программы, которые он производит , могут быть проданы коммерчески без лицензии или лицензионных платежей.

http://www.delorie.com/djgpp/

2

Для C и C++ развития, используйте один из этих компиляторов бесплатно и с открытым исходным кодом:

  • DJGPP - порт DOS НКУ. Он создает 32-разрядные DOS-приложения с защищенным режимом.
  • Open Watcom - Я не так хорошо знаком с этим, но он активно развивается и может настраивать 16- и 32-разрядные DOS, Windows и OS/2.
0

Установите 16-разрядный компилятор Turbo C/C++. Затем создайте новый файл noname00.c.
Напишите этот код.

//Include necessary files stdio.h and conio.h for function prototypes. 
//The "int agrc , char *argv[]" are optional parameters to main program.If you don't want to use //it you can just write "int main()" 
int main(int argc,char *argv[]) 
{ 
    printf("Hello World !!!!"); 
    getch(); 
    return 0; 
} 

.exe-файл, сгенерированный этим компилятором, находится в исходной папке.
Попробуйте запустить его в своем собственном окне MS-DOS.
Он должен бежать.

0

Для Паскаля вас захочет Free Pascal. Он генерирует 32-битные бинарные файлы Go32v2, такие как DJGPP, и может скомпилировать старый код TP.

Работа выполняется также в Windows-> 16-разрядном компиляторе Dos (может генерировать .COM), но во время работы, который еще не находится в выпущенной ветке.