“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。 x(}@se
u;J9aKD
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 9{?<.%
24>{T5E
以下是用不同语言写成的Hello World程序的几个例子: j?3J-}XC
Ada ?^5W.`Y2i
with Ada.Text_Io; use Ada.Text_Io; ps_CQh0
procedure Hello is ib*$3Fn~
begin 5"]PwC
Put_Line ("Hello, world!"); R qOEQ*k
end Hello; SL>>]A,E<`
>c8zMd
$bD 3
汇编语言 ;x|4Tm
Js'COO
x86 CPU,DOS,TASM Xl@nv9m
MODEL SMALL "JbFbcj
IDEAL GcHWalm
STACK 100H Uiv;0Tovl
g}L2\i688
DATASEG VOp8 ,!
HW DB 'Hello, world!$' %U-KQI0
!A&Vg #
CODESEG O/iew3YF
MOV AX, @data Xj?j1R>GB
MOV DS, AX DM~Q+C=Yr
MOV DX, OFFSET HW nNq| v=L
MOV AH, 09H ,K8PumM_
INT 21H Bn}@wO
MOV AX, 4C00H q yQPR
INT 21H ^V_vpr]}P
END z2wR]G5!
Op\l
BY32)8SH
x86 CPU,GNU/Linux,NASM /p?h@6h@y
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). R8O<}>3a
;Enter this into "hello.asm" then type: ~$YFfv>
;"nasm -f elf hello.asm" :q0C$xF
;"ld hello.o -o hello" I `p44}D3
;"./hello" b;Q
cBGwKT
HaJD2wvr
section .data ;data section declaration !>
msg db 'Hello World!',0AH %fK"g2:
len equ $-msg ;string length r]kLe2r:B
1!0BE8s"@
section .text ;code section declaration d+[hB4!l2
global _start ;entry point (start of execution) YmNBtGhT
_start: mov edx,len ;string length J[RQF54qA{
mov ecx,msg ;string start O9:vPbn
mov ebx,1 ;file handle: stdout @;JT }R H-
mov eax,4 ;sys_write !N?|[n1
int 80h ;kernel system call `b# w3 2
P=(\3ok
mov ebx,0 ;return value SI8mr`gJ
mov eax,1 ;sys_exit _+.z2} M
int 80h ;kernel system call .ye5;A}
r6*0H/*
i,$*+2Z
x86 CPU,Windows,MASM32 D{PO!WzW
.386 u` R
.model flat,stdcall xa5I{<<U
option casemap:none D.)R8X
;Include 文件定义 `cMa Fc-y/
include windows.inc ^A;v|U
include user32.inc +8mfq\Y1
includelib user32.lib )u(`s `zd
include kernel32.inc .lOEQLt
includelib kernel32.lib "otP^X.
;数据段 $ [M8G
.data Cf@WjgR
szCaption db 'A MessageBox!',0 <?2[]h:wp
szText db 'Hello,world!',0 \
Lrg:
;代码段 0Eo*C9FP~
.code 57%:0loW
start: *-ZJF6
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK !H~G_?Mf\O
invoke ExitProcess,NULL Q~ te`
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> uRxo,.}c
end start RVlC8uJ;P
Mpb|qGi!
mWfzL'*
AWK Ub4j3`
BEGIN { print "Hello, world!" } j]M$>2;
<