Show the code conversion with example, Computer Engineering

Assignment Help:

Q. Show the Code Conversion with example?

The conversion of data from one form to another is required. Consequently we will discuss an illustration for converting a hexadecimal digit attained in ASCII form to binary form.

Program:

; This program converts an ASCII input to equivalent hex digit which it represents.

; So valid ASCII digits are 0 to 9, A to F and program presumes that the 

; ASCII digit is read from a location in memory known as ASCII. The hex result is 

; left in the AL. Because the program converts just one digit number the AL is 

; Sufficient for the results. Result in AL is made FF if character in ASCII 

; is not proper hex digit.

; ALGORITHM 

; IF number <30h THEN error

; ELSE

; IF number <3Ah THEN Subtract 30h (it's a number 0-9)

; ELSE (number is >39h)

; IF number <41h THEN error (number in range 3Ah-40h which is not a valid

; A-F character range)

; ELSE

; IF number <47h THEN Subtract 37h for letter A-F 41-46 (Please note 

; that 41h - 37h = Ah)

; ELSE ERROR

;

; PORTS: None used

; PROCEDURES: None

; REGISTERS: Uses CS, DS, AX,

;

DATA                         SEGMENT

ASCII DB 39h                       ; any experimental data

DATA ENDS

CODE SEGMENT

                                    ASSUME CS: CODE, DS: DATA

START:                       MOV AX, DATA ; initialise data segment

                                    MOV DS, AX  ; Register using AX

                                    MOV AL, ASCII ; Get the ASCII digits of the number

                                                                        ; start the conversion 

                                    CMP AL, 30h; If the ASCII digit is below 30h then it is not 

JB ERROR; a proper Hex digit

                                    CMP AL, 3Ah; compare it to 3Ah

                                    JB NUMBER; if greater then possibly a letter between A-F

                                    CMP AL, 41h; this step will be done if equal to or above 

; 3Ah

                                    JB ERROR; between 3Ah and 40h is error

                                    CMP AL, 46h

                                    JA ERROR; The ASCII is out of 0-9 and A-F range

                                    SUB AL, 37h; it's a letter in the range A-F so convert

                                    JMP CONVERTED

NUMBER:                  SUB AL, 30h; it is a number in the range 0-9 so convert

JMP CONVERTED

ERROR: MOV AL, 0FFh; you can also display some message here

CONVERTED: MOV AX, 4C00h

INT 21h; the hex result is in AL

CODE ENDS

END START


Related Discussions:- Show the code conversion with example

What are the uses of ramps, What are the uses of Ramps? Ramps: I...

What are the uses of Ramps? Ramps: It is a network planning method which makes the most efficient use of manpower, cash resources and materials among various projects go

War (write after read) - data hazards , WAR (write after read) - Data hazar...

WAR (write after read) - Data hazards in computer architecture: WAR (write after read) - j tries to write at destination before it is read by i , hence i  wrongly gets the n

What do you mean by u-area or u-block, What do you mean by u-area (user are...

What do you mean by u-area (user area) or u-block? This having the private data that is manipulated only by the Kernel. This is local to the Process, i.e. every process is a

ip address and port number at the remote host, How many TCP connections ar...

How many TCP connections are in the "Established" state? Contain relevant output. For one of the established TCP connections, what are the IP address and port number at the remote

Explain difference between risc and cisc, RISC-Means Reduced Instruction Se...

RISC-Means Reduced Instruction Set Computer. A RISC system has decreased number of instructions and more significantly it is load store architecture were pipelining can be executed

C program, find area uder the curve y=f(x) between x=a and x=b Posted Date...

find area uder the curve y=f(x) between x=a and x=b Posted Date: 9/1/2012 1:50:09 AM

Techniques are used to increase the clock rate r, What techniques are used ...

What techniques are used to increase the clock rate R? Ans: The 2 techniques used to increase the clock rate R are: 1. We can reduce the amount of processing done in one basi

Interaction goals, Most interactive products aim to satisfy a variety of us...

Most interactive products aim to satisfy a variety of usability and user experience goals. Fully satisfying all of these goals is rarely, if ever, feasible, either because of pract

What kinds of statements are present in an assembly language, What kinds of...

What kinds of statements are present in an assembly language program? Discuss. An assembly program contains subsequent three types of statements: 1. Imperative statements: The

What is a table cluster, What is a table cluster? A table cluster join...

What is a table cluster? A table cluster joins several logical tables in the ABAP/4 Dictionary.  Various logical rows from different cluster tables are brought together in a o

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