假设一个ฐ文件一个ฐ很小文件包括三个16位数—例如,向堆栈中放入数据叫作push压入。为motorola处,输出才为1,其中低字节在前。由
当然。5a48๖h、78๖bຘfh和f510่,
世界范围内的即时通信。但它是当今新技
,并使用a、b、c中原有的值。
操作码代码
add20่h
naທnd01
注意,与非门的输出与与门恰恰相反。对与门而言,当两个输入都为1时,这是存储&;从堆栈中取走数据叫作pop弹出,
要回到先前的程序;远距离通信则ท要花时间用信件通过马车、火车或者轮船的方แ式来实现。
begin
print'thisismyfistalgolprogram!';
ende
可以用algol编译程序来编译firstalg程序,
algo&:操作如下:
line3๑:unre9de'
algol对拼写的挑剔不亚于传统的英语教师。在输入程序时若拼错了单词end,当它碰到ende时。编译程
序,它希望那是它可以识别的关键字。
修改了错误以后,可以再运行algol编译程序。有时,编译程序会直接生成一个可执行
文件名为firstcom,或者是ms-dos下的firstexe;有时,还需要进行另一个步骤。
无论怎样,你都可以从命令行运行first程序:
第24章高级语言和低级语言255๓
下载
first
first程序的响应是显示:
thisismyfistaທlgolprograທm!
糟糕!还有一个拼写错误。这是一个编译程序不能现的错误,因此,称为运行时错误
run-timeerror—即只在运行程序时才出现的错误。
可以看出,在该algol程序中,print语句在屏幕上显示一些内容,本例是一行文本因
此,这个algol程序等效于本章前面9๗t语句实际上并不是algol
语言正式定义的一部分,这里只假设正在用的这个aທlgol编译程序包含有这样一个实用工ื具,
有时称作内部ຖ函数。print语句—就像许多algol语句除bຘegin和end外一样—后面必
须跟引号。print语句向里缩进不是必须的,只不过使得程序结构更清晰。
假设要编写一个程序计算两ä个数的乘๖法。每一个程序设计语言都有变量这个概ฐ念。在程
序中ณ,变量名可以为一个字母、一个ฐ短的字母序列ต,甚至为ฦ一个短词。实际上,变量对应于
一个内存单元,但在程序中是通过名字来引用的,并不是通过内存地址。下面这个程序有3๑个
变量,名为a、b和c:
begin
reala,b,c;๙
a:=535๓43;
b:=9๗771;
c:=axbຘ;
print'theprodu9d',ไb,'is',ไc;
end
real语句是说明语句,用来表明程序中要说明的变量。本例中,变量aທ、b、cນ是实数或浮
点数algol也支持关键字integer,用来说明整型变量。通常,程序设计语言要求变量名
以字母开头。只要第一个ฐ字符是字母,变量名可以包含数字,但不能包含空格及许多其他字
符。通常编译程序要限制变量名的长度。本章的例子都采用一个字母作为变量名。
如果使用的algol编译程序支持ieee浮点数标准,则程序中的3个变量都需要4个字节的
存储空间对单精度数或8个字节的存储空间对双精度数。
接下来的三个语句是赋值语句。在algol中,赋值语句定义为ฦ冒号后紧跟等号。在许
多计算机语言中,赋值语句只需用等号。赋值语句的左边是变量,右边是表达式。前两ä个赋
值语句是给aທ和bຘ赋给一个ฐ值,第三个赋值语句中变量c的值由变量a和b产生。
今天,在程序设计语言中ณ,大家熟悉的x乘号通常不允许使用,因为ฦ它不属于ascii
码和ebcdic的字符集。许多程序设计语言用星号表示乘法。虽然algol用斜杠
表示除法,但也包括一个除号÷表示整数除法,即表明被除数中有多少倍的除数。
aທlgol中也定义了箭头↑,这是另一个非ascນii码字符,用来表示ิ乘๖方。
最后是用来显示的print语句。本例中即有文本又有变量,它们用逗号隔开。显示ิascii字
符可能并不是print语句的主要工作,本例中ณ,它的功能还包括把浮点数转换成aທscນii码:
theprodu9d97๕11้is15๓5152๐08๖653
接着程序终止,返回到操作系统。
如果想乘๖另外两个数,则需要修改程序,改变数,重新编译,再运行。可以利ำ用一个名
为read的内置函数来避免这种频๗繁的重新编译工作:
256编码的奥秘
下载
begin
reala,bຘ,c;
print'enterthefirstnumbຘer:';
reada;
print'ูenterthe色9๗umber:';๙
readb;๙
c:๘=axbຘ;
print'theprodu9d',b,'ูis',cນ;
end
reaທd语句从键盘读入ascii码字符并转换成浮点数。
高级语言中ณ一个非常重要的结构是循环。循环使得同一段程序依据一个变量的多个不同
的值来运行。假设有一段程序用来计算3๑、5、7๕和9的立方,就可以这样做:
begin
reaທlaທ,b;
foraທ:=3,5๓,7,ไ9do
begin
b:=aທxaxa;
print'thecubeof',a,ไ'is'ู,bຘ;
end
end
for语句设置变量a的初值为3,然后执行do关键字以后的语句。如果要执行的语句不止一条
本例中ณ正是如此,则这些语句必须包括在begin和end之间,这两个关键字定义แ了一个语句