

16f877のpicマイコンでプログラミング作業を行っています
もともとPC上でのソフト開発がメインだったので
マイコンプログラムはいろいろ制約があり大変です
現在C言語によってプログラムを書いているんですが
ccscでコンパイルすると容量不足でエラーがでます
not enough ram for valiaホニャララ
等がよく出ます。
マニュアルを読むと変数を減らせとかいろいろ書いてありますが
減らしても改善できません。
知人に聞くとアセンブラで書くといいよと言われましたが
アセンブラはわからないのでCじゃないとだめです
なにか容量をあまり取らないコーディングやその他のテクニックをご存知の方
教えてください、お願いします。
また、参考になる書籍やURL等がありましたら教えてください
No.1ベストアンサー
- 回答日時:
PICでRAM利用領域を減らそうとするなら、
1.グローバル変数をできるだけ利用しない
2.ローカル変数も最小限に
3.不必要な関数コールをやめる
4.ネストの多いループは極力減らす。
5.変数である必要のない内容はCONST定義を行ってフラッシュ内に移動する
6.正否判定のためのintはshortを利用して圧縮する
という感じでしょうか。
他のマイコンと異なり、汎用レジスタが1つしかなくスタックも7段が最大という特徴をうまくごまかすために
CCSでは究極の最適化を行っています。
ただ、このため不必要なバンクの切り替えやRAM利用も増えるわけで、思った以上に消費されているのが実情です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ドライブ・ストレージ Windows10ProがインストールされているタブレットPCの、ハードディスクが64GBしかないた 5 2023/03/07 21:08
- その他(プログラミング・Web制作) プログラムの勉強のおすすめは 7 2022/12/09 20:09
- C言語・C++・C# 参考にいろいろとc言語、c++言語プログラミングでレジストリーを操作したいのですが、無料配布のc++ 3 2022/12/22 01:49
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- 仕事術・業務効率化 効率的な勉強方法(分野問わず)を教えてください 1 2023/08/16 01:33
- ドライブ・ストレージ SSDを追加したら昔のHDDがおかしくなった 4 2023/03/23 13:25
- 大学・短大 大学の講義内容について。 大学の教授へ講義内容に関しての抗議メールを送ろうと考えています。 抗議の内 8 2022/04/12 19:17
- C言語・C++・C# スタックフレームの消滅 6 2023/05/20 12:33
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ライン数とステップ数の違いは?
-
MASMの擬似命令「ASSUME」について
-
アセンブリ言語について。
-
マシン語で再起動を書くには?
-
アセンブラのコードについて質...
-
アセンブラーのプログラムに関して
-
PICアセンブラ、これって変?
-
ArduinoIDEのコンパイル結果の表示
-
アセンブリ言語について。
-
「簡易ロジック計算ソフト」み...
-
PICはアセンブラとC言語のどち...
-
アセンブラのコマンドについて
-
Windowsはオープンソースですか?
-
PDP-11のアセンブラ課題
-
RSA暗号化の処理時間
-
アセンブラからC言語に変換する...
-
アセンブラ言語がわかりません。
-
アセンブラ→C言語
-
【H8マイコン】HEWで埋め込みア...
-
8ビットのデータの、先頭ビット...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ライン数とステップ数の違いは?
-
アセンブラからC言語に変換する...
-
実行ファイルからソースはみれる?
-
アセンブラ言語がわかりません。
-
[C言語→アセンブリ言語]はどう...
-
アセンブラの配列処理
-
素朴な疑問 (C言語とアセン...
-
アセンブラwordという単位
-
PowerPC用逆アセンブラを知りま...
-
アセンブラエディタ
-
このアセンブラの意味を教えて...
-
PICはアセンブラとC言語のどち...
-
MPLAB IDE v8.92アセンブラにつ...
-
x86系でリアル←→プロテクトモー...
-
メモリアドレスについて
-
素数を求めるプログラム(アセン...
-
アセンブラで割り算
-
アセンブラのリンカのダウンロ...
-
【H8マイコン】HEWで埋め込みア...
-
アセンブラーのプログラムに関して
おすすめ情報