Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Project 2 Choose one (1) of the following applications and provide a complete Assembly Language program implementation, a) 32-bit and b) 64-bit. App1: Geometric Shape

Project 2

Choose one (1) of the following applications and provide a complete Assembly Language program implementation, a) 32-bit and b) 64-bit.

App1: Geometric Shape Calculator Companion.

App 2: Computation Companion

App 3: Arithmetic, Logical and Relational Calculator Companion

App 4: Translator Companion, (various)

App5: Code and Histogram Analytics

The project details (design, implementation, code, runs) should show evidence of technical proficiency with the following technological aspects:

1. a)Implementation using 32-bit programming.

b)Re-implement using 64-bit programming.

2. Test plan; test cases implementing the test plan and screen shots displaying the executing the test cases.

Note: a test plan should include various Normal, Boundary and Error cases .

3. Modular organization using procedures, subroutines and functions (PROC, ENDP, CALL, RET).

4. Use of the system Stack to save and restore register values, pass arguments, receive results (PUSH, POP).

5. Use of conditional control structures (Jcond, LoopCond, Boolean operations)

6. Use of Arithmetic operations.

7. A clear and comprehensive Project Report, for example, following the outline provided in Appendix B 2017.

Appendix A:

Application Domains

App1: Geometric Shape Calculator Companion.

Support the interactive calculation of geometrical attributes, such as perimeter, circumference, area, volume, tests and verifications of defining (idiosyncratic) characteristic or signature, for various 2-dim and 3-dim shapes, such as:

Triangle: distinguish equilateral, right, isoceles triangles.

Quadrilateral: distinguish rectangle, square, parallelogram, rhombus

Circle

Ellipse

Sphere

Cylinder Pyramid: distinguish with circular base, with rectangular base

Notes:

a. Only integer, Boolean and relational operations are available a. Use an integer Symbolic value PI = 3, where needed.

b. Any answer requiring a square root should be expressed in terms of squares.

c. Any final result of a division should be expressed in terms of quotient and remainder.

App 2: Computation Companion.

Help with various calculations, including:

a. Maximum of 3 integer values.

b. Minimum of 3 integer values.

c. Median of 3 integer values

d. Harmonic mean of x and y = 2xy / (x+y)

e. Discriminant of a, b, c = b*b - (4*a*c)

f. Determine the value of N for which 12 + 22 + ... + N2 > T (T is given).

g. Given number of cents (of monetary value, V)

entered on the keyboard, calculate the number of:

$100 bills, $50 bills, $20 bills, $10 bills, $5 bills, $1 bills, half dollars, quarters, dimes, nickels, cents in V.

Let 50,000 < V < 10,000,000.

h. Given a time amount in seconds S, express the value in terms of days, hours, minutes and seconds. i. 1/R = 1/R1 + 1/R2 + ... + 1/RN (N is given). Calculate R.

App 3: Arithmetic, Logical and Relational Calculator Companion .

An interactive application that allows a user to perform Calculator operations, including:

Arithmetic: +, -, *, /, max, min, zero?, odd?, even?, negative?, mean,

Boolean (logical): and, or, not, nand, nor, xor, nxor / xnor, etc. (17 overall)

Relational: >, <, =, !=, >=, <=, !>, !<, !>=, !<=

Array manipulation: Given an NxN "currency conversion" matrix(C), convert various currency values provided as a set of (K) NxN matrices: V1, ..., VK. For example, Wk[i,j] = C[i,j] * Vk[i,j], k=1,...,K; i,j=1,...,N.

App 4: Translator Companion, (various)

a. Encryption:

digit: 0 1 2 3 4 5 6 7 8 9

encryption: 4 6 9 5 0 3 1 8 7 2

b. Encryption (generalized):

given the digits {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F},

the translation (encoding, encryption) is ANY specified permutation of the 16 digts.

c. ITU phonetic alphabet

App5: Code and Histogram Analytics

a)

*) Choose an alphabet or code set with K numbers or letters, A = {A1, A2, ..., AK}, for example, (K=8), for example: A = {2, 3, 5, 7, 8, 15, 21, 33}.

*) Consider a sequence or data stream of at least N values (K < N < 200), each value is from the code set,

for example: D = 15, 3, 2, 2, 8, 21, 2, 5, 5, 5, 8, 7, 21, 33, 2, 15, 33, 2, 5, 7, 8, 8, 15, 3, 8.

*) Process the sequence to determine or count the number of times each element of the alphabet or code set occurs in the sequence

*) Let the frequency counts obtained be F = {F1, F2, ..., FK}

*) Construct the "histogram": H = {A1*F1, A2*F2, ..., AK*FK} 2017.

*) Construct the "weighted" sum: S = A1*F1 + A2*F2 + AK*FK

*) Construct the "average" or mean: M = S / N, express as M = {Mq, Mr}, Mq = quotient, Mr = remainder

*) Construct a "generating function" using the base or radix B (B=8): G = 1 + F1*B^1 + F2*B^2 + ... + FK*B^K

*) Display the results: G, H, F, M, S, D, A, K, N

b) Suppose there is a collection of coins in a jar, (pennies, nickels, dimes, quarters, 50-cent pieces, dollar coins), and one wants to know the total value of the coins, and how many coins there are. Use the following pseudo-code to determine the required information:

Prompt for and input the number of pennies

total = number of pennies

numberOfCoins = number of pennies

Prompt for and input the number of nickels

total = total + number of nickels

numberOfCoins = numberOfCoins + number of nickels etc.

Display the following results:

Total value:

Number of Coins:

Number of Dollar Coins:

Number of 50-cent pieces:

Number of Quarters:

Number of Dimes:

Number of Nickels:

Number of Pennies:

Appendix B: Template for Project Report

Title

Author

Revision Introduction: Problem Statement

Method: Design, Pseudo-code(s); place actual pseudo-codes in the Appendix

Solution:Assembly Language Implementations; place actual Assembly Language source codes in the Appendix

Results and Discussion: Test Plan(s), Snapshots (screen shots) of Running of Test Cases; place Test Plans in the

Appendix

Summary and Conclusions

Acknowledgements

References

Appendix:

Pseudo-codes

Assembly source codes

Test plans. Test Case runs, screen shots

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

Transact SQL Cookbook Help For Database Programmers

Authors: Ales Spetic, Jonathan Gennick

1st Edition

1565927567, 978-1565927568

More Books

Students also viewed these Databases questions