Borrar filtros
Borrar filtros

MatLab 2012b sum block with signed/unsigned numbers

2 visualizaciones (últimos 30 días)
Lucas
Lucas el 7 de Ag. de 2014
Comentada: Yu Jiang el 11 de Ag. de 2014
If I have a sum block that's taking 2 constants in, one signed the other unsigned, and I add them together I do not get the result that I expect in the picture below: OutDataTypeStr for the sum block is Inherit: Inherit via internal rule, expected is 475.
I noticed that MatLab created a new data type, sfx32_E1, and that the number was 1 off from what I expected it to be. When I changed the sum block to output as an int32, I got the result that I expected it to be.
So I was wondering why the results were different and what that data type that's outting in the first picture means. I'm going to assume that this is the same for the other math operation blocks in MatLab? Thanks!

Respuesta aceptada

Yu Jiang
Yu Jiang el 8 de Ag. de 2014
Editada: Yu Jiang el 8 de Ag. de 2014
Before the model is executed, SIMULINK will try to figure out what is the output datatype of the Add Block. Since the Display is not datatype-dependent, and the two input data types are different, SIMULINK seems to be "confused" and ends up with generating the new datatype sfix32_E1.
  2 comentarios
Lucas
Lucas el 11 de Ag. de 2014
Sorry for the late response, got caught up in something and forgot about this, but do you know the reason why the number is one less than what it's supposed to be? Or is this just another side affect of MatLab being confused?
Yu Jiang
Yu Jiang el 11 de Ag. de 2014
Hi Lucas
I am not sure how exactly the internal rule works and why it is one less. You can find its description here.
From my point of view, this is a side effect when SIMULINK tries to use the internal rule without knowing what the expect output datatype should be. In this case, the difference happens to be one, but it may be something else in other cases.
-Yu

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre General Applications en Help Center y File Exchange.

Productos

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by