Answer Posted / mohit neb
ICM stands for Insert Character under Mask. Operand 1 is a register, operand 2 is a 4-bit binary mask ( eg - B'1000' or the number 8) and operand 3 is a fullword in memory.
The important point is that contiguous memory bytes from the fullword (operand 3) are copied into selected bytes of the register (operand 1). The second operand say B'1100' does that selection. So a mask of B'1010' would insert two contiguous memory bytes from operand 3 to byte one and three of the operand 1 register.
Example :-
ICM 5,B'1010',FIELD
The above instruction would insert two contiguous bytes starting from FIELD into the first and the third byte of R5.
OBJECT CODE :- ( 4 Byte RS Instruction )
1 byte - OP Code
Next 1 byte - 4 bits for teh register and the other 4 for
the binary mask.
Next 2 bytes for operand 3 - B2D2D2D2
Is This Answer Correct ? | 5 Yes | 2 No |
Post New Answer View All Answers
How do you round the addition or subtraction of two numbers in assembler?
Explain the difference between various read and find statement?
Ap wkur,=p5 where wkur is a label?
How to pass the parameters from jcl to assembler program?
how to initialize a register to 0000?
Why do we use "drop"?
What is need of start 0?
How are data passed from jcl parm to assembler program?
Explain how to produce soc7 abend?
Explain the difference between various read and find statement and which one should be used when for better adabas performance?
How many maximum base registers we can have in a single program?
How is data passed from a calling program to an assembler called program?
how do you round the addition or subtraction of two numbers in assembler? what does the following code do? 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?
Explain about maximum displacement?
explain icm instruction?