Machine coding the programs-microprocessor, Assembly Language

Assignment Help:

Machine Coding the Programs

So far we have describe five programs which were  written  for hand coding  by a programmer. In this, we will now have a deep look at how these programs may be  translate to machine codes. In Appendix, the instruction set along with the Appendix is presented. This Appendix is self-explanatory to hand code mostly of the instructions. The V,S W, D, MOD, REG  and R/M  fields are appropriate decided depending upon the data types, addressing mode and the registers  used. The table shows the details about how to select these fields.

Most of the instructions either have particular opcodes or they may be decided only by setting the V,S, W, D, REG, MOD and R/M fields suitably but the critical point is  the calculation of jump addresses for intra segment branch instructions. Before beginning the coding of call or jump instructions, we will see some simpler coding examples.

Example :

MOV BL, CL

For hand coding this instruction, first we will have to note down the following features.

(i) It sets in the register/memory to/from register format.

(ii) It is an 8-bit operation.

(iii) BL is the destination register and CL is a source register.

Now from the feature (i) by using the Appendix, the op code format is given below.

1485_mcp.jpg

If d =1, then transformation of data is to the register shown by the REG field, for example the destination is a register (REG). If d = 0, the source is a register shown by the REG field. It is an 8-bit operation, therefore w bit is 0. If it had been a 16-bit operation, the w bit would have been 1.From referring to given table to search the REG to REG addressing in it, for example the last column with MOD 11. According to the Appendix when MOD is 11, the R/M field is treated as a REG field. The REG field which is used for source register and the R/M field are used for the destination register, if d is 0. If d =1, the REG field is utilized for destination and the R/M field is used to indicate source. the complete machine code of this instruction comes out to be now.

code    dw       MOD   REG    R/M

MOV BL, CL 1 0 0 0 1 0 0 0     1   1   001    0 1 1= 88 CB


Related Discussions:- Machine coding the programs-microprocessor

Interrupt system based on 8259 a-microprocessor, Interrupt System Based on ...

Interrupt System Based on Single 8259 A The 8259A is contained in a 28-pin dual-in-line package that need only a + 5-V supply voltage.  Its organization is shown in given figur

#title:Shifitng of memory, Ask 2. Exchange higher byte of AX and higher byt...

Ask 2. Exchange higher byte of AX and higher byte of BX registers by using memory location 0160 in between the transfer. Then stores AX and BX registers onto memory location 0174 o

Cmp-arithmetic instruction-microprocessor, CMP: Compare: - This instructio...

CMP: Compare: - This instruction compares the source operand, which can be a register or memory location an immediate data with a destination operand that might be a register or a

PIC, LIST p=18f4550 #include org 0x0000 movlw 0x00 _________ movlw 0xFF ...

LIST p=18f4550 #include org 0x0000 movlw 0x00 _________ movlw 0xFF movwf PORTB end .

NASM assembly language programming, NASM assembly language program: Consid...

NASM assembly language program: Consider a sequence of 19 strictly positive decimal digits, most likely stored in an array. There are obviously duplicates, and the sequence is un

I want to make a calculator, 64-bit integer calculator, which processes usi...

64-bit integer calculator, which processes using 16-bits at a time (reg/mem16 operands)

Write a program to print name, Write a program to do the following: 1. P...

Write a program to do the following: 1. Print your name 2. Using a bottom testing loop, prompt the user to enter a number from 1 to 5.  If the number entered is not 1..5, pri

8086, to separate positive and negative numbers

to separate positive and negative numbers

Cryptography, Write a program that allows a user to encrypt/decrypt a mess...

Write a program that allows a user to encrypt/decrypt a message using a shift cipher. The user should specify the key and the message. Your program should be able to handle messa

Introduction to evaluation, This unit introduces the topic of evaluating in...

This unit introduces the topic of evaluating interactive products. It is a short unit as evaluation is discussed in more detail in Block 4. Its brevity should give you additional t

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd