Updating search results...

Search Resources

3 Results

View
Selected filters:
  • Gettysburg College
Implementing a One Address CPU in Logisim
Unrestricted Use
CC BY
Rating
0.0 stars

Most computer users have an incorrect, but useful, cognitive metaphor for computers in which the user says (or types or clicks) something and a mystical, almost intelligent or magical, behavior happens. It is not a stretch to describe computer users as believing computers follow the laws of magic, where some magic incantation is entered, and the computer responds with an expected, but magical, behavior.

This magic computer does not actually exist. In reality computer are machines, and every action a computer performs reduces to a set of mechanical operations. In fact the first complete definition of a working computer was a mechanical machine designed by Charles Babbage in 1834, and would have run on steam power.

Probably the biggest success of Computer Science (CS) in the 20th century was the development of abstractions that hide the mechanical nature of computers. The fact that average people use computers without ever considering that they are mechanistic is a triumph of CS designers.

This purpose of this monograph is to break the abstract understanding of a computer, and to explain a computer’s behavior in completely in mechanistic terms. It will deal specifically with the Central Processing Unit (CPU) of the computer, as this is where the magic happens. All other parts of a computer can be seen as just providing information for the CPU to operate on.

This monograph will deal with a specific type of CPU, a one-address CPU, and will explain this CPU using only standard gates, specifically AND, OR, NOT, NAND and XOR gates, and 4 basic Integrated Circuits (ICs), the Decoder, Multiplexer, Adder, and Flip Flop. All of these gates and components can be described as mechanical transformations of input data to output data, and the overall CPU can then be seen as a mechanical device.

Subject:
Computer Science
Computer, Networking and Telecommunications Systems
Material Type:
Textbook
Provider:
Gettysburg College
Date Added:
07/22/2016
Introduction to MIPS Assembly Language Programming
Unrestricted Use
CC BY
Rating
0.0 stars

This book was written to introduce students to assembly language programming in MIPS. As with all assemblylanguage programming texts, it covers basic operators and instructions, subprogram calling, loading andstoring memory, program control, and the conversion of the assembly language program into machine code.

However this book was not written simply as a book on assembly language programming. The larger purposeof this text is to show how concepts in Higher Level Languages (HLL), such as Java or C/C++, arerepresented in assembly. By showing how program constructs from these HLL map into assembly, theconcepts will be easier to understand and use when the programmer implements programs in languages likeJava or C/C++. Concepts such as references and variables, registers, binary and Boolean operations, subprogram execution, memory types (heap, stack, and static), and array processing are covered to clarify thedecisions made when implementing HLL. Program control is presented using a mapping from structuredprograms in pseudo code to help students understand structured programming, and why it exists. Memoryaccess in assembly is presented to high light the difference between references (pointers) and values, and howthese impact HLL.

This book has numerous code examples, and many problems at the end of each chapter, and it is appropriate for a class in Assembly Language, or as a extra resource for a class in Computer Organization.

Subject:
Computer Science
Computer, Networking and Telecommunications Systems
Material Type:
Textbook
Provider:
Gettysburg College
Date Added:
04/11/2023
Programming for the Web: From Soup to Nuts: Implementing a complete GIS web page using HTML5, CSS, JavaScript, Node.js, MongoDB, and Open Layers
Unrestricted Use
CC BY
Rating
0.0 stars

This book is designed to be used as a class text but should be easily accessible to programmers interested in Web Programming. It should even be accessible to an advanced hobbyist.

The original goal behind this text was to help students doing research with me in Web based mapping applications, generally using Open Layers. The idea was to provide persistent storage using REST and simple http request from JavaScript to store the data on a server.

Subject:
Computer Science
Computer, Networking and Telecommunications Systems
Material Type:
Textbook
Provider:
Gettysburg College
Date Added:
09/11/2018