Why can only 256 bytes be moved from one address to another
in a MVC?
Answers were Sorted based on User's Feedback
Answer / mike m
THE LENGTH CODE FIELD IS 1 BYTE IN LENGTH.
THE LARGEST VALUE YOU MAY SPECIFY IN A 1 BYTE FIELD IS X'FF'
X'FF' = 255 DECIMAL
THE LEN. IN THE OBJECT CODE FIELD WILL BE 1 LESS THAN
ACTUAL LEN.
| Is This Answer Correct ? | 20 Yes | 1 No |
Answer / vikram
Lenght feild is 8 bits so the data is stored in binary
format so if we have all 8 bits set to 1 then the length
will be 128+64+32+16+8+4+2+1 = 255.or
2^7+ 2^6+2^5...2^0 = 255.
so the lenght is 256 .....
| Is This Answer Correct ? | 3 Yes | 0 No |
Answer / pazhanivel seethapathy
The length of MVC instruction is 1 Byte which is X'FF'. it
can have the range between 0 - 255 so totally 256 bytes of
data can be used.
| Is This Answer Correct ? | 2 Yes | 1 No |
Answer / roocarlin
the length of the MVC instruction itself is 6, one byte for the opcode, one byte for the length of the move-data, 2 bytes for base-displacement of the receiving field, and 2 bytes for the base-displacement of the sending field. since the length field in the MVC instruction is 1 byte, the values can be 0 to 255, thus you would be moving 1 to 256 bytes.
| Is This Answer Correct ? | 2 Yes | 1 No |
How to pass the parameters from jcl to assembler program?
how to access VSAm file
Can we use MVC instruction to move pack field to pack field....which instruction you will use and why ?
What is the difference between various read and find statement,and which one should be used when for better adabas performance ?
how to initialize a register to 0000?
Why do we use "drop"? What does "using" do?
What does LA R3,R3 ?
In the house keeping section of an MVS assembly language program, like the one below STM R14,R12,12(R13) BASR R12,R0 USING *,R12,R11 LA R11,2048 LA R11,2048(R11,R12) .... .... 1. What if BASR R12,R0 IS NOT PRECEDE USING *,R12,R11? 2. USING (base address), REGISTER does USING directive says assembler to treat particular Register as a base register with the mentioned base address..in the above case * i.e current location counter..well if that is the case why we need BASR R12,R0 ? 3. What if I write like STM R14,R12,12(R13) BASR R12,R0 LA R11,2048 LA R11,2048(R11,R12) USING *,R12,R11 there is no address resolution being calculated in both LA statements so is it a right way to set Base register?..will there be any issues with Domain regarding R11 and R12?
What is base register?
What is house keeping in assembler?
How is data passed from a calling program to an assembler called program?
What does the following code do? Ap wkur,=p5 where wkur is a label?