“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。 oqbhb1D1<
0G`@^`
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 P~s u]+
l"/E,X
以下是用不同语言写成的Hello World程序的几个例子: b*1yvkX5
Ada slAR<8
with Ada.Text_Io; use Ada.Text_Io; ;
*\xdg{d
procedure Hello is LZ RP}|
begin n0g8B
Put_Line ("Hello, world!"); D!&]jkUN
end Hello; f4$sH/ 2#v
DMlr%)@{
Hb0_QT~
汇编语言 p}8?#5`/w
`R!Q(rePx
x86 CPU,DOS,TASM *Sps^Wl
MODEL SMALL G|u)eW
IDEAL |5jrl|
STACK 100H Q" r y@
(I
}46Zfg\T6n
DATASEG 6sG5n7E-A
HW DB 'Hello, world!$' -kHJH><j
{vdY(
CODESEG WtO@Kf:3GH
MOV AX, @data 8:[ l1d86
MOV DS, AX &OA6Zw/A
MOV DX, OFFSET HW b[<L
l%K
MOV AH, 09H @WNqD*)1
INT 21H _}F_Q5)
MOV AX, 4C00H GL~
Wnt
INT 21H t~<HFY*w
END .5);W;`X
&2S-scP
+;4;~>Y
x86 CPU,GNU/Linux,NASM L/In~'*-
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). !{ fu(E
;Enter this into "hello.asm" then type: %J Jp/I
;"nasm -f elf hello.asm" U({N'y=
;"ld hello.o -o hello" Kp^"<%RT
;"./hello" Mdq|:^px
{{?MO{Mh*
section .data ;data section declaration JI
cm$
msg db 'Hello World!',0AH oY0*2~sg
len equ $-msg ;string length mE_%
yEk|(6+^
section .text ;code section declaration hQ(^;QcSu
global _start ;entry point (start of execution) ^4NRmlb
_start: mov edx,len ;string length ay|jq"a
mov ecx,msg ;string start rIb~@cR)
mov ebx,1 ;file handle: stdout /q}(KJX
mov eax,4 ;sys_write
;u[:J
int 80h ;kernel system call nCQ".G
?zQW9e
mov ebx,0 ;return value _`gkYu3R+
mov eax,1 ;sys_exit TspX7<6r
int 80h ;kernel system call v_Df+
q*5L",
` &bF@$((
x86 CPU,Windows,MASM32 hW'b'x<
.386 X)6 G :cD
.model flat,stdcall j}d):3!
option casemap:none E_I-.o|
;Include 文件定义 y10W\beJ
include windows.inc ,A $IFE
include user32.inc Pksr9"Ah
includelib user32.lib ~5h4 Gy)
include kernel32.inc i /I
includelib kernel32.lib U;TS7A3
;数据段 :*BN>*1^\r
.data +H?g9v40
szCaption db 'A MessageBox!',0 I'^XEl?
szText db 'Hello,world!',0 6"Lyv
;代码段 EpKZ.lCU
.code 0^\H$An*k
start: *0Z6H-Do,
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK X lItg\R
invoke ExitProcess,NULL 8t=O=l\
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >~Gy+-
end start '3U,UD5EG
}No #_{
|bSAn*6b
AWK G7|d$!%
BEGIN { print "Hello, world!" } qTRP2rH,L&
m1jEky(
N\&VJc
BASIC pfIK9>i
传统版BASIC(例如GWBASIC): llR5qq=t
@BjB
Mi,
10 PRINT "Hello, world!" H.]V-|U
20 END h*D -Vo
{d'B._#i
或在提示符输入: W`JI/
D</?|;J#/
?"Hello, world!":END iG"v
HJJ)D E7;
现代版BASIC(例如Quick BASIC): -6uLww=w4
H1%o)'Kut4
Print "Hello, world!" >T*BEikC
PPrvVGP
以下的语句在Quick BASIC中同样有效: -c1-vGW/
bZgo}`o%
? "Hello,world!" YfZ5Q}*1O+
T,a{mi.hNR
mZ? jpnd
BCPL 0vDvp`ie#4
GET "LIBHDR" 9}2/ko
|x1Ttr,
LET START () BE YqXN|&
$( PBW_9&