Programming in C is close to the machine and the language was originally designed to code an operating system. The approach I take is to start from the machine layer, though in less detail than in a computer organization or logic design book, using the MIPS instruction set to illustrate principles. The first part of the book uses C syntax as “pseudocode” while demonstrating how to convert high level language code to MIPS assembly language. The second part of the book introduces C in more detail, building on the MIPS part.While using C as “pseudocode” is not strictly in keeping with the spirit of pseudocode, which is meant to be sketchy and leave out a lot of detail, the idea is to introduce those not familiar with C-style languages to the notation ahead of the second part of the book where C is introduced properly.Why MIPS? The MIPS architecture is simple and relatively easy to understand, and in wide use in embedded systems. The SPIM simulator is a handy and free learning tool.Why C? It is in wide use, and closer to the machine than other popular languages with similar syntax. Learning the hardware-software interface in C is a lot easier than in a language with a managed memory system and complications like classes and objects.Topics covered in the MIPS part include memory organization, alternative approaches to stack frames, local and global variables, the heap and dynamic allocation, function calls including parameter passing and recursion, how C relates to machine code (e.g., arrays as pointers) and – a brief segue out of C space – how objects and methods are implemented. I cover objects because they provide a useful example of a dispatch table, and a basic understanding of how method calls could be implemented is useful given how widespread object-oriented languages are.The C part builds on this, introducing C in a little more detail including how formatted input and output work, basic C constructs, the UNIX command line (basics of scripting and make), program structure, calling library functions with function pointers and bit manipulations.The book is tested on a second-year class whose prior courses used C#, but it could be used in an introductory class. The machine organization component is not very detailed; the idea is to present just enough to support the programming concepts.The principle aims of the book are provide
"synopsis" may belong to another edition of this title.
Philip Machanick is an associate professor of computer science at Rhodes University, South Africa. He has worked at universities in Australia and the US, and holds a PhD in Computer Science from the University of Cape Town. He researches computer science education, computer systems and bioinformatics – and also writes fiction. He is a Senior Member of IEEE and of ACM, and editor-in-chief of South African Computer Journal.
"About this title" may belong to another edition of this title.
Seller: GreatBookPrices, Columbia, MD, U.S.A.
Condition: New. Seller Inventory # 24915430-n
Seller: BargainBookStores, Grand Rapids, MI, U.S.A.
Paperback or Softback. Condition: New. Mips2C: programming from the machine up. Book. Seller Inventory # BBS-9780868104874
Seller: GreatBookPrices, Columbia, MD, U.S.A.
Condition: As New. Unread book in perfect condition. Seller Inventory # 24915430
Seller: California Books, Miami, FL, U.S.A.
Condition: New. Seller Inventory # I-9780868104874
Seller: GreatBookPricesUK, Woodford Green, United Kingdom
Condition: As New. Unread book in perfect condition. Seller Inventory # 24915430
Quantity: Over 20 available
Seller: GreatBookPricesUK, Woodford Green, United Kingdom
Condition: New. Seller Inventory # 24915430-n
Quantity: Over 20 available
Seller: THE SAINT BOOKSTORE, Southport, United Kingdom
Paperback / softback. Condition: New. This item is printed on demand. New copy - Usually dispatched within 5-9 working days. Seller Inventory # C9780868104874
Quantity: Over 20 available
Seller: moluna, Greven, Germany
Condition: New. Seller Inventory # 898924847
Quantity: Over 20 available
Seller: AHA-BUCH GmbH, Einbeck, Germany
Taschenbuch. Condition: Neu. Neuware - Programming in C is close to the machine and the language was originally designed to code an operating system. The approach I take is to start from the machine layer, though in less detail than in a computer organization or logic design book, using the MIPS instruction set to illustrate principles. The first part of the book uses C syntax as 'pseudocode' while demonstrating how to convert high level language code to MIPS assembly language. The second part of the book introduces C in more detail, building on the MIPS part.While using C as 'pseudocode' is not strictly in keeping with the spirit of pseudocode, which is meant to be sketchy and leave out a lot of detail, the idea is to introduce those not familiar with C-style languages to the notation ahead of the second part of the book where C is introduced properly.Why MIPS The MIPS architecture is simple and relatively easy to understand, and in wide use in embedded systems. The SPIM simulator is a handy and free learning tool.Why C It is in wide use, and closer to the machine than other popular languages with similar syntax. Learning the hardware-software interface in C is a lot easier than in a language with a managed memory system and complications like classes and objects.Topics covered in the MIPS part include memory organization, alternative approaches to stack frames, local and global variables, the heap and dynamic allocation, function calls including parameter passing and recursion, how C relates to machine code (e.g., arrays as pointers) and - a brief segue out of C space - how objects and methods are implemented. I cover objects because they provide a useful example of a dispatch table, and a basic understanding of how method calls could be implemented is useful given how widespread object-oriented languages are.The C part builds on this, introducing C in a little more detail including how formatted input and output work, basic C constructs, the UNIX command line (basics of scripting and make), program structure, calling library functions with function pointers and bit manipulations.The book is tested on a second-year class whose prior courses used C#, but it could be used in an introductory class. The machine organization component is not very detailed; the idea is to present just enough to support the programming concepts.The principle aims of the book are provide. Seller Inventory # 9780868104874