“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。 TxN#3m?G
AvEJX0"\df
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 a%;$l_wVT:
*J8j_-i,R
以下是用不同语言写成的Hello World程序的几个例子: g}$]K!F
Ada WsJ3zZc
with Ada.Text_Io; use Ada.Text_Io; #R305
procedure Hello is 3r+vp yu
begin *FK!^Y
Put_Line ("Hello, world!"); Z?XE~6aP>
end Hello; vj[
.`fY
$62ospR^Y
V`S6cmwdc\
汇编语言 GZXUB0W\@)
l
K}('7\
x86 CPU,DOS,TASM H `),PY2
MODEL SMALL +X
cB 5S>
IDEAL q^([ & +
STACK 100H l]T|QhiVd
ZaH<\`=%
DATASEG qK.8^{b
HW DB 'Hello, world!$' jf*M}Q1jHE
zg)Z2?K|;u
CODESEG G5"UhnOD'
MOV AX, @data e]uk}#4
MOV DS, AX U,[vfSDGr
MOV DX, OFFSET HW rbO9NRg>
MOV AH, 09H yew9bn0a=
INT 21H B\KvKT|\
MOV AX, 4C00H , YTuZS
INT 21H 1f~unb\Gg
END o`M7:8G
i)+@'!6
D7[ 8*^
x86 CPU,GNU/Linux,NASM wcsUb9(
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). 'Xxt[Jy
;Enter this into "hello.asm" then type: ,hT t]w
;"nasm -f elf hello.asm" KNQX\-=
;"ld hello.o -o hello" -zN*2T
;"./hello" QI=",vmau
SD8Q_[rY
section .data ;data section declaration V. =! ^0'A
msg db 'Hello World!',0AH BNQ~O^R0
len equ $-msg ;string length 'r(}7>~fC
k~`pV/6
section .text ;code section declaration qI^6}PB
global _start ;entry point (start of execution) Cb x/
_start: mov edx,len ;string length ,Tvk&<!0
mov ecx,msg ;string start &P&M6v+
mov ebx,1 ;file handle: stdout f lR6^6E
mov eax,4 ;sys_write dE.R$SM
int 80h ;kernel system call ,wlFn
[Sg1\UTl
mov ebx,0 ;return value GBHv| GO
mov eax,1 ;sys_exit ] 8+!
int 80h ;kernel system call CS:j->
k9.@S
vCFMO3
x86 CPU,Windows,MASM32 `rbTB3?
.386 7xO
=:*
.model flat,stdcall P"XF|*^U
option casemap:none QuT8(s1Q!
;Include 文件定义 % E3
include windows.inc (Z,v)TOXjV
include user32.inc PUuxKW}
includelib user32.lib \WQ\q
\
include kernel32.inc GXYmJ4wR
includelib kernel32.lib 5T:e4U&
;数据段 HIk5Q'e k
.data x5.HdKV
szCaption db 'A MessageBox!',0 ^QpP'
szText db 'Hello,world!',0 2h IM!wQ
;代码段 Uk`ym
.code i'H{cN6
start: {SY@7G]
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK 4fT,/[k?
invoke ExitProcess,NULL J LT10c3
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> =$X5O&E3'
end start lr=? &>MXj
iyB02\d
Ckj2$c~
AWK $.a<b^.Xi
BEGIN { print "Hello, world!" } I+rHb<
P%
_<6
^r
sG=D(n1
BASIC -Ds}kdxw
传统版BASIC(例如GWBASIC): WldlN?[j
=kp#v
10 PRINT "Hello, world!" B:\\aOEj
20 END Pv17wUB
lG I1LUo
或在提示符输入: Aq yR+
IlVz 5#R
?"Hello, world!":END e=<knKc
Q
(+`pEDD{X
现代版BASIC(例如Quick BASIC): %YkJA:
{pH{SRM)B
Print "Hello, world!" mKugb_d?
b|^g51v
以下的语句在Quick BASIC中同样有效: umaF}}-Q{
Dq/_^a/1
? "Hello,world!" '-oS=OrZ
:.e`w#$7
|]1-ck!
BCPL 9]< p
GET "LIBHDR" i,r O3Jn
z#ab
V1
Xi
LET START () BE VCSHq&p8
$( {F6>XuS=u
WRITES ("Hello, world!*N") {Fs}8\ z
$) t~H'Ugv^
)e(Rf!P{
UbNA|`H
Befunge 9^6E>S{=
"!dlrow olleH">v QkS~~|0EI>
, &_Z