“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。 st{:]yTRk
9K#.0
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 MCurKT<pQ
1ScfX\F=
以下是用不同语言写成的Hello World程序的几个例子: BNyDEFd
Ada nv{ou[vQ
with Ada.Text_Io; use Ada.Text_Io; L -b~#
procedure Hello is $B~a*zZ7
begin CUnZ}@?d
Put_Line ("Hello, world!"); 'h O+ b
end Hello; z Rz#0
C0 .Xp
c500:OSB
汇编语言 To]WCFp6@
B6 x5E
x86 CPU,DOS,TASM {AO3o<-h
MODEL SMALL
3cT
IDEAL b[uTt'p}
STACK 100H ZB`!@/3X
n j;
KnZ
DATASEG n >xhT r<
HW DB 'Hello, world!$' V3yO_Iqa
D@[$?^H
CODESEG x)BG%{h
MOV AX, @data dWR?1sV|e
MOV DS, AX n-Dr/c4
MOV DX, OFFSET HW 1Lqs>*
MOV AH, 09H 6:v8J1G(<
INT 21H 4J!1$
MOV AX, 4C00H QDBptI:
INT 21H bTA<AoW9="
END aMm`G}9n
&4O"Xs`ka
OMJr.u
x86 CPU,GNU/Linux,NASM S&_ZQLiQ$
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). _]j=[|q 9
;Enter this into "hello.asm" then type: cn<9!2a
;"nasm -f elf hello.asm" `WWf?g
;"ld hello.o -o hello" Vn];vN
;"./hello" VY=~cVkzS
~ZG>n{Q
section .data ;data section declaration K._1sOw'"Y
msg db 'Hello World!',0AH ,{J2i#g<
len equ $-msg ;string length
6C
r$R]5
SK;f#quUQ
section .text ;code section declaration PM9HfQU?
global _start ;entry point (start of execution) m( B6FPjr
_start: mov edx,len ;string length L
nw+o}
mov ecx,msg ;string start ,m3AVHa*G
mov ebx,1 ;file handle: stdout 5w}xjOYIjV
mov eax,4 ;sys_write -|J?-
int 80h ;kernel system call "N4c>2Q
xqP0Z),Ow
mov ebx,0 ;return value BAzc'x&<
mov eax,1 ;sys_exit -W! g>^.
int 80h ;kernel system call "
8;D^
/Klwh1E
p"q-sMYl
x86 CPU,Windows,MASM32 LFen!FnM
.386 B^h]6Z/O
.model flat,stdcall eFsku8$<
option casemap:none oWs&W
;Include 文件定义 Y8\Ms^rz
include windows.inc \Q^\z
include user32.inc q?}G?n4
includelib user32.lib SkvKzV.R;
include kernel32.inc Cgq9~U !
includelib kernel32.lib 3AWB Y.
;数据段 <Y~V!9(~{Q
.data YV!!bI
szCaption db 'A MessageBox!',0 }!n<L:njX
szText db 'Hello,world!',0 {sX*SbJt
;代码段 ? 1Z\=s
.code :JW~$4
start: O~'1)k>
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK HFo}r~
invoke ExitProcess,NULL ~+CNED0z+
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 8f8+3
end start -7=pb#y
5wGyM10
ip1jY!
AWK bpUN8BI[T
BEGIN { print "Hello, world!" } ;pAkdX&b