# PROBLEMS (Cap. 4 - Istruzioni macchina)

Save this PDF as:

Size: px
Start display at page:

Download "PROBLEMS (Cap. 4 - Istruzioni macchina)"

## Transcription

1 98 CHAPTER 2 MACHINE INSTRUCTIONS AND PROGRAMS PROBLEMS (Cap. 4 - Istruzioni macchina) 2.1 Represent the decimal values 5, 2, 14, 10, 26, 19, 51, and 43, as signed, 7-bit numbers in the following binary formats: (a) Sign-and-magnitude (b) 1 s-complement (c) 2 s-complement (See Appendix E for decimal-to-binary integer conversion.) 2.2 (a) Convert the following pairs of decimal numbers to 5-bit, signed, 2 s-complement, binary numbers and add them. State whether or not overflow occurs in each case. (a) 5 and 10 (b) 7 and 13 (c) 14 and 11 (d) 5 and 7 (e) 3 and 8 ( f) 10 and 13 (b) Repeat Part a for the subtract operation, where the second number of each pair is to be subtracted from the first number. State whether or not overflow occurs in each case.

2 PROBLEMS Given a binary pattern in some memory location, is it possible to tell whether this pattern represents a machine instruction or a number? 2.4 A memory byte location contains the pattern What does this pattern represent when interpreted as a binary number? What does it represent as an ASCII code? 2.5 Consider a computer that has a byte-addressable memory organized in 32-bit words according to the big-endian scheme. A program reads ASCII characters entered at a keyboard and stores them in successive byte locations, starting at location Show the contents of the two memory words at locations 1000 and 1004 after the name Johnson has been entered. 2.6 Repeat Problem 2.5 for the little-endian scheme. 2.7 A program reads ASCII characters representing the digits of a decimal number as they are entered at a keyboard and stores the characters in successive memory bytes. Examine the ASCII code in Appendix E and indicate what operation is needed to convert each character into an equivalent binary number. 2.8 Write a program that can evaluate the expression A B + C D in a single-accumulator processor. Assume that the processor has Load, Store, Multiply, and Add instructions, and that all values fit in the accumulator. 2.9 The list of student marks shown in Figure 2.14 is changed to contain j test scores for each student. Assume that there are n students. Write an assembly language program for computing the sums of the scores on each test and store these sums in the memory word locations at addresses SUM, SUM + 4, SUM + 8,...Thenumber of tests, j,is larger than the number of registers in the processor, so the type of program shown in Figure 2.15 for the 3-test case cannot be used. Use two nested loops, as suggested in Section The inner loop should accumulate the sum for a particular test, and the outer loop should run over the number of tests, j. Assume that j is stored in memory location J, placed ahead of location N (a) Rewrite the dot product program in Figure 2.33 for an instruction set in which the arithmetic and logic operations can only be applied to operands in processor registers. The two instructions Load and Store are used to transfer operands between registers and the memory. (b) Calculate the values of the constants k 1 and k 2 in the expression k 1 + k 2 n, which represents the number of memory accesses required to execute your program for Part a, including instruction word fetches. Assume that each instruction occupies a single word Repeat Problem 2.10 for a computer with two-address instructions, which can perform operations such as A [A] + [B] where A and B can be either memory locations or processor registers. Which computer

5 Chapter 2 Machine Instructions and Programs 2.1. The three binary representations are given as: Decimal Sign-and-magnitude 1 s-complement 2 s-complement values representation representation representation 2.2. (a) (a) (b) (c) no overflow overflow no overflow (d) (e) (f) no overflow no overflow overflow (b) To subtract the second number, form its 2 s-complement and add it to the first number. (a) (b) (c) no overflow no overflow overflow (d) (e) (f) no overflow no overflow no overflow 1

6 2.3. No; any binary pattern can be interpreted as a number or as an instruction The number 44 and the ASCII punctuation character comma Byte contents in hex, starting at location 1000, will be 4A, 6F, 68, 6E, 73, 6F, 6E. The two words at 1000 and 1004 will be 4A6F686E and 736F6EXX. Byte 1007 (shown as XX) is unchanged. (See Section for hex notation.) 2.6. Byte contents in hex, starting at location 1000, will be 4A, 6F, 68, 6E, 73, 6F, 6E. The two words at 1000 and 1004 will be 6E686F4A and XX6E6F73. Byte 1007 (shown as XX) is unchanged. (See section for hex notation.) 2.7. Clear the high-order 4 bits of each byte to A program for the expression is: Load Multiply Store Load Multiply Add Store A B RESULT C D RESULT RESULT 2

7 2.10. (a) Memory accesses Move #AVEC,R1 1 Move #BVEC,R2 1 Load N,R3 2 Clear R0 1 LOOP Load (R1)+,R4 2 Load (R2)+,R5 2 Multiply R4,R5 1 Add R5,R0 1 Decrement R3 1 Branch>0 LOOP 1 Store R0,DOTPROD 2 (b) k 1 = = 7; and k 2 = = (a) The original program in Figure 2.33 is efficient on this task. (b) k 1 = 7; and k 2 = 7 This is only better than the program in Problem 2.10(a) by a small amount The dot product program in Figure 2.33 uses five registers. Instead of using R0 to accumulate the sum, the sum can be accumulated directly into DOTPROD. This means that the last Move instruction in the program can be removed, but DOTPROD is read and written on each pass through the loop, significantly increasing memory accesses. The four registers R1, R2, R3, and R4, are still needed to make this program efficient, and they are all used in the loop. Suppose that R1 and R2 are retained as pointers to the A and B vectors. Counter register R3 and temporary storage register R4 could be replaced by memory locations in a 2-register machine; but the number of memory accesses would increase significantly , part of the instruction, 5830, 4599,

9 2.16. The assembler directives ORIGIN and DATAWORD cause the object program memory image constructed by the assembler to indicate that 300 is to be placed at memory word location 1000 at the time the program is loaded into memory prior to execution (a) The Move instruction places 300 into memory word location 1000 when the instruction is executed as part of a program. Move Add Move (R5)+,R0 (R5)+,R0 R0, (R5) (b) Move 16(R5),R3 (c) Add #40,R5 6

10 2.18. (a) Wraparound must be used. That is, the next item must be entered at the beginning of the memory region, assuming that location is empty. (b) A current queue of bytes is shown in the memory region from byte location 1 to byte location k in the following diagram. Increasing addresses Current queue 1 of bytes k OUT IN The IN pointer points to the location where the next byte will be appended to the queue. If the queue is not full with k bytes, this location is empty, as shown in the diagram. The OUT pointer points to the location containing the next byte to be removed from the queue. If the queue is not empty, this location contains a valid byte, as shown in the diagram. Initially, the queue is empty and both IN and OUT point to location 1. (c) Initially, as stated in Part b, when the queue is empty, both the IN and OUT pointers point to location 1. When the queue has been filled with k bytes and none of them have been removed, the OUT pointer still points to location 1. But the IN pointer must also be pointing to location 1, because (following the wraparound rule) it must point to the location where the next byte will be appended. Thus, in both cases, both pointers point to location 1; but in one case the queue is empty, and in the other case it is full. (d) One way to resolve the problem in Part (c) is to maintain at least one empty location at all times. That is, an item cannot be appended to the queue if ([IN] + 1) Modulo k = [OUT]. If this is done, the queue is empty only when [IN] = [OUT]. (e) Append operation: LOC [IN] IN ([IN] + 1) Modulo k If [IN] = [OUT], queue is full. Restore contents of IN to contents of LOC and indicate failed append operation, that is, indicate that the queue was full. Otherwise, store new item at LOC. 7

11 Remove operation: If [IN] = [OUT], the queue is empty. Indicate failed remove operation, that is, indicate that the queue was empty. Otherwise, read the item pointed to by OUT and perform OUT ([OUT] + 1) Modulo k Use the following register assignment: R0 Item to be appended to or removed from queue R1 IN pointer R2 OUT pointer R3 Address of beginning of queue area in memory R4 Address of end of queue area in memory R5 Temporary storage for [IN] during append operation Assume that the queue is initially empty, with [R1] = [R2] = [R3]. The following APPEND and REMOVE routines implement the procedures required in Part (e) of Problem APPEND routine: Move R1,R5 Increment R1 Increment IN pointer Compare R1,R4 Modulo k. Branch 0 CHECK Move R3,R1 CHECK Compare R1,R2 Check if queue is full. Branch=0 FULL MoveByte R0,(R5) If queue not full, append item. Branch CONTINUE FULL Move R5,R1 Restore IN pointer and send Call QUEUEFULL message that queue is full. CONTINUE... REMOVE routine: Compare R1,R2 Check if queue is empty. Branch=0 EMPTY If empty, send message. MoveByte (R2)+,R0 Otherwise, remove byte and Compare R2,R4 increment R2 Modulo k. Branch 0 CONTINUE Move R3,R2 Branch CONTINUE EMPTY Call QUEUEEMPTY CONTINUE... 8

### MACHINE INSTRUCTIONS AND PROGRAMS

CHAPTER 2 MACHINE INSTRUCTIONS AND PROGRAMS CHAPTER OBJECTIVES In this chapter you will learn about: Machine instructions and program execution, including branching and subroutine call and return operations

### Unit 5 Central Processing Unit (CPU)

Unit 5 Central Processing Unit (CPU) Introduction Part of the computer that performs the bulk of data-processing operations is called the central processing unit (CPU). It consists of 3 major parts: Register

### 8051 Programming. The 8051 may be programmed using a low-level or a high-level programming language.

8051 Programming The 8051 may be programmed using a low-level or a high-level programming language. Low-Level Programming Assembly language programming writes statements that the microcontroller directly

### CPU- Internal Structure

ESD-1 Elettronica dei Sistemi Digitali 1 CPU- Internal Structure Lesson 12 CPU Structure&Function Instruction Sets Addressing Modes Read Stallings s chapters: 11, 9, 10 esd-1-9:10:11-2002 1 esd-1-9:10:11-2002

### Feature of 8086 Microprocessor

8086 Microprocessor Introduction 8086 is the first 16 bit microprocessor which has 40 pin IC and operate on 5volt power supply. which has twenty address limes and works on two modes minimum mode and maximum.

### appendix a The LC-3 ISA

A.1 Overview The Instruction Set Architecture (ISA) of the LC-3 is defined as follows: Memory address space 16 bits, corresponding to 2 16 locations, each containing one word (16 bits). Addresses are numbered

### Here 4 is the least significant digit (LSD) and 2 is the most significant digit (MSD).

Number System Introduction Number systems provide the basis for all operations in information processing systems. In a number system the information is divided into a group of symbols; for example, 26

### Programming the Basic Computer. lecture 8

Programming the Basic Computer lecture 8 Programming the Basic Computer A computer system includes both hardware and software. Hardware consist of the physical components. Software refers to computer programs.

### Digital Logic. The Binary System is a way of writing numbers using only the digits 0 and 1. This is the method used by the (digital) computer.

Digital Logic 1 Data Representations 1.1 The Binary System The Binary System is a way of writing numbers using only the digits 0 and 1. This is the method used by the (digital) computer. The system we

### Chapter 7 Assembly Language

Chapter 7 Assembly Language Human-Readable Machine Language Computers like ones and zeros 0001110010000110 Humans like symbols ADD R6,R2,R6 increment index reg. Assembler is a program that turns symbols

### Introduction to Computer Engineering. CS/ECE 252, Spring 2013 Prof. Mark D. Hill Computer Sciences Department University of Wisconsin Madison

Introduction to Computer Engineering CS/ECE 252, Spring 2013 Prof. Mark D. Hill Computer Sciences Department University of Wisconsin Madison Chapter 7 & 9.2 Assembly Language and Subroutines Human-Readable

### Week Assembly Language Programming Chapter 2

Week 2 8051 Assembly Language Programming Chapter 2 1 Outline 2.1 Inside the 8051 2.2 Introduction to 8051 Assembly programming 2.3 Assembling and running an 8051 program 2.4 The program counter and ROM

### A single register, called the accumulator, stores the. operand before the operation, and stores the result. Add y # add y from memory to the acc

Other architectures Example. Accumulator-based machines A single register, called the accumulator, stores the operand before the operation, and stores the result after the operation. Load x # into acc

### D r = d p-1 d p-2.. d 1 d 0.d -1 d -2. D -n. EECC341 - Shaaban

Positional Number Systems A number system consists of an order set of symbols (digits) with relations defined for +,-,*, / The radix (or base) of the number system is the total number of digits allowed

### Z80 Instruction Set. Z80 Assembly Language

75 Z80 Assembly Language The assembly language allows the user to write a program without concern for memory addresses or machine instruction formats. It uses symbolic addresses to identify memory locations

### Instruction Set Architecture (ISA)

Instruction Set Architecture (ISA) * Instruction set architecture of a machine fills the semantic gap between the user and the machine. * ISA serves as the starting point for the design of a new machine

### 2 Programs: Instructions in the Computer

2 2 Programs: Instructions in the Computer Figure 2. illustrates the first few processing steps taken as a simple CPU executes a program. The CPU for this example is assumed to have a program counter (PC),

### Chapter II Binary Data Representation

Chapter II Binary Data Representation The atomic unit of data in computer systems is the bit, which is actually an acronym that stands for BInary digit. It can hold only 2 values or states: 0 or 1, true

### COMP15111: Examples5 (2016)

COMP15111 2016 Javier Navaridas/Richard Neville/Milan Mihajlovic Examples 5 section 1: 1 COMP15111: Examples5 (2016) You can find old Computer-Science exam papers via: http://www.cs.manchester.ac.uk/assessment/exam

### Central Processing Unit

Central Processing Unit General Register Organization Stack Organization Instruction Formats Addressing Modes Data Transfer and Manipulation Micro Programmed Control Reduced Instruction Set Computer Parallel

### Chapter 4 ARM Instruction Sets. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan

Chapter 4 ARM Instruction Sets Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan Outline Registers, Memory Access, and Data Transfer Arithmetic and Logic Instructions

### Instructions: Assembly Language

Chapter 2 Instructions: Assembly Language Reading: The corresponding chapter in the 2nd edition is Chapter 3, in the 3rd edition it is Chapter 2 and Appendix A and in the 4th edition it is Chapter 2 and

### Chapter 7 Assembly Language

Revisited: Counting Characters (From Ch 5 & 6) Count the occurrences of a character in a file Remember this? Chapter 7 Assembly Language Count = 0 (R2 = 0) Ptr = 1st file character (R3 = M[x3012]) Input

### PART OF THE PICTURE: Computer Architecture

PART OF THE PICTURE: Computer Architecture 1 PART OF THE PICTURE: Computer Architecture BY WILLIAM STALLINGS At a top level, a computer consists of processor, memory, and I/O components, with one or more

### Number Representation

Number Representation COMP375 Computer Organization and darchitecture t How do we represent data in a computer? At the lowest level, a computer is an electronic machine. works by controlling the flow of

### PROBLEMS #20,R0,R1 #\$3A,R2,R4

506 CHAPTER 8 PIPELINING (Corrisponde al cap. 11 - Introduzione al pipelining) PROBLEMS 8.1 Consider the following sequence of instructions Mul And #20,R0,R1 #3,R2,R3 #\$3A,R2,R4 R0,R2,R5 In all instructions,

### Number Systems! Why Bits (Binary Digits)?!

Number Systems Why Bits (Binary Digits)? Computers are built using digital circuits Inputs and outputs can have only two values True (high voltage) or false (low voltage) Represented as and Can represent

### MICROPROCESSOR AND MICROCOMPUTER BASICS

Introduction MICROPROCESSOR AND MICROCOMPUTER BASICS At present there are many types and sizes of computers available. These computers are designed and constructed based on digital and Integrated Circuit

### PIPELINING CHAPTER OBJECTIVES

CHAPTER 8 PIPELINING CHAPTER OBJECTIVES In this chapter you will learn about: Pipelining as a means for executing machine instructions concurrently Various hazards that cause performance degradation in

### PART B QUESTIONS AND ANSWERS UNIT I

PART B QUESTIONS AND ANSWERS UNIT I 1. Explain the architecture of 8085 microprocessor? Logic pin out of 8085 microprocessor Address bus: unidirectional bus, used as high order bus Data bus: bi-directional

### 1 Basic Computing Concepts (4) Data Representations

1 Basic Computing Concepts (4) Data Representations The Binary System The Binary System is a way of writing numbers using only the digits 0 and 1. This is the method used by the (digital) computer. The

### 1 Classical Universal Computer 3

Chapter 6: Machine Language and Assembler Christian Jacob 1 Classical Universal Computer 3 1.1 Von Neumann Architecture 3 1.2 CPU and RAM 5 1.3 Arithmetic Logical Unit (ALU) 6 1.4 Arithmetic Logical Unit

### Activity 1: Bits and Bytes

ICS3U (Java): Introduction to Computer Science, Grade 11, University Preparation Activity 1: Bits and Bytes The Binary Number System Computers use electrical circuits that include many transistors and

### LC-3 Data Structures. Textbook chapter 10

LC-3 Data Structures Textbook chapter 10 LC-3 data structures Abstract data structures are Defined by the rules for inserting and extracting data In this section, we will talk about The array The stack

### Chapter 5 Instructor's Manual

The Essentials of Computer Organization and Architecture Linda Null and Julia Lobur Jones and Bartlett Publishers, 2003 Chapter 5 Instructor's Manual Chapter Objectives Chapter 5, A Closer Look at Instruction

### Today. Binary addition Representing negative numbers. Andrew H. Fagg: Embedded Real- Time Systems: Binary Arithmetic

Today Binary addition Representing negative numbers 2 Binary Addition Consider the following binary numbers: 0 0 1 0 0 1 1 0 0 0 1 0 1 0 1 1 How do we add these numbers? 3 Binary Addition 0 0 1 0 0 1 1

### 2) Write in detail the issues in the design of code generator.

COMPUTER SCIENCE AND ENGINEERING VI SEM CSE Principles of Compiler Design Unit-IV Question and answers UNIT IV CODE GENERATION 9 Issues in the design of code generator The target machine Runtime Storage

### Advanced Computer Architecture-CS501. Computer Systems Design and Architecture 2.1, 2.2, 3.2

Lecture Handout Computer Architecture Lecture No. 2 Reading Material Vincent P. Heuring&Harry F. Jordan Chapter 2,Chapter3 Computer Systems Design and Architecture 2.1, 2.2, 3.2 Summary 1) A taxonomy of

### ORG ; ZERO. Introduction To Computing

Dec 0 Hex 0 Bin 00000000 ORG ; ZERO Introduction To Computing OBJECTIVES this chapter enables the student to: Convert any number from base 2, base 10, or base 16 to any of the other two bases. Add and

### The Assembly Language Level

The Assembly Language Level Translators can be divided into two groups. When the source language is essentially a symbolic representation for a numerical machine language, the translator is called an assembler,

### GUJARAT TECHNOLOGICAL UNIVERSITY

GUJARAT TECHNOLOGICAL UNIVERSITY COMPUTER ENGINEERING (07), INFORMATION TECHNOLOGY (16) & INFORMATION & COMMUNICATION TECHNOLOGY (32) COMPUTER ORGANIZATION SUBJECT CODE: 2140707 B.E. 4 th SEMESTER Type

### Data types. lecture 4

Data types lecture 4 Information in digital computers is represented using binary number system. The base, i.e. radix, of the binary system is 2. Other common number systems: octal (base 8), decimal (base

### CHAPTER 7: The CPU and Memory

CHAPTER 7: The CPU and Memory The Architecture of Computer Hardware, Systems Software & Networking: An Information Technology Approach 4th Edition, Irv Englander John Wiley and Sons 2010 PowerPoint slides

### ARM instruction set. ARM versions. ARM assembly language

ARM instruction set ARM versions. ARM assembly language. ARM programming model. ARM memory organization. ARM data operations. ARM flow of control. ARM versions ARM architecture has been extended over several

### The ARM11 Architecture

The ARM11 Architecture Ian Davey Payton Oliveri Spring 2009 CS433 Why ARM Matters Over 90% of the embedded market is based on the ARM architecture ARM Ltd. makes over \$100 million USD annually in royalties

### MACHINE ARCHITECTURE & LANGUAGE

in the name of God the compassionate, the merciful notes on MACHINE ARCHITECTURE & LANGUAGE compiled by Jumong Chap. 9 Microprocessor Fundamentals A system designer should consider a microprocessor-based

### Instruction Set Architecture

Instruction Set Architecture Consider x := y+z. (x, y, z are memory variables) 1-address instructions 2-address instructions LOAD y (r :=y) ADD y,z (y := y+z) ADD z (r:=r+z) MOVE x,y (x := y) STORE x (x:=r)

### Data Representation. Representing Data

Data Representation COMP 1002/1402 Representing Data A computer s basic unit of information is: a bit (Binary digit) An addressable memory cell is a byte (8 bits) Capable of storing one character 10101010

### 1 The Java Virtual Machine

1 The Java Virtual Machine About the Spec Format This document describes the Java virtual machine and the instruction set. In this introduction, each component of the machine is briefly described. This

### 8085 INSTRUCTION SET

DATA TRANSFER INSTRUCTIONS Opcode Operand Description 8085 INSTRUCTION SET INSTRUCTION DETAILS Copy from source to destination OV Rd, Rs This instruction copies the contents of the source, Rs register

### Chapter 2 : Central Processing Unit

Chapter 2 Central Processing Unit The part of the computer that performs the bulk of data processing operations is called the Central Processing Unit (CPU) and is the central component of a digital computer.

### Integer Numbers. The Number Bases of Integers Textbook Chapter 3

Integer Numbers The Number Bases of Integers Textbook Chapter 3 Number Systems Unary, or marks: /////// = 7 /////// + ////// = ///////////// Grouping lead to Roman Numerals: VII + V = VVII = XII Better:

### An Overview of Stack Architecture and the PSC 1000 Microprocessor

An Overview of Stack Architecture and the PSC 1000 Microprocessor Introduction A stack is an important data handling structure used in computing. Specifically, a stack is a dynamic set of elements in which

### The largest has a 0 in the sign position and 0's in all other positions:

10.2 Sign Magnitude Representation Sign Magnitude is straight-forward method for representing both positive and negative integers. It uses the most significant digit of the digit string to indicate the

### 612 CHAPTER 11 PROCESSOR FAMILIES (Corrisponde al cap. 12 - Famiglie di processori) PROBLEMS

612 CHAPTER 11 PROCESSOR FAMILIES (Corrisponde al cap. 12 - Famiglie di processori) PROBLEMS 11.1 How is conditional execution of ARM instructions (see Part I of Chapter 3) related to predicated execution

### Data Types and Addressing Modes 29

29 This section describes data types and addressing modes available to programmers of the Intel Architecture processors. 29.1 Fundamental Data Types The fundamental data types of the Intel Architecture

### Unit 2: Number Systems, Codes and Logic Functions

Unit 2: Number Systems, Codes and Logic Functions Introduction A digital computer manipulates discrete elements of data and that these elements are represented in the binary forms. Operands used for calculations

### MVI M, 32H : Store 32H in memory location pointed by HL register pair (4000H)

Store 8-bit data in memory Statement: Store the data byte 32H into memory location 4000H. Program 1: MVI A, 52H : Store 32H in the accumulator STA 4000H : Copy accumulator contents at address 4000H HLT

### Assembly Language for Intel-Based Computers, 4 th Edition. Chapter 1: Basic Concepts

Assembly Language for Intel-Based Computers, 4 th Edition Kip R. Irvine Chapter 1: Basic Concepts Slides prepared by Kip R. Irvine Revision date: 07/21/2002 Chapter corrections (Web) Assembly language

### LC-3 Assembly Language

LC-3 Assembly Language (Textbook Chapter 7) Assembly and assembler Machine language - binary 0001110010000110 Assembly language - symbolic ADD R6, R2, R6 ; increment index reg. Assembler is a program that

### CHAPTER TWO. 2.1 Unsigned Binary Counting. Numbering Systems

CHAPTER TWO Numbering Systems Chapter one discussed how computers remember numbers using transistors, tiny devices that act like switches with only two positions, on or off. A single transistor, therefore,

### 4 Operations On Data

4 Operations On Data 4.1 Source: Foundations of Computer Science Cengage Learning Objectives After studying this chapter, students should be able to: List the three categories of operations performed on

### Stacks typically used for temporary storage of data Analogous to a stack of paper or a stack of cards Some rules:

A stack is an example of a data structure A method of organising data Defined structure and operations typically used for temporary storage of data Analogous to a stack of paper or a stack of cards Some

### 7. MIPS Instruction Set Architecture

CSEE 3827: Fundamentals of Computer Systems, Spring 2011 7. MIPS Instruction Set Architecture Prof. Martha Kim (martha@cs.columbia.edu) Web: http://www.cs.columbia.edu/~martha/courses/3827/sp11/ Outline

### Chapter 1 Basic Concepts

Chapter 1 Basic Concepts 1.1 Welcome to Assembly Language 1 1.1.1 Good Questions to Ask 2 1.1.2 Assembly language Applications 5 1.1.3 Section Review 6 1.2 Virtual Machine Concept 7 1.2.1 History of PC

### Lecture 8: ARM Arithmetic and Bitweise Instructions

Lecture 8: ARM Arithmetic and Bitweise Instructions CSE 30: Computer Organization and Systems Programming Winter 2014 Diba Mirza Dept. of Computer Science and Engineering University of California, San

### what operations can it perform? how does it perform them? on what kind of data? where are instructions and data stored?

Inside the CPU how does the CPU work? what operations can it perform? how does it perform them? on what kind of data? where are instructions and data stored? some short, boring programs to illustrate the

### what operations can it perform? how does it perform them? on what kind of data? where are instructions and data stored?

Inside the CPU how does the CPU work? what operations can it perform? how does it perform them? on what kind of data? where are instructions and data stored? some short, boring programs to illustrate the

### Instruction Set Architecture. or How to talk to computers if you aren t in Star Trek

Instruction Set Architecture or How to talk to computers if you aren t in Star Trek The Instruction Set Architecture Application Compiler Instr. Set Proc. Operating System I/O system Instruction Set Architecture

### Embedded Systems Dr Santanu Chaudhury Department of Electrical Engineering IIT Delhi Lecture 5 ARM Processor

Embedded Systems Dr Santanu Chaudhury Department of Electrical Engineering IIT Delhi Lecture 5 ARM Processor In the last class we had discussed PIC processors which were targeted primarily for low end

### Computer is a binary digital system. Data. Unsigned Integers (cont.) Unsigned Integers. Binary (base two) system: Has two states: 0 and 1

Computer Programming Programming Language Is telling the computer how to do something Wikipedia Definition: Applies specific programming languages to solve specific computational problems with solutions

### Chapter 7D The Java Virtual Machine

This sub chapter discusses another architecture, that of the JVM (Java Virtual Machine). In general, a VM (Virtual Machine) is a hypothetical machine (implemented in either hardware or software) that directly

### In this chapter we are concerned with basic architecture and the. different operations related to explain the proper functioning of the

CHAPTER I CONTENTS: 1.1 INTRODUCTION 1.2 STORED PROGRAM ORGANIZATION 1.3 INDIRECT ADDRESS 1.4 COMPUTER REGISTERS 1.5 COMMON BUS SYSTEM SUMMARY SELF ASSESSMENT OBJECTIVE: In this chapter we are concerned

### Processing Unit Design

&CHAPTER 5 Processing Unit Design In previous chapters, we studied the history of computer systems and the fundamental issues related to memory locations, addressing modes, assembly language, and computer

### Simple Practice Programs. ; store the higher byte

Simple Practice Programs Program 1: - Exchange the content of FFh and FF00h Solution: - Here one is internal memory location and other is memory external location. so first the content of ext memory location

### COMPUTER ARCHITECTURE IMPORTANT QUESTIONS FOR PRACTICE

COMPUTER ARCHITECTURE IMPORTANT QUESTIONS FOR PRACTICE 1. How many bits wide memory address have to be if the computer had 16 MB of memory? (use the smallest value possible) 2. A digital computer has a

### Chapter 2. Anatomy of a computer

Christian Jacob Chapter 2 Anatomy of a computer 2.1 Layers of Virtual Machines 2.2 The Register Machine Model 2.2.1 Main components of a von Neumann computer architecture 2.2.2 CPU and RAM 2.2.3 Execution

### Lecture 3 Addressing Modes, Instruction Samples, Machine Code, Instruction Execution Cycle

Lecture 3 Addressing Modes, Instruction Samples, Machine Code, Instruction Execution Cycle Contents 3.1. Register Transfer Notation... 2 3.2. HCS12 Addressing Modes... 2 1. Inherent Mode (INH)... 2 2.

### How It All Works. Other M68000 Updates. Basic Control Signals. Basic Control Signals

CPU Architectures Motorola 68000 Several CPU architectures exist currently: Motorola Intel AMD (Advanced Micro Devices) PowerPC Pick one to study; others will be variations on this. Arbitrary pick: Motorola

### ELECTRICAL AND COMPUTER ENGINEERING DEPARTMENT, OAKLAND UNIVERSITY ECE-378: Digital Logic and Microprocessor Design Winter 2015.

ECE-378: Digital Logic and Microprocessor Design Winter 5 UNSIGNED INTEGER NUMBERS Notes - Unit 4 DECIMAL NUMBER SYSTEM A decimal digit can take values from to 9: Digit-by-digit representation of a positive

### Assembly Language Programming: Subroutines

Assembly Language Programming: Subroutines by Alex Milenkovich, milenkovic@computer.org Objectives: Introduce subroutines, subroutine nesting, processor stack, and passing the parameters to subroutines.

### Quiz for Chapter 2 Instructions: Language of the Computer3.10

Date: 3.10 Not all questions are of equal difficulty. Please review the entire quiz first and then budget your time carefully. Name: Course: Solutions in Red 1. [5 points] Prior to the early 1980s, machines

### 6.096 Lab 1. Due: 7 January 12:30:00. September 20, 2011

6.096 Lab 1 Due: 7 January 1:30:00 September 0, 011 1 Additional Material 1.1 Constants A constant is an expressions with a fixed value. Kinds of constants: Literals: used to express particular values

### 1.3 Data Representation

8628-28 r4 vs.fm Page 9 Thursday, January 2, 2 2:4 PM.3 Data Representation 9 appears at Level 3, uses short mnemonics such as ADD, SUB, and MOV, which are easily translated to the ISA level. Assembly

### COMPUTER ARCHITECTURE. ALU (2) - Integer Arithmetic

HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK COMPUTER ARCHITECTURE Lecture 11 ALU (2) - Integer Arithmetic Sommersemester 21 Leitung: Prof. Dr. Miroslaw Malek www.informatik.hu-berlin.de/rok/ca

### Tutorial 1. Section 1 1. What does the following piece of code print?

159102 Tutorial 1 Section 1 1. What does the following piece of code print? int s,i; s=0; for(i=0;i

### CS 16: Assembly Language Programming for the IBM PC and Compatibles

CS 16: Assembly Language Programming for the IBM PC and Compatibles First, a little about you Your name Have you ever worked with/used/played with assembly language? If so, talk about it Why are you taking

### Digital Fundamentals

Digital Fundamentals with PLD Programming Floyd Chapter 2 29 Pearson Education Decimal Numbers The position of each digit in a weighted number system is assigned a weight based on the base or radix of

### Lecture 3: MIPS Instruction Set

Lecture 3: MIPS Instruction Set Today s topic: More MIPS instructions Procedure call/return Reminder: Assignment 1 is on the class web-page (due 9/7) 1 Memory Operands Values must be fetched from memory

### A3 Computer Architecture

A3 Computer Architecture Engineering Science 3rd year A3 Lectures Prof David Murray david.murray@eng.ox.ac.uk www.robots.ox.ac.uk/ dwm/courses/3co Michaelmas 2000 1 / 1 6. Stacks, Subroutines, and Memory

### The8086 Processor Architecture

Chapter 2 : The 8086 Processor Architecture By Electrical Engineering Department College of Engineering King Saud University 1431-1432 2.1. Introduction to Microprocessor Architecture 2.2. Elements of

### Number Systems and. Data Representation

Number Systems and Data Representation 1 Lecture Outline Number Systems Binary, Octal, Hexadecimal Representation of characters using codes Representation of Numbers Integer, Floating Point, Binary Coded

### Number Representation and Arithmetic in Various Numeral Systems

1 Number Representation and Arithmetic in Various Numeral Systems Computer Organization and Assembly Language Programming 203.8002 Adapted by Yousef Shajrawi, licensed by Huong Nguyen under the Creative

### MIPS Hello World. MIPS Assembly 1

MIPS Hello World MIPS Assembly 1 # Hello, World!.data ## Data declaration section ## String to be printed: out_string:.asciiz "\nhello, World!\n".text ## Assembly language instructions go in text segment

### Switching Circuits & Logic Design

Switching Circuits & Logic Design Jie-Hong Roland Jiang 江介宏 Department of Electrical Engineering National Taiwan University Fall 2013 1 1 Number Systems and Conversion Babylonian number system (3100 B.C.)

### Chapter 5 Data Representation

Chapter 5 Data Representation Objectives Upon completion of this chapter you will be able to: Describe the binary and hexadecimal number systems, Given a number in one of base 2, 10, or 16, convert that

### 1 Computer Architecture Question Bank Part A Questions

1 Computer Architecture Part A Questions 1. What is stored program concept? 2. Differentiate memory write and I/O write. 3. What are the various methods of accessing data from memory? 4. Define memory

### Arithmetic of Number Systems

2 Arithmetic of Number Systems INTRODUCTION Arithmetic operations in number systems are usually done in binary because designing of logic networks is much easier than decimal. In this chapter we will discuss