“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。 s@{82}f~
J-<P~9m~I
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 vE)N6Ss
GPHb-
以下是用不同语言写成的Hello World程序的几个例子: hn2:@^=f
Ada Fl.?*KBz
with Ada.Text_Io; use Ada.Text_Io; v>LK+|U
procedure Hello is W]eILCo
begin l!:bNMd
Put_Line ("Hello, world!"); iO*5ClB
end Hello; tM"vIz 05
,Sgo_bC/|
d=bKNA90
汇编语言 Oz%6y
ri
#|E#Rkw!
x86 CPU,DOS,TASM 6ZIPe~`
MODEL SMALL A>gZl)c
IDEAL S Q:H2vvD
STACK 100H :0y-n.-{
ouCh2Y/_
DATASEG =Lkn
HW DB 'Hello, world!$' fC'u-m?!Q'
sX6\AYF1M
CODESEG N-2#-poDe
MOV AX, @data 'df@4} 9
MOV DS, AX >Y4^<!\v
MOV DX, OFFSET HW YA@?L!F
MOV AH, 09H :4zPYG o
INT 21H #D_Ti%.^}
MOV AX, 4C00H T2rwK2
INT 21H `>\
~y1
END Vw w 211
Kq")|9=d
VL*5
x86 CPU,GNU/Linux,NASM \9,lMK[b
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). sBZn0h@
;Enter this into "hello.asm" then type: ?M'CTz}<\
;"nasm -f elf hello.asm" |[n\'Xy;{
;"ld hello.o -o hello" --y,ky#
;"./hello"
6xx.Z3v
g"sb0d9
section .data ;data section declaration /ZiMD;4@y
msg db 'Hello World!',0AH m)66g]F+
len equ $-msg ;string length Z]Xa:[
QswPga(-
section .text ;code section declaration je$H}D
global _start ;entry point (start of execution) ~Zsj@d
_start: mov edx,len ;string length (+v':KH3_
mov ecx,msg ;string start 7a9">:~
mov ebx,1 ;file handle: stdout D>jtz2y=D
mov eax,4 ;sys_write 8#$HKWUK
int 80h ;kernel system call BD]J/o
KLM6#6`
mov ebx,0 ;return value xytWE:=
mov eax,1 ;sys_exit H9jlp.F
int 80h ;kernel system call L$c 1<7LU
5(#z)T
8-+# !]
x86 CPU,Windows,MASM32 4wKCzPy
.386 Fb<'L5}i
.model flat,stdcall 0(c,J$I]Z!
option casemap:none kVsX/~$
;Include 文件定义 G$YF0Nc
include windows.inc NUnwf
h
include user32.inc qDGx(d
includelib user32.lib NblPVxS
include kernel32.inc uD{-a$6z
includelib kernel32.lib 4?@5JpC9VA
;数据段 $o+@}B0)
.data ^4WZ%J#g
szCaption db 'A MessageBox!',0 "n3n-Y#'
szText db 'Hello,world!',0 #vK99S2
;代码段 Vfd_nD^8oZ
.code I SZEP8w
start: R|Bi%q|4P
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK t@lTA>;U@
invoke ExitProcess,NULL uq6>K/~D
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> n. N0Nhd
end start sifjmNP
&56\@t^
fR;[??NH
AWK A\ mSS
BEGIN { print "Hello, world!" } SKf;Fe
"?aE3$/
W{JR%Sq$
BASIC |LIcq0Z
传统版BASIC(例如GWBASIC): q ) 5s'(
i|H^&$|
10 PRINT "Hello, world!" ii`,cJl
20 END [D|Uwq
#lFsgb
或在提示符输入:
1^hG}#6_
s;<]gaonB_
?"Hello, world!":END Q%'4jn?H
c;b<z|}z
现代版BASIC(例如Quick BASIC): f~?5;f:E
Yc[vH=gV}
Print "Hello, world!" 'h&>K,U?5
f
4K)Z
e
以下的语句在Quick BASIC中同样有效: +tkm,>s
]\ZJaU80I~
? "Hello,world!" I7XM2xM
toG- Dz&