Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

This is assembly language problem, is there someone able to help me on this problem.? This program should compile and run on visual studio community.

This is assembly language problem, is there someone able to help me on this problem.? This program should compile and run on visual studio community.

NOTE: The word shift is used in the problem statement, but this does not refer to the SHIFT instructions in Assembly. Instead it refers to the Ceasar Cipher.

The goal of this assignment is to create an encryption decryption system.

A menu will allow the user to enter the encryption/decryption key and the phrase to be encrypted decrypted. As well the user will be asked if they are encrypting or decrypting a strin

You will need to convert the entered phrase/word to be encrypted into all uppercase (ChangeCase PROC). You will also need to remove all non-letter elements (letters PROC). So that you are only encrypting/decrypting letters.

The encryption/decryption method is a variation of the Ceasar Cipher (https://en.wikipedia.org/wiki/Caesar_cipher). The encryption/decryption key will be a word entered by the user. The ASCII value of each letter of the key will be used to determine how far to shift/rotate the corresponding letter of the phrase to be encrypted to the right. Decrypting a word/phrase will required a shift/rotate to the left. Requires two procs: encrypt PROC and decrypt PROC

You MUST take the modulus base 2610 of the ASCII hex value of each letter of the key to see how far shift each letter of the word/phrase to be encrypted/decrypted. There is no modulus instruction in ASSEMBLY, but there is something you can use instead. If you dont know what the modulus is, you can find more information at https://en.wikipedia.org/wiki/Modulo_operation.

The key may be shorter than the word/phrase to be encrypted/decrypted. If this is the case, the key repeats.

The encrypted/decrypted word/phrase will be printed out in the following format. 5 letters then a space then 5 letters etc. This means you CAN NOT use WRITESTRING from the Irvine Library to print out your result. See example below. (Printit PROC)

***** ***** ***** Where each * represents a letter.

An Example: The phrase to be encrypted is THE BONE and the key is BONE.

Given ASCII values from the back of the book

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58 59 5A

Ecryption Process

T H E D O G

54 48 45 44 4F 47

B O N E B O

42 4F 4E 45 42 4F

H I G U R H

The output will be HIGUR H Specifications:

1. I will not be debugging your code. It must stand alone. This means I should not have to enter a call to waitmsg to see the result. I will Start without Debugging to test your code.

2. You may use any instruction for Chapter 7 and below. You may not use instructions not yet discussed in class. 3

. All procedures and main will have the required header comment block.

4. Comments are required.

5. Do not use any . directives to assist with program flow, eg, .if, .while, .else, etc.

6. Remember your procedures should accomplish a basic task, so it may be that you write more procedures than are indicated above.

7. You must pass variables using registers. Do not use the STACK to pass variables (thats another chapter). If you refer to a variable that is not declared in your procedure then that variable must be passed to the procedure (OFFSET). If you want to pass data to another procedure you must use a register or have passed in a variable (offset).

8. Remember that you can create local variables, but that they are scoped (just like c++).

9. As always, style is a component of your grade.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Beginning C# 2005 Databases

Authors: Karli Watson

1st Edition

0470044063, 978-0470044063

More Books

Students also viewed these Databases questions

Question

600 lb 20 0.5 ft 30 30 5 ft

Answered: 1 week ago

Question

5. What information would the team members need?

Answered: 1 week ago

Question

Where those not participating, encouraged to participate?

Answered: 1 week ago

Question

Were all members comfortable brainstorming in front of each other?

Answered: 1 week ago