我想做的是有Q- 10位和C-4位,并执行运算-
Q,C = Q,C << 1 (将C的MSB左移到q的LSB )
其中Q,C是14位,就像C中的结构一样对待,这在verilog中是本地支持的,可以用C中的结构来实现,我如何在MATLAB中做类似的事情?
发布于 2012-09-13 11:37:16
我不认为matlab支持c风格的联合。它确实具有bitshift函数,使您能够使用算术来解决此问题。
% Q is 10 bits, C is 4 bits
% Create QC.
QC = bitshift(Q, 4) + C;
% Bit shift QC by 1
QC = bitshift(QC,1);
%Grab QC bits 13->4 and save as Q
Q = bitshift(QC, -4);
%get QC bits 3->0 and save as C
C = bitand(QC, 2^(4+1)-1);https://stackoverflow.com/questions/12396897
复制相似问题