“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。
^tTM
7
{MtJP:8Jp
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 eEqcAUn
0*MUe1{
以下是用不同语言写成的Hello World程序的几个例子: w"v96%"Y
Ada 8(? &=>@
with Ada.Text_Io; use Ada.Text_Io; ! Vl)aL
procedure Hello is
l7t
begin (6fD5XtS
Put_Line ("Hello, world!"); 1feVFRx'
end Hello; Sstz_t
BsA4/Bf
R&!;(k0
汇编语言 Wps^wY
:a8Sy("
x86 CPU,DOS,TASM *$cx7yJ
MODEL SMALL =sWK;`
IDEAL 'l<#;{
STACK 100H myo4`oH
H ezbCwsx&
DATASEG U%Fa.bL~
HW DB 'Hello, world!$' +=W(c8~P
BiU>h.4=\(
CODESEG _#~D{91
j:
MOV AX, @data 3uw3[
SR1
MOV DS, AX N!7?D'y
MOV DX, OFFSET HW l(1.Ll
MOV AH, 09H 5B%KiE&p
INT 21H xZ'C(~t
MOV AX, 4C00H o"qxR'V
INT 21H O=K0KOj
END \>\ERVEd
5xc e1[
whN<{AG
x86 CPU,GNU/Linux,NASM >JNdtP8s/1
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). -[*y{K@dh
;Enter this into "hello.asm" then type: 3_RdzW}f
;"nasm -f elf hello.asm" !}}
)f/
;"ld hello.o -o hello" 2?qT,pN
;"./hello" 2a-]TVL3
[#!Y7Ede
section .data ;data section declaration /sYr?b!/<6
msg db 'Hello World!',0AH 8}BM`@MG
len equ $-msg ;string length 1#L%Q(G
E!X>C^
section .text ;code section declaration ,./n@.na
global _start ;entry point (start of execution) 2(uh7#Q
_start: mov edx,len ;string length ;QVTb3Th
mov ecx,msg ;string start |QZ
E
mov ebx,1 ;file handle: stdout _gH$
,.j/
mov eax,4 ;sys_write A p zC
int 80h ;kernel system call _rSwQ<38>
D_(NLC
mov ebx,0 ;return value d v4~CW%Td
mov eax,1 ;sys_exit g\B ?
|%
int 80h ;kernel system call n+
H2cl }
md bi@ms@
SDbkPx
x86 CPU,Windows,MASM32 #HP-ne; #
.386 mY=sh{ir
.model flat,stdcall *|q{(KX
option casemap:none UOj*Gt&
;Include 文件定义 j 0LZ )V
include windows.inc jc3Q3Th/zn
include user32.inc k"=*'
includelib user32.lib 2asRJ97qES
include kernel32.inc O:'qwJ#~
includelib kernel32.lib $J<WFDn9
;数据段 %$Fe[#1
.data ZG +FX:v
szCaption db 'A MessageBox!',0 P@bPdw!JA
szText db 'Hello,world!',0 3{qB<*!p"G
;代码段 "C3J[) qC
.code u-jV@Tz
start: -F(luRBS(W
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK
K#6@sas
invoke ExitProcess,NULL *oLDy1<
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> G'Wp)W;])\
end start ]>Dbta.27
Q e/XEW
+P9eE,WR
AWK r(>812^\
BEGIN { print "Hello, world!" } B&7:=t,m(
!Mgo~h"]#
eU)QoVt
BASIC G]$EIf'
传统版BASIC(例如GWBASIC): UvU@3[fw
$KT)Kz8tF
10 PRINT "Hello, world!" )zy;!
20 END @#^Y#
rxb
"Uf1;;b
或在提示符输入: "J*>g(H53
Af@\g-<W_
?"Hello, world!":END @+nCNXK
9,&xG\z=
现代版BASIC(例如Quick BASIC): gB%"JDn8
]Ar,HaX-
Print "Hello, world!" RnC+]J+?4
E 6MeM'sx
以下的语句在Quick BASIC中同样有效: J8@.qC'!
>\~Er@
? "Hello,world!" "*`!.9pt
2z$!}
kVCWyZh4
BCPL T12Zak4.=
GET "LIBHDR" B1Pi+-t
/oJ &