“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。 { im?tZ,
GuR^L@+ -.
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 erEB4q+ #O
wz`% (\
以下是用不同语言写成的Hello World程序的几个例子: j;`Q82V\
Ada V0,JTWc
with Ada.Text_Io; use Ada.Text_Io; P-4$Qksx
procedure Hello is z)C/U
begin G]rY1f0
Put_Line ("Hello, world!"); QNx]8r
end Hello; D8L5t<^1R
i-v: %
62R";# K
汇编语言 5eff3qrH{
H^n@9U;[K
x86 CPU,DOS,TASM ny13+Q`^
MODEL SMALL A|f6H6UUx
IDEAL hxL?6mhY
STACK 100H CHKhJ v3+4
[oU\l+t
DATASEG bfz7t!A)A
HW DB 'Hello, world!$' n5d8^c! 2
SDC|>e9i
CODESEG {OPEW`F
MOV AX, @data G%bv<_R
MOV DS, AX 9{;L7`<
MOV DX, OFFSET HW ~_EDJp1J
MOV AH, 09H +I3Vfv
INT 21H Zu|NF
uFI
MOV AX, 4C00H oIick
INT 21H iRrUIWx
END \09A"fs{
_|M8xI
O +o)z6(
x86 CPU,GNU/Linux,NASM DK?aFSf\
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). 95'+8*YCY
;Enter this into "hello.asm" then type: 9k;,WU(K<
;"nasm -f elf hello.asm" Jd7chIK
;"ld hello.o -o hello" A^z{n/DiL
;"./hello" 3*</vo#`
D?_K5a&v,
section .data ;data section declaration b+qd'
,.Z
msg db 'Hello World!',0AH 9 o,`peH
len equ $-msg ;string length htbE
Q NW
Cik1~5iF
section .text ;code section declaration p48enH8CO
global _start ;entry point (start of execution) X\;:aRDS
_start: mov edx,len ;string length rn)Gx25
mov ecx,msg ;string start E\/[hT
mov ebx,1 ;file handle: stdout ;:bp?(
mov eax,4 ;sys_write flPS+
int 80h ;kernel system call 'l5
aC}\`.Kb
mov ebx,0 ;return value iz-z?)%
mov eax,1 ;sys_exit U2YY
int 80h ;kernel system call 'EIe5Op
b_ TI_
f\oW<2k]~
x86 CPU,Windows,MASM32 60%nQhb
.386 OS#aYER~/
.model flat,stdcall 7k*
option casemap:none s\ C ,5
;Include 文件定义 =.8n K
y
include windows.inc !nl-}P,
include user32.inc b, a7XANsh
includelib user32.lib *>W<n1r@]
include kernel32.inc `\VtTS
includelib kernel32.lib :7 LA/j
;数据段 2Jt{oh |
.data t4UK~ {gh
szCaption db 'A MessageBox!',0 ;7s^slVzF
szText db 'Hello,world!',0 Zy7kPL;b
;代码段 7_ oUuNw
.code %mss{p!d6
start: DRm`y>.
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK %WU=Vy 4
invoke ExitProcess,NULL ^|Z'}p|&
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> v`K%dBa
end start {g nl6+j
~4+Y BN
me2vR#
AWK L[2N zwO
BEGIN { print "Hello, world!" } n`Z}tQ%)o
[c=Wp
-}<Ru)
BASIC EpF9&