0x3A = 00111010b
for an 8bit machine. That looks like a 64 bit machine, so prepend 56 zeros to that.
It will mask all the bits of the number in R3 except [starts from 0](1st, 3rd, 4th, 5th and 6th) starting from right. All other bits will be nullified and stored in R6
For example if R3 contains 0x5848 then, (0x5848 (and) 0x3A) = 0x08 (will be stored in R6 register)
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0101 1000 0100 1000
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0011 1010 (AND)
--------------------------------------------------------------------------------------
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 1000
--------------------------------------------------------------------------------------
The truth table for AND operation =
A B A(and)B
-----------------
0 | 0 | 0
0 | 1 | 0
1 | 0 | 0
1 | 1 | 1
-----------------