How do you round the addition or subtraction of two numbers
in assembler?
what does the following code do?
AP WKUR,=P'5' where WKUR is a label
Answers were Sorted based on User's Feedback
Answer / dave grund
This is a vague two-part question.
1) You can round by adding .5
2) Adds 5 to WKUR, but it had better be a valid packed field, and not just a label.
| Is This Answer Correct ? | 3 Yes | 1 No |
Answer / steve holton
Vague, indeed....as you would round differently depending
upon the data type of the numbers involved. You can add
intergerss, floats (and doubles) and packed decimal numbers
in assembler - to which does this question refer?
As the second half of the Q addresses packed decimal, I will
assume that part one does as well...
There are various ways to round data - truncation is one
valid way, another is to move to the closest "whole value"
in the least significant digit desired in the result, or you
can mov4e to the closest number towards +infinity, or to the
closest towards -infinity, or the closest towards 0, etc.,
So first off, you need a better definition of "round". What
I think this question was attempting to get at was to see it
you know about the SRP (shift-and-round-packed) instruction,
which allows you to apply a rounding factor and shift the
packed decimal result to the desired number of significant
digits.
| Is This Answer Correct ? | 2 Yes | 1 No |
Answer / karta
After we do an add or , to Round it , we can do a SRP
SRP is shift and round packed.
Here SRP Value ,64-4,5 . usually we do right shifting after a DP and do add 5 to round it. eirther 0 or 5 will be issued. if zero, no rounding takes place.
| Is This Answer Correct ? | 0 Yes | 0 No |
What is base register?
What is maximum displacement and how to cross this limit?
What is the use of trt instruction?
Can we use an equated value as operand for an MVC instruction? Reason for the same
What is need of start 0?
change process tool( code changes from dev to prd) The changes made to your code should be effected in live. how the process takes place. that is how can you move the code changes from development to production.
Is it possible to access some memory location (Ex: VAR1 DS P) without using Base Displacement?
Explain about maximum displacement?
How do you initialize a register to 0000?
Why do we use "drop"?
What will happen if we drop the base register in the program which contains only one basereg?
How is data passed from a calling program to an assembler called program?