This introductory text on ‘digital logic and computer organization’ presents a logical treatment of all the fundamental concepts necessary to understand the organization and design of a computer. It is designed to cover the requirements of a first-course in computer organization for undergraduate Computer Science, Electronics, or MCA students. Beginning from first principles, the text guides students through to a stage where they are able to design and build a small computer with available IC chips. Starting with the foundation material on data representation, computer arithmetic and combinatorial and sequential circuit design, the text explains ALU design and includes a discussion on an ALU IC chip. It also discusses Algorithmic State Machine and its representation using a Hardware Description Language before shifting to computer organization. The evolutionary development of a small hypothetical computer is described illustrating hardware-software trade-off in computer organization. Its instruction set is designed giving reasons why each new instruction is introduced. This is followed by a description of the general features of a CPU, organization of main memory and I/O systems. The book concludes with a chapter describing the features of a real computer, namely the Intel Pentium. An appendix describes a number of laboratory experiments which can be put together by students, culminating in the design of a toy computer. Key Features • Self-contained presentation of digital logic and computer organization with minimal pre-requisites • Large number of examples provided throughout the book • Each chapter begins with learning goals and ends with a summary to aid self-study by students.
This book introduces Computer Programming to a beginner, using Fortran 90 and its recent extension Fortran 95. While Fortran 77 has been used for many years and is currently very popular, computer scientists have been seriously concerned about good programming practice to promote development of reliable programs. Thus, the International Standards Organization set up a group to 'modernise' Fortran and introduce new features which have made languages such as Pascal and C popular. The committee took over a decade to come up with the new standard, Fortran 90. Fortran 90 has introduced many new features in Fortran, such as recursion, pointers, user-defined data types etc., which were hitherto available only in languages such as Pascal and C. Fortran 90 is not an evolutionary change of Fortran 77 but is drastically different. Though Fortran 77 programs can be run using a Fortran 90 compiler, Fortran 90 is so different that the author felt it was not a good idea to just revise Fortran 77 and introduce Fortran 90 in some places in the book. Thus this book is entirely new and introduces Fortran 90 from basics. In 1996 some small extensions were made to Fortran 90 and has called Fortran 95. This book also discusses these features. As all new programs in Fortran will henceforth be written in Fortran 90, it is essential for students to learn this language.The methodology of presentation, however, closely follows the one used by the author in his popular book on Fortran 77.
This highly acclaimed, well established, book now in its fifth edition, is intended for an introductory course in digital computer design for B.Sc. students of computer science, B.Tech. students of computer science and engineering, and BCA/MCA students of computer applications. A knowledge of programming in C or Java would be useful to give the student a proper perspective to appreciate the development of the subject. The first part of the book presents the basic tools and developes procedures suitable for the design of digital circuits and small digital systems. It equips students with a firm understanding of logic principles before they study the intricacies of logic organization and architecture of computers in the second part. Besides discussing data representation, arithmetic operations, Boolean algebra and its application in designing combinatorial and sequential switching circuits, the book introduces the Algorithmic State Machines which are used to develop a hardware description language for the design of digital systems. The organization of a small hypothetical computer is described to illustrate how instruction sets are evolved. Real computers (namely, Pentium and MIPs machines) are described and compared with the hypothetical computer. After discussing the features of a CPU, I/O devices and I/O organization, cache and virtual memory, the book concludes with a new chapter on the use of parallelism to enhance the speed of computers. Besides, the fifth edition has new material in CMOS gates, MSI/ALU and Pentium5 architecture. The chapter on Cache and Virtual Memory has been rewritten.
This is a revised and enlarged version of the author's book which received wide acclamations in its earlier three editions. It provides a lucid and in-depth introduction to the programming language Fortran 77 which is widely used by scientists and engineers.The fourth edition is completely revised chapterwise and also minor corrections incorporated. A new standard for Fortran called Fortran 90 was introduced in early 90s and compilers for this version of Fortran were sold in early 1995 by computer vendors. All Fortran 77 programs will run without change with Fortran 90 compilers; however some aspects of Fortran 77 have been declared obsolete and will not run on future Fortran compilers_these are explained in this revised edition. An appendix consolidates these features. Fortran 90 is introduced in a new chapter which summarises all its features.
An introductory level text for high school students, this book elucidates the step-by-step procedures used to solve problems and demonstrates the simplicity with which one can read and write computer programmes using BASIC language. It explains how a computer works, using an elementary model of the computer. All programmes are worked out on the IBM PC and involve a minimum of mathematics. This new edition is thoroughly revised and updated to incorporate recent developments in the field. It also contains a large number of worked-out examples and exercises with solutions to assist self-study. It can be used by all interested beginners and laymen as well.
Designed as an introductory text for the students of computer science, computer applications, electronics engineering and information technology for their first course on the organization and architecture of computers, this accessible, student friendly text gives a clear and in-depth analysis of the basic principles underlying the subject. This self-contained text devotes one full chapter to the basics of digital logic. While the initial chapters describe in detail about computer organization, including CPU design, ALU design, memory design and I/O organization, the text also deals with Assembly Language Programming for Pentium using NASM assembler. What distinguishes the text is the special attention it pays to Cache and Virtual Memory organization, as well as to RISC architecture and the intricacies of pipelining. All these discussions are climaxed by an illuminating discussion on parallel computers which shows how processors are interconnected to create a variety of parallel computers. KEY FEATURES Self-contained presentation starting with data representation and ending with advanced parallel computer architecture. Systematic and logical organization of topics. Large number of worked-out examples and exercises. Contains basics of assembly language programming. Each chapter has learning objectives and a detailed summary to help students to quickly revise the material.
This book is designed to acquaint the readers with major aspects of e-commerce with particular emphasis on technology such as cryptography, e-payment and mobile payment security. The book presents a layered architecture of e-commerce systems with six layers. The physical layer (the bottommost layer) described first, provides the basic communication infrastructure needed by e commerce. The next layer described is the logical layer consisting of Local Area Networks, the Internet, Intranet, etc. which provide connectivity. The layer above is the network services layer which provides e-mail and World Wide Web applications. Above this is a very important messaging layer of e-commerce which provides facilities for exchanging messages securely using the communication infrastructure. Here various methods of encryption, public key infrastructure and digital signature are discussed. It is also explained as to how the messaging layer is used to exchange structured electronic documents, using XML. The next layer called middleman services layer, describes the design of home page of an organization and elaborates various payment services such as credit card, e cash, smart card, etc. The topmost layer is on applications, namely, B2C, B2B and C2C e commerce which are defined and described at the beginning of the book. As use of mobile phones and mobile network is rapidly increasing, a whole chapter is devoted to explain m-commerce. Of special interest are detailed discussions of Wireless Application Protocol, security issues and payment methods. A complete chapter is also devoted to new developments in multimedia information goods such as e-books, MP3 compressed audio and digital quality video. A unique feature of these goods is the method of delivery which also uses the mobile Internet infrastructure. Finally, the legal framework of e-commerce provided by the Information Technology Act 2000 (and the amended act of 2008) is explained. This book with its numerous student-friendly features is an ideal text for undergraduate and postgraduate students of Computer Science and Information Technology (BSc and MSc), Computer Applications (BCA and MCA), and for undergraduate engineering students of Computer Science and Engineering and Information Technology. Besides, it would be useful to professionals for quickly understanding the basics of e commerce. Key Features : • Gives detailed discussions of security and payment schemes in e-commerce. • Discusses essentials of m-commerce technology including WAP protocol and mobile security. • Discusses e-commerce of multimedia such as e-books, MP3 audio and video on demand. • Provides learning aids such as chapter summaries, over 300 review questions and 350 objective type questions.
This book introduces students to the basics of computers, software and internet along with how to program computers using the C language. It is intended for an introductory course that gives beginning engineering and science students a firm rooting in the fundamental principles of computers and information technology, and also provides invaluable insights into key concepts of computing through development of skills in programming and problem solving using C language. To this end, the book is eminently suitable for the first-year engineering students of all branches and MCA students, as per the prescribed syllabus of several universities. C is a difficult language to learn if it is not methodically introduced. The book explains C and its basic programming techniques in a way suitable for beginning students. It begins by giving students a solid foundation in algorithms to help them grasp the overall concepts of programming a computer as a problem-solving tool. Simple aspects of C are introduced first to enable students to quickly start writing programs. More difficult concepts in the latter parts of the book, such as pointers and their use, have been presented in an accessible manner making the learning of C an exciting and interesting experience. The methodology used is to illustrate each new concept with a program and emphasize a good style in programming to allow students to gain sufficient skills in problem solving. KEY FEATURES Self-contained introduction to both computers and programming for beginners All important features of C illustrated with over 100 examples Good style in programming emphasized Laboratory exercises on applications of MS Office, namely, Word processing, Spreadsheet, PowerPoint are included.
This book introduces computer programming to a beginner using the programming language C. The version of C used is the one standardised by the American National Standards Institute (ANSI C). C has rapidly gained users due to its efficiency, rich data structure, variety of operators and affinity to UNIX operating system. C is a difficult language to learn if it is not methodically approached. Our attempt has been to introduce the basic aspects of C to enable the student to quickly start writing C programs and postpone more difficult features of C to later chapters. The methodology of presentation closely follows the one used by the author in his popular book on PASCAL programming. Those who know PASCAL will find it very easy to learn C using this book.