首页 > 汉语言文学> 外国文学史
题目内容 (请给出正确答案)
[主观题]

Computer Languages 计算机语言 A computer must be given instructions in a language that it understa

Computer Languages

计算机语言

A computer must be given instructions in a language that it understands, that is, a particular pattern of binary digital information. On the earliest computers, programming was a difficult, laborious task, because vacuum tube ON/OFF switches had to be set by hand. Teams of programmers often took days to program simple tasks, such as sorting a list of names. Since that time a number of computer languages have been devised, some with particular kinds of functioning in mind and others aimed more at ease of use-the user-friendly approach.

Machine Language

Unfortunately, the computer's own binary based language, or machine language, is difficult for humans to use. The programmer must input every command and all data in binary form, and a basic operation such as comparing the contents of a register to the data in a memory chip location might look like this: 11001010 00010111 11110101 00101011. Machine language programming is such a tedious, time-consuming task that the time saved in running the program rarely justifies the days or weeks needed to write the program.

Assembly Language

One method programmers devised to shorten and simplify the process is called assembly language programming. By assigning a short (usually three letter) mnemonic code to each machine language command, assembly language programs could be written and-debugged-cleaned of logic and date errors-in a fraction of the time needed by machine language programmers. In assembly language, each mnemonic command and its symbolic operands equals one machine instruction. An assembler program translates the mnemonic opcodes (operation codes) and symbolic operands into binary language and executes the program. Assembly language is a type of low level computer programming language in which each statement corresponds directly to a single machine instruction. Assembly languages are, thus, specific to a given processor. After writing an assembly language program, the programmer must use the assembler language into machine code. Assembly language provides precise control of the computer, but assembly language programs written for one type of computer must be rewritten to operate on another type. Assembly language might be used instead of a high levcl language for any of three major reasons: speed, control, and preference. Programs written in assembly language usually run faster than those generated by a compiler; use of assembly language lets a programmer interact directly with the hardware (processor, memory, display, and input/output ports). Assembly language, however, can be used only with one type of CPU chip or microprocessor. Programmers who expended much time and effort to learn how to program one computer had to learn a new programming style each time they worked on another machine. What was needed was a shorthand method by which one symbolic statement could represent a sequence of many machine language instructions, and a way that would allow the same program to run on several types of machines. These needs led to the development of so-called high level languages.

High Level Languages

High level languages often use English-Iike words-for example, LIST, PRINT, OPEN, and so on-as commands that might stand for a sequence of tens or hundreds of machine language instructions. The commands are entered from the keyboard or from a program in memory or in a storage device, and they are interpreted by a program that translates them into machine language instructions.

Translator programs are of two kinds: interpreters and compilers. With an interpreter, programs that loop back to reexecute part of their instructions reinterpret the same instructions each time it appears, so interpreted programs run much more slowly than machine language programs. Compilers, by contrast, translate an entire program into machine language prior to execution, so such programs run as rapidly as though they were written directly in machine language.

American computer scientist Grace Hopper is credited with implementing the first commercially oriented computer language. After programming an experimental computer at Harvard University[1], she worked on the UNIVAC[2]I and II computers and developed a commercially usable high level programming language called FLOW MATIC to facilitate computer use in scientific applications. IBM[3]then developed a language that would simplify work involving complicated mathematical formulas. Begun in 1954 and completed in 1957, FORTRAN (FORmula TRANslator)[4]was the first comprehensive high level programming language that was widely used. In 1957, the Association for Computing Machinery[5]set out to develop a universal language that would correct some of FORTRAN' s perceived faults. A year later, they released ALGOL[6](ALGOrithmic Language), another scientifically oriented language; widely used in Europe in the 1960s and 1970s, it has since been superseded by newer languages, while FORTRAN continues to be used because of the huge investment in existing programs. COBOL[7](COmmon Business Oriented Language), a commercial and business programming language, concentrates on data organization and file handling and is widely used today in business.

BASIC[8](Beginners All-purpose Symbolic Instruction Code) was developed at Dartmouth College in the early 1960s for use by nonprofessional computer users. The language came into almost universal use with the microcomputer explosion of the 1970s and 1980s. Condemned as slow, inefficient, and inelegant by its detractors, BASIC is nevertheless simple to learn and easy to use. Because many early microcomputers were sold with BASIC built into the hardware (in ROM memory) the language rapidly came into widespread use. As a very simple example of a BASIC program, consider the addition of the numbers 1 and 2, and the display of the result. This is written as follows (the numerals 10-40 are line numbers):

10 A=1

20 B=2

30 C=A+B

40 PRINT C

Although hundreds of different computer languages and variants exist, several others deserve mention. PASCAL[9], originally designed as a teaching tool, is now one of the most popular microcomputer languages. LOGO was developed to introduce children to computers. C, a language Bell Laboratories designed in the 1970s, is widely used in developing systems programs, such as language translators. LISP[10]and PROLOG are widely used in artificial intelligence.

COBOL

COBOL, in computer science, acronym for COmmon Business-oriented language, is a verbose, English-like programming language developed between 1959 and 1961. Its establishment as a required language by the U. S. Department of Defense, its emphasis on data structures. and its English-like syntax (compared to those of FORTRAN and ALGOL) led to its widespread acceptance and usage, especially in business applications. Programs written in COBOL, which is a compiled language, are split into four divisions: Identification, Environment, Data, and Procedure. The Identification division specifies the name of the program and contains any other documentation the programmer wants to add. The Environment division specifies the computer(s) being used and the files used in the program for input and output. The Data division describes the data used in the program. The Procedure division contains the procedures that dictate the actions of the program.

C & C++

A widely used programming language, C was developed by Dennis Ritchie at Bell Laboratories in 1972; it was so named because its immediate predecessor was the B programming language. Although C is considered by many to be more a machine independent assembly language than a high level language, its close association with the UNIX[11]operating system, its enormous popularity, and its standardization by the American National Standards Institute (ANSl)[12]have made it perhaps the closest thing to a standard programming language in the microcomputer/workstation marketplace. C is a compiled language that contains a small set of built in functions that are machine dependent. The rest of the C functions are machine independent and are contained in libraries that can be accessed from C programs. C programs are composed of one or more functions defined by the programmer; thus, C is a structured programming language. C+ +, in computer science, is an object oriented version of the C programming language, developed by Bjarne Stroustrup in the early 1980s at Bell Laboratories and adopted by a number of vendors, including Apple Computer, Sun Microsystems, Borland International, and Microsoft Corporation.

Notes

[1]Harvard University:美国哈佛大学。

[2]UNIVAC(Universal Automatic Computer):通用自动计算机。

[3]IBM(International Business Machine Corp):国际商用机器公司。

[4]FORTRAN(FORmula TRANslator):公式翻译程序设计语言。

[5]the Association for Computing Machinery:计算机协会(美国)。

[6]ALGOL(ALGOrithmic Language):面向代数的语言。

[7]COBOL(Common Business Oriented Language):面向商业的通用语言。

[8]BASIC(Beginners All-purpose Symbolic Instruction Code):初学者通用符号指令码。

[9]PASCAL(Philips Automatic Sequence Calculator):菲利浦自动顺序计算机语言。

[10]LISP(List Process):表处理程序,或表处理语言。

[11]UNIX(Uniplexed Information and Computer Systems):UNIX操作系统,1969年在

AT&T Bell实验室开发的多用户多任务操作系统。

[12]ANSI(American National Standards Institute):美国国家标准学(协)会。

查看答案
答案
收藏
如果结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能还需要:
您的账号:
发送账号密码至手机
发送
安装优题宝APP,拍照搜题省时又省心!
更多“Computer Languages 计算机语言 A com…”相关的问题
第1题
People haven't developed a lot on computer languages in the past five years.
点击查看答案
第2题
Children are rulers ______.A.in the traditional senseB.within the boundaries of LOGO's wor

Children are rulers ______.

A.in the traditional sense

B.within the boundaries of LOGO's world

C.with all computer languages and programs

D.in the adult world

点击查看答案
第3题
Around 1960, computer software is greatly improved and the first programming languages app
eared.

此题为判断题(对,错)。

点击查看答案
第4题
The best title for this passage would be ______.A.Children Rule the WorldB.Children Learn

The best title for this passage would be ______.

A.Children Rule the World

B.Children Learn Reasoning Using LOGO

C.Computer Languages

D.The Unreal World of the Child and the Computer

点击查看答案
第5题
将下列英语译成中文(只可使用词典): Programming Languages Ten years ago the proliferation of program

将下列英语译成中文(只可使用词典):

Programming Languages

Ten years ago the proliferation of programming languages caused many people to foresee the development of a computer-age Babel where, in total ignorance of every other language, each programmer would learn only his own chosen language. That unhappy situation has not occurred for several reasons. First, effective efforts have been made to standardize particular languages such as Fortran and Cobol. It should be pointed out that pragmatic rather than scientific considerations motivated this standardization movement. However, the second reason that Babel has been averted is that computer scientists have begun to apply the scientific method to organize the classification, comparison, and appreciation ofvarious programming languages.

Due to the efforts of McCarthy (1962), Landin (1964), Strachey (1966), Wegner (1968), and others who provided insight into operational models of computation, we can now evaluate programming languages in terms of an unifying view of computation structures. Semantics and the expressive power resulting from modularity can now be studied in terms of the data structures and the accessing paths to them established during the execution of the control statements of the language.

Integrated Software

Convenience and saved time, work, and effort are the promises ofintegrated software. The antithesis of stand-alone packages, integrated software delivers a collection of applications based upon a common user interface and sharable data.

In its most common form, the integrated product includes a word processor,a spreadsheet, and some form of database. Many packages add telecommunications, presentation graphics, and outline modules. Comprehensive products throw in desktop accessories such as calculators, calendars, DOS shells, and other utilities.

Even when stand-alone products are from the same vendor, it can be frustrating trying to move information between applications or simply trying to remember which key to press to call up the menu, That is why integrated packages appeal to many users, particularly novices. Using an integrated product saves you the headache of trying to move data in a Brand X word processor to a Brand Y spreadsheet. And because the integrated package is a single product from a single vendor, training, support, and upgrades also are made simpler. [试题解析]

点击查看答案
第6题
Traditional grammar was initially based on European languages, particularly on Latin and Greek.()
Traditional grammar was initially based on European languages, particularly on Latin and Greek.()

A、正确

B、错误

点击查看答案
第7题
Do you know any other foreign languages ______French?A.butB.exceptC.besidesD.beside

Do you know any other foreign languages ______French?

A.but

B.except

C.besides

D.beside

点击查看答案
第8题
Although only of __________ intelligence, he speaks four languages fluently.

A. average

B. middle

C. mean

D. normal

点击查看答案
第9题
I think foreign languages are_____ than science.A. interestingB. the interestingC. more

I think foreign languages are_____ than science.

A. interesting

B. the interesting

C. more interesting

D. most interesting

点击查看答案
第10题
Evolution of Computer Architecture 计算机体系的演变 The study of computer architecture involves bo

Evolution of Computer Architecture

计算机体系的演变

The study of computer architecture involves both hardware organization and programming/software requirements. As seen by an assembly language programmer, computer architecture is abstracted by its instruction set, which includes operation codes (opcode for short), addressing modes, registers, virtual memory, etc.

Legends:

I/E: Instruction Fetch and Execute

SIMD: Single Instruction Streams and Multiple Data Streams

MIMD: Multiple Instruction Streams and Multiple Data Streams Figure 1Tree Showing Architectural Evolution from Sequential Scalar Computers to Vector Processors and Parallel Computers

From the hardware implementation point of view, the abstract machine is organized with CPUs, caches, buses, microcodes, pipelines, physical memory, etc. Therefore, the study of architecture covers both instruction-set architectures and machine implementation organizations.

Over the past four decades, computer architecture has gone through evolutional rather than revolutional changes. Sustaining features are those that were proven performance deliverers, we started with the Von Neumann architecture[1]built as a sequential machine executing scalar data. The sequential computer was improved from bit-serial to word- parallel operations, and from fixed-point to floating-point operations. The Von Neumann architecture is slow due to sequential execution of instructions in programs.

Lookahead, Parallelism and Pipelining[2]

Lookahead techniques were introduced to prefetch instructions in order to overlap I/E (instruction fetch/decode and execution)[3]operations and to enable functiorial parallelism. Functional parallelism was supported by two approaches: One is to use multiple functional units simultaneously, and the other is to practice pipelining at various processing levels.

The latter includes pipelined instruction execution, pipelined arithmetic computations, and memory-access operations. Pipelining has proven especially attractive in performing identical operations repeatedly over vector data strings. Vector operations were originally carried out implicitly by software-controlled looping using scalar pipeline processors.

Flynn's Classification[4]

Flynn introduced a classification of various computer architectures based on notions of instruction and data streams in 1972. Conventional sequential machines are called SISD (single instruction stream over a single data stream)[5]computers. Vector computers are equipped with scalar and vector hardware or appear as SIMD (single instruction stream over multiple data streams)[6]machines. Parallel computers are reserved for MIMD (multiple Instruction streams over multiple data streams)[7]machines.

An MISD (multiple instruction streams and a single data steam)[8]machines are modeled. The same data stream flows through a linear array of processors executing different instruction streams. This architecture is also known as systolic arrays for pipelined execution of specific algorithms.

Of the four machine models, most parallel computers built in the past assumed the MIMD model for general-purpose computations. The SIMD and MISD models are more suitable for special-purpose computations. For this reason, MIMD is the most popular model, SIMD next, and MISD the least popular model being applied in commercial machines.

Parallel Computers

Intrinsic parallel computers are those that execute programs in MIMD mode. There are two major classes of parallel computers, namely, shared-memory multiprocessors and message-passing multicomputers. The major distinction between multiprocessors and multicomputers lies in memory sharing and the mechanisms used for interprocessor communication.

The processors in a multiprocessor system communicate with each other through shared variables in a common memory. Each computer node in a multicomputer system has a local memory, unshared with other nodes. Interprocessor communication is done through message passing among the nodes.

Explicit vector instructions were introduced with the appearance of vector processors. A vector processor is equipped with multiple vector pipelines that can be concurrently used under hardware or firmware control. There are two families of pipelined vector processors.

Memory-to-memory architecture supports the pipelined flow of vector operands directly from the memory to pipelines and then back to the memory. Register-to-register architecture uses vector registers to interface between the memory and functional pipelines.

Another important branch of the architecture tree consists of the SIMD computers for synchronized vector processing. An SIMD computer exploits spatial parallelism rather than temporal parallelism as in a pipelined computer. SIMD computing is achieved through the use of an array of processing elements synchronized by the same controller. Associative memory can be used to build SIMD associative processors.

Development Layers

Hardware configurations differ from machine to machine, even those of the same model. The address space of a processor in a computer system varies among different architectures. It depends on the memory organization, which is machine-dependent. These features are up to[9]the designer and should match the target application domains.

On the other hand, we want to develop application programs and programming environments which are machine-independent. Independent of machine architecture, the user programs can be ported to many computers with minimum conversion costs. High- level languages and communication models depend on the architectural choices made in a computer system. From a programmer's viewpoint, these two layers should be architecture-transparent.

At present, Fortran, C, Pascal, Ada, and Lisp[10]are supported by most computers. However, the communication models, shared variable versus message passing, are mostly machine-dependent. The Linda approach using tuple spaces offers any architecture- transparent communication model for parallel computers.

Application programmers prefer more architectural transparency. However, kernel programmers have to explore the opportunities supported by hardware. As a good computer architect, one has to approach the problem from both ends. The compilers and OS support should be designed to remove as many architectural constraints as possible from the programmer.

New Challenges

The technology of parallel processing is the outgrowth of four decades of research and industrial advances in microelectronics, printed circuits, high-density packaging, advanced processors, memory systems, peripheral devices, communication channels, language evolution, compiler sophistication, operating systems, programming environments, and application challenges.

The rapid progress made in hardware technology has significantly increased the economical feasibility of building a new generation of computers adopting parallel processing. However, the major barrier preventing parallel processing from entering the production mainstream is on the software and application side.

To date, it is still very difficult and painful to program parallel and vector computers[11]. We need to strive for major progress in the software area in order to create a user-friendly environment for high-power computers. A whole new generation of programmers need to be trained to program parallelism effectively. High-performance computers provide fast and accurate solutions to scientific, engineering, business, social, and defense problems.

Representative real-life problems include weather forecast modeling, computer-aided design of VLSI[12]circuits, large-scale database management, artificial intelligence, crime control, and strategic defense initiatives, just to name a few. The application domains of parallel processing computers are expanding steadily. With a good understanding of scalable computer architectures and mastery of parallel programming techniques the reader will be better prepared to face future computing challenges.

Notes

[1] the Von Neumann architecture: 冯·诺依曼体系结构,由匈牙利科学家Von Neumann于1946年提出。其基本思想是“存储程序”的概念,即把程序与数据存放在线性编址的存储器中,依次取出,进行解释和执行。

[2] Lookahead, Parallelism and Pipelining: 先行(预见)、并行性和流水线技术(管线)。

[3] I/E (instruction fetch/decode and execution):取指令(指令去还)。

[4] Flynn Classification:弗林分类法,M.J. 弗林于1966年提出的、根据系统的指令和数据对计算机系统进行分类的一种方法。

[5] SISD(single instruction stream over a single data stream):单指令单数据流(或single instruction single data).

[6] SIMD (single instruction stream over multiple data streams):单指令多数据流(或single instruction multiple data).

[7] MIMD (multiple Instruction streams over multiple data streams):多指令多数据流(或multiple Instruction multiple data).

[8] MISD (multiple instruction streams and a single data steam):多指令单数据流(或multiple instruction single data).

[9] up to:应由某人担任或负责。如:It is up to them to decide. 应由他们决定。这一句可译为“这些特性由设计者考虑决定”。

[10] Fortran, C, Pascal, Ada, and Lisp: (分别是)Fortran语言、C语言、Pascal语言、Ada语言和Lisp语言。

[11] vector computers:向量计算机;向量电脑;一种数组计算机(an array computer)。

[12] VLSI: very large scale integration超大规模集成电路;大规模积体电路。

点击查看答案
第11题
The following languages all belong to the Eastern set except________.

A.Balto-Slavic

B.Indo-Iranian

C.Armenian

D.Italic

点击查看答案
退出 登录/注册
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改