“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。 1Na CGD"
yu#Jw
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 kt[#@M!}
6 Y&OG>_\
以下是用不同语言写成的Hello World程序的几个例子: ' AeU
Ada n9bX[+#d
with Ada.Text_Io; use Ada.Text_Io; ji A$6dZU
procedure Hello is 3WPMS/
begin VxjHB?)
Put_Line ("Hello, world!"); &9o @x]) @
end Hello; AKa{C
f
#A:I|Q 1$g
xd(AUl4qY
汇编语言 k]R O=/ ?M
L4Nk+R;
x86 CPU,DOS,TASM zG [-n.
MODEL SMALL 'G-VhvMv
IDEAL .vG6\U7
STACK 100H BqR;d
z+wV(i97
DATASEG 1)u=&t,
HW DB 'Hello, world!$' )/
s9ty
rxP^L(q0*
CODESEG
(y~da~
MOV AX, @data *>_:E6)
MOV DS, AX bnD>/z]E
MOV DX, OFFSET HW bI]1!bi]i
MOV AH, 09H Q=e?G300#L
INT 21H H@G7oK
MOV AX, 4C00H O;H/15j:sK
INT 21H -uv1$|
END ocdXzk`
{zVJlJKxs
Oo7n_h1
x86 CPU,GNU/Linux,NASM G92=b*x/
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). Aba6/
;Enter this into "hello.asm" then type: YXV![gw0
;"nasm -f elf hello.asm" OE4 2{?)
;"ld hello.o -o hello" s<<vHzm
;"./hello" z W+wtYV4
,0-
section .data ;data section declaration tp 5]n`3rD
msg db 'Hello World!',0AH "DRp4;
len equ $-msg ;string length F<'g6f
)x( *T
section .text ;code section declaration lV]l`$XI
global _start ;entry point (start of execution) 'J!P:.=a>
_start: mov edx,len ;string length jS R:ltd
mov ecx,msg ;string start *:YW@Gbm
mov ebx,1 ;file handle: stdout SvI
mov eax,4 ;sys_write zKT \i
int 80h ;kernel system call N66jFRA;x
|2n2
mov ebx,0 ;return value >{m>&u;Cc
mov eax,1 ;sys_exit 0Fbq/63
int 80h ;kernel system call rTmcP23]
@Ki`g(],P
G4g},p!
x86 CPU,Windows,MASM32 3*8#cSQ/6o
.386 <~:
g
.model flat,stdcall _^SNI ~
option casemap:none X-n'?=
;Include 文件定义 m1+DeXR_g
include windows.inc W9eR3q
include user32.inc !>>$'.nb@~
includelib user32.lib L
Q;JtLu1
include kernel32.inc ]&}?J:+?0E
includelib kernel32.lib <Xl G :nmY
;数据段 YciZU
.data )Xg#x:
szCaption db 'A MessageBox!',0 60`y= !?f
szText db 'Hello,world!',0 Ma{|+\Q.Z
;代码段 t`F%$q
.code 2H]&3kM3X
start: B623B HwS
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK &<!I]:Y
invoke ExitProcess,NULL >TL0hBaaR
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> VaQ}XM
end start [bGdg
Q^mJ _~
hTg%T#m
AWK Kx<