“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。 "@`M>)*o
Z(U&0GH`
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 &+%CC
/Tv<
l
以下是用不同语言写成的Hello World程序的几个例子: t@)~{W
{
Ada 'fK_J}+P
with Ada.Text_Io; use Ada.Text_Io; :~6%nFo
procedure Hello is AZ!G-73
begin |Zkcs]8M!
Put_Line ("Hello, world!"); !K`;fp!
end Hello; Xb6@;G"
$o]suF;3
EXb{/4
汇编语言 B%'Np7
zU1rjhv+
x86 CPU,DOS,TASM vi lNl|
MODEL SMALL 3PBg3Y$
IDEAL !gJAK<]iW
STACK 100H R<JI
4.??U!r>KI
DATASEG = ng\
HW DB 'Hello, world!$' EcwHO
e(!a~{(kq%
CODESEG =X% D;2
MOV AX, @data ;Oe6SNquT
MOV DS, AX ^Ko0zz|R/
MOV DX, OFFSET HW %}$6#5"';
MOV AH, 09H .fQDj{
INT 21H TzX>d<x
MOV AX, 4C00H \6C"bQ
INT 21H [vV-0Lx"
END yd>kJk^~/
Z\dILt:#z
XUMCz7&j
x86 CPU,GNU/Linux,NASM Or6'5e?N
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). a#G7pZX/I}
;Enter this into "hello.asm" then type: 5{cAawU.
;"nasm -f elf hello.asm" qZ8lU
;"ld hello.o -o hello" X
Phw0aV
;"./hello" _$Z46wHmB
Do2y7,jv
section .data ;data section declaration
<_42h|-
msg db 'Hello World!',0AH Q^0K8>G^
len equ $-msg ;string length c}rRNS$F
D:.^]o[
section .text ;code section declaration -AcQ_dS
global _start ;entry point (start of execution) U*1~Zf
_start: mov edx,len ;string length bS0^AVA
mov ecx,msg ;string start
QouTMS-b
mov ebx,1 ;file handle: stdout /B}]{bcp$
mov eax,4 ;sys_write Fb-NG.Z#
int 80h ;kernel system call LM*9b
+.>O%pNj
mov ebx,0 ;return value z!RA=]3h
mov eax,1 ;sys_exit :()4eK/\
int 80h ;kernel system call wBeOMA
&dOV0y_
45ct*w
x86 CPU,Windows,MASM32 ^Jc~G~x4*
.386 w8@MUz}/#
.model flat,stdcall XtQ3$0{*%
option casemap:none 6EPC$*Xp!
;Include 文件定义 drb_GT
include windows.inc u6 B (f;
include user32.inc Zc%S`zK`7
includelib user32.lib urtcSq&H'
include kernel32.inc PT\5P&2o@
includelib kernel32.lib >8>.o[Q&
;数据段 )FU4i N)ei
.data dIM:U:c
szCaption db 'A MessageBox!',0 7&HP2r
szText db 'Hello,world!',0 @?e;Jp9
;代码段 lzxn} TO}
.code o8Bo%OjE
start: SkPv.H0Id
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK ODEy2).
invoke ExitProcess,NULL [ >vS+G
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> y& Dd
end start 8mCr6$|%
ybYSz@7
]FFU,me2
AWK /Ee0S8!Z!1
BEGIN { print "Hello, world!" } 2<