差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
gimmickkouza:electronic_basic:7:3-r3-r4 [2024/06/21 09:12] – [マイコンのbit数の違い] matsuhachigimmickkouza:electronic_basic:7:3-r3-r4 [2024/06/21 13:55] (現在) – [マイコンのbit数の違い] matsuhachi
行 59: 行 59:
   * R3のMCUは、8bitマイコンのATMega328Pですが、R4では32bitマイコンのRA4M1が採用されています   * R3のMCUは、8bitマイコンのATMega328Pですが、R4では32bitマイコンのRA4M1が採用されています
   * これにより、R3のint型が2byteなのに対し、R4のint型では4byteとなっています   * これにより、R3のint型が2byteなのに対し、R4のint型では4byteとなっています
-  * 2byteと4byteで何が違うの?というと、**格納できる値の最大値・最小値**が違います +  * 2byteと4byteで何が違うの?というと、**格納できる値の最大値・最小値**が違います 
-    * +    * 2byteだと-32768~32767 
 +    * 4byteだと-2147483648~2147483647 
 +    * めちゃくちゃ違います 
 +    * このため、R4前提のint型で最大値最小値を扱うと、R3に移植した際に、上手く動かなくなります。 
 +  * また、加速度センサのような、I2C通信でデータを読み出し、シフト演算で整形するようなプログラムの場合に、上手く動かなくなります。こちらの記事がわかりやすいです。 
 +  https://note.com/electric_mecha60/n/nc5a69a06959e
  
 <panel type="success" title="るためすたメモ">[[gimmickkouza:electronic_basic:3:5_variable#変数のデータ型について|]]でちょっと書いていますが、これによりR4ではintで扱える数値の桁数が増大しています。 <panel type="success" title="るためすたメモ">[[gimmickkouza:electronic_basic:3:5_variable#変数のデータ型について|]]でちょっと書いていますが、これによりR4ではintで扱える数値の桁数が増大しています。