 michas (14.07.2017 12:50, просмотров: 162) ответил Крок на Насколько я помню, у Безналоговых Девиц ассемблерная команда присваивания именно так и выглядит, как Вы хотите.
 michas (14.07.2017 12:50, просмотров: 162) ответил Крок на Насколько я помню, у Безналоговых Девиц ассемблерная команда присваивания именно так и выглядит, как Вы хотите.
Собственно вопрос и возник, когда я шарковский ассемблер посмотрел input_samples:    // ------------ The FIR filter is here ------------------------
	// ACQUIRE THE INPUT SAMPLE, CONVERT TO FLOATING POINT
	r0 = dm(rx_buf + 1);	// move the input sample into r0
	r0 = lshift r0 by 16;	// shift to the highest 16 bits to preserve the sign
	r1 = -31;		// set the scaling for the conversion
	f0 = float r0 by r1;	// convert from fixed to floating point
	dm(i0,m0) = f0;		// store the sample in dline[]
	// CALCULATE THE OUTPUT SAMPLE FROM THE FIR FILTER
	f12 = 0;					// prime the registers
	f2 = dm(i0,m0), f4 = pm(i8,m8);
							// efficient main loop
	lcntr = NR_COEF-1, do (pc,1) until lce;
	f8 = f2*f4, f12 = f8+f12, f2 = dm(i0,m0), f4 = pm(i8,m8);
	f8 = f2*f4;			// complete the last loop
	f12 = f8+f12;
	// CONVERT THE OUTPUT SAMPLE TO FIXED POINT & OUTPUT
	r1 = 31;		// set the scaling for the conversion
	r8 = fix f12 by r1;	// convert from floating to fixed point
	rti(db);		// return from interrupt, but execute next 2 lines
	r8 = lshift r8 by -16;	// shift to the lowest 16 bits
	dm(tx_buf + 1) = r8;	// move the sample to the output
.endseg;