MATLAB: Matrix Elements Manipulation (Re-ordering matrices and their elements)

matrix manipulation

If I have a matrix A,
A = [1,2,3,4,5,6,7,8]
How can I turn it into a 4×2 matrix which assigns the elements row-wise, i.e.
B = [1,2; 3,4; 5,6; 7,8]
In addition, how do I go from B to A?
Thank you in advance for your help and if possible, please explain the functions used, as I wanna understand, not just have a solution.

Best Answer

B = reshape(A,2,4).';
recreated_A = reshape(B.', 1, []);