必威电竞|足球世界杯竞猜平台

B語言
來源:互聯(lián)網(wǎng)

1970年,B語言是貝爾實(shí)驗(yàn)室員工肯·湯普遜以BCPL(基本組合程序設(shè)計(jì)語言)為基礎(chǔ),設(shè)計(jì)并創(chuàng)新出一種非常簡單且易于操作計(jì)算機(jī)硬件的高級語言。然后他用B語言編寫了操作系統(tǒng) unix。1972年,丹尼斯·里奇在B語言的基礎(chǔ)上設(shè)計(jì)出了c語言

簡介

B語言是貝爾實(shí)驗(yàn)室開發(fā)的一種通用的程序設(shè)計(jì)語言,是一種無類型語言,所有的數(shù)據(jù)都和機(jī)器字相對應(yīng),并且程序員可以直接通過內(nèi)存地址操作內(nèi)存。B語言最初在DEC的PDP-7和PDP-11小型機(jī)的早期Unix版本和Honeywell機(jī)器的GCOS系統(tǒng)上實(shí)現(xiàn)。

B語言的無類型特性使得其在PDP-11機(jī)器上無法以比較優(yōu)雅的方式訪問字符類型,因而從1971年開始,Dennis Ritchie開始對B語言進(jìn)行改造,其中最重要的是引入了數(shù)據(jù)類型的概念,這些改造最終使B語言演化為了計(jì)算機(jī)發(fā)展歷史上最為重要的編程語言——c語言

時(shí)至今日,除了在一些古老的大型機(jī)或是特殊的嵌入式平臺上,B語言已經(jīng)芳蹤難覓了。但B語言在編程語言發(fā)展歷史上重要的承前啟后的里程碑地位,卻將永遠(yuǎn)為人們銘記。

演變歷史

B語言是從BCPL系統(tǒng)中刪減了肯·湯普遜認(rèn)為非必備的組件以便能運(yùn)行在當(dāng)時(shí)的小型計(jì)算機(jī)上而產(chǎn)生的。B語言還包括了湯普遜的一些個(gè)人偏好(主要在一些特定的程序中減少非空格字符的數(shù)量)。

和BCPL以及Forth類似,B語言只有一種數(shù)據(jù)類型,計(jì)算機(jī)字。大部分操作將其作為整數(shù)對待(例如進(jìn)行+、-、*、/操作),但其余操作將其作為一個(gè)復(fù)引用的內(nèi)存地址。在許多方面B語言更像是一個(gè)早期版本的c語言,它還包括了一些庫函數(shù),其作用類似于C語言中的標(biāo)準(zhǔn)輸入/輸出函數(shù)庫。

實(shí)際示例

下面是來自Ken Thompson的B語言用戶手冊的例子:

/* The following 函數(shù) will print a non-negative number, n, to

the base b, where 2<=b<=10, This routine uses the fact that

in the ANSCII character set, the digits 0 to 9 have sequential

code values. */

printn(n,b) {

extrn putchar;

auto a;

if(a=n/b) /* assignment, not test for equality */

printn(a, b); /* recursive */

putchar(n%b + '0');

}

參考資料 >

生活家百科家居網(wǎng)