この板はプログラムを作る人のための板です。
あらゆる質問はまず
スレ立てるまでもない質問はここで
スレにしてください。
次スレは>>980が立てること
【前スレ】
スレ立てるまでもない質問はここで 159匹目
https://mevius.5ch.net/test/read.cgi/tech/1644673480/
探検
スレ立てるまでもない質問はここで 160匹目
■ このスレッドは過去ログ倉庫に格納されています
2022/05/10(火) 14:24:35.29ID:+9FnNLoT
358デフォルトの名無しさん
2022/07/15(金) 10:57:19.78ID:lF4sBNwn Rustなんて結局流行らんでしょw
まぁ、スレ違いなのでしょーも無い事を語るなら別のスレにいけ
まぁ、スレ違いなのでしょーも無い事を語るなら別のスレにいけ
359デフォルトの名無しさん
2022/07/15(金) 11:39:33.98ID:YErsqPqr gitでマージしてコンフリクトしなかったファイルとコンフリクトしたファイルがあって
これをコミットする際、コンフリクトせずマージされたコミットとコンフリクト解消したコミットのように2つに分けたいのですが
どうやればいいのでしょうか
これをコミットする際、コンフリクトせずマージされたコミットとコンフリクト解消したコミットのように2つに分けたいのですが
どうやればいいのでしょうか
360デフォルトの名無しさん
2022/07/15(金) 12:11:03.83ID:lF4sBNwn 単純にマージする前にブランチ切っていれば戻れるし好きに出来るのでは?
361デフォルトの名無しさん
2022/07/15(金) 12:12:45.10ID:YXwn0a1o362デフォルトの名無しさん
2022/07/15(金) 12:44:10.41ID:YErsqPqr >>361
コンフリ解消前のをcommitするとコンフリ解決してないので
committing is not possible because you have unmerged files
とエラーが出てコミットできないんですが
コンフリしたファイルをそのままaddしてコミットしろってことでしょうか?
コンフリ解消前のをcommitするとコンフリ解決してないので
committing is not possible because you have unmerged files
とエラーが出てコミットできないんですが
コンフリしたファイルをそのままaddしてコミットしろってことでしょうか?
363デフォルトの名無しさん
2022/07/15(金) 15:05:45.09ID:oyGbt8u5 >>362
merge状態から抜ければcommitできるので、そうしてもいいし
コンフリクトしたファイルだけを元に戻してもいい
でも、どちらにせよビルドできない状態をcommitすることになるだろうから
ちゃんとコンフリクトを解消してからcommitした方がいいと思うけどなぁ
まあ、最初のやりたいことからは外れちゃうけど
merge状態から抜ければcommitできるので、そうしてもいいし
コンフリクトしたファイルだけを元に戻してもいい
でも、どちらにせよビルドできない状態をcommitすることになるだろうから
ちゃんとコンフリクトを解消してからcommitした方がいいと思うけどなぁ
まあ、最初のやりたいことからは外れちゃうけど
364デフォルトの名無しさん
2022/07/15(金) 15:18:15.30ID:UMF7Eduu >>357
これからは一つの言語で構成されるOSはなくなっていく
これからは一つの言語で構成されるOSはなくなっていく
365デフォルトの名無しさん
2022/07/15(金) 21:04:15.70ID:knkavBW6 >>341
>・まず手間も時間もムダ
ちょいちょいと 200 ステップくらいで簡単に実現できますよ、一晩で書けちゃいますよ
>・その作業も漏れなくミスなくすることを保証できない
>・実行しないと何も判明しない
何もしないよりはましでしょうね、簡単なラッパを置くだけでケアレスミスは弾けますね、やったことなければわからないでしょうが
>>342
末尾に解放忘れを列挙する関数を置けばいいだけですよ、リリース時には #ifdef で無効にするようなものでね
>>345
私は別に rust を否定しているわけではないですよ
指摘された問題点はちょいちょいとラッパを書くだけで割と簡単に弾けるのに、というだけですね
>>353
ヘッダ:https://ideone.com/E6J83P
本体:https://ideone.com/WpsIxp
一晩で即席に作ったけれども結構今でも役に立っていますね‥‥
>・まず手間も時間もムダ
ちょいちょいと 200 ステップくらいで簡単に実現できますよ、一晩で書けちゃいますよ
>・その作業も漏れなくミスなくすることを保証できない
>・実行しないと何も判明しない
何もしないよりはましでしょうね、簡単なラッパを置くだけでケアレスミスは弾けますね、やったことなければわからないでしょうが
>>342
末尾に解放忘れを列挙する関数を置けばいいだけですよ、リリース時には #ifdef で無効にするようなものでね
>>345
私は別に rust を否定しているわけではないですよ
指摘された問題点はちょいちょいとラッパを書くだけで割と簡単に弾けるのに、というだけですね
>>353
ヘッダ:https://ideone.com/E6J83P
本体:https://ideone.com/WpsIxp
一晩で即席に作ったけれども結構今でも役に立っていますね‥‥
366デフォルトの名無しさん
2022/07/15(金) 21:41:31.38ID:0WMM6JpG リーク検出なんてVCは標準であるけど、他の環境にはないの?
367デフォルトの名無しさん
2022/07/15(金) 21:52:23.36ID:YErsqPqr >>363
コンフリしたファイルをHEADの内容で更新commitして
コンフリしたファイルを再度修正してそれをコンフリ解決としてコミットすれば
やりたいような感じのことができました
レスありがとうございました
コンフリしたファイルをHEADの内容で更新commitして
コンフリしたファイルを再度修正してそれをコンフリ解決としてコミットすれば
やりたいような感じのことができました
レスありがとうございました
368365
2022/07/16(土) 06:41:19.01ID:c7EwU+jp369デフォルトの名無しさん
2022/07/16(土) 11:51:34.05ID:v3eAMl7Q 質問と言うかご意見をお聞かせください
daoパターンを調べていてトップに出てきたのがこれです
https://kanda-it-school-kensyu.com/java-jdbc-contents/jj_ch04/jj_0401/
気になったのは
selectIsbnAll、selectTitleAll、selectPriceAllが、内部で使うSQL文以外は全く共通の構造になっているということです
例えば受け取ったSQLを実行して結果を返す関数xxxを別に作る、上の3関数ではSQL文を作ってxxxに渡して呼び出す
そういう構造にするのはダメなんでしょうか
それとも重複させたほうがいい理由が何かあるのでしょうか。よろしくお願いします
daoパターンを調べていてトップに出てきたのがこれです
https://kanda-it-school-kensyu.com/java-jdbc-contents/jj_ch04/jj_0401/
気になったのは
selectIsbnAll、selectTitleAll、selectPriceAllが、内部で使うSQL文以外は全く共通の構造になっているということです
例えば受け取ったSQLを実行して結果を返す関数xxxを別に作る、上の3関数ではSQL文を作ってxxxに渡して呼び出す
そういう構造にするのはダメなんでしょうか
それとも重複させたほうがいい理由が何かあるのでしょうか。よろしくお願いします
370デフォルトの名無しさん
2022/07/16(土) 11:55:03.81ID:v3eAMl7Q 失礼しました。SQL文以外にも取得する列名も関数ごとに別ですね
まぁその場合でもxxxに列名を引数として追加すればいいのではと思いますが
まぁその場合でもxxxに列名を引数として追加すればいいのではと思いますが
371デフォルトの名無しさん
2022/07/16(土) 12:32:31.14ID:730D9OZt372デフォルトの名無しさん
2022/07/16(土) 12:37:49.48ID:730D9OZt しいて言えば
他の開発者が重複させた状態でパターン認識してれば共通処理に切り出すと分かりにくくなるとか
すべてのDAOが依存する共通クラスができるのでその維持管理に少し手間がかかるとか
そういうデメリットはあるかもしれない
他の開発者が重複させた状態でパターン認識してれば共通処理に切り出すと分かりにくくなるとか
すべてのDAOが依存する共通クラスができるのでその維持管理に少し手間がかかるとか
そういうデメリットはあるかもしれない
373デフォルトの名無しさん
2022/07/16(土) 14:05:36.11ID:2WLM14wy Java のJDBC って、何十年前の話なの?
Ruby on Rails では、Active Record というO/R マッパーで全自動。
こんなコーディングを見た事がない
Ruby on Rails では、Active Record というO/R マッパーで全自動。
こんなコーディングを見た事がない
374デフォルトの名無しさん
2022/07/16(土) 15:47:30.46ID:aE5onCgd markdownってなにが便利なの?
見る人にわざわざViewerをインストールしてもらわなきゃいけないの
見る人にわざわざViewerをインストールしてもらわなきゃいけないの
375蟻人間 ◆T6xkBnTXz7B0
2022/07/16(土) 16:12:32.42ID:8tacx+39376デフォルトの名無しさん
2022/07/16(土) 17:00:15.16ID:aE5onCgd 本を出版できるかどうかは関係ないでしょ
書く内容があれば、markdownがかけなくても出版は出来るでしょうし。
整形されたものを見るためには、ブラウザ側の準備とかも必要ですし
○○をインストールすれば、綺麗に見えますよ
なんていってもそんなの面倒といわれるのがオチですよね
書く内容があれば、markdownがかけなくても出版は出来るでしょうし。
整形されたものを見るためには、ブラウザ側の準備とかも必要ですし
○○をインストールすれば、綺麗に見えますよ
なんていってもそんなの面倒といわれるのがオチですよね
377デフォルトの名無しさん
2022/07/16(土) 17:08:33.25ID:EqAVTetZ ブラウザ等が必要なのはHTMLやTextileも同じ
それらに比べてプレーンテキストでの視認性は良い
それらに比べてプレーンテキストでの視認性は良い
378デフォルトの名無しさん
2022/07/16(土) 20:25:35.05ID:v3eAMl7Q gitと相性良いってのは本当にでかい
未だにword/excelをSVN管理してるところの多さよ
未だにword/excelをSVN管理してるところの多さよ
379デフォルトの名無しさん
2022/07/17(日) 08:58:42.91ID:Pz/w1EQs 音楽を流すプログラムを公開する時、著作権の問題を回避するため、曲データそのものは省いた状態で公開したい。
でもデモというかサンプルとして、そのデータのシーケンスの様子を youtube で公開して、ようするにそれを見ればデータを再現できるわけだけど、
そういう公開の仕方で著作権の問題は出そう?
公開したいものの主体としてはシーケンサの方ではあるけど、その曲を入れたくて作ったという側面がある。
もちろん使う人がお好きなデータを入れられる。
でもデモというかサンプルとして、そのデータのシーケンスの様子を youtube で公開して、ようするにそれを見ればデータを再現できるわけだけど、
そういう公開の仕方で著作権の問題は出そう?
公開したいものの主体としてはシーケンサの方ではあるけど、その曲を入れたくて作ったという側面がある。
もちろん使う人がお好きなデータを入れられる。
380デフォルトの名無しさん
2022/07/17(日) 18:48:28.79ID:soXI7jwH 仕事中に転職予定のプログラミングの勉強をしたいのだけど
いい方法はないかしら?
今の仕事中はときどきアイドル時間があってわりと勉強できそうだけど
周りにチームリーダーやまじめ君がいてPCをのぞきこまれてそれを見つかるのはまずい。
いい方法はないかしら?
今の仕事中はときどきアイドル時間があってわりと勉強できそうだけど
周りにチームリーダーやまじめ君がいてPCをのぞきこまれてそれを見つかるのはまずい。
381デフォルトの名無しさん
2022/07/17(日) 19:38:41.12ID:9SO4ZDqK スマホPDFでみれば
382デフォルトの名無しさん
2022/07/17(日) 19:51:05.43ID:soXI7jwH383デフォルトの名無しさん
2022/07/17(日) 19:53:22.97ID:9V4W1mRI PC介すと検閲に引っかかるとかないの?
384デフォルトの名無しさん
2022/07/17(日) 20:52:28.23ID:zSvUsLU3 えー要約すると仕事中に仕事と全く関係なくて見つかるのもまずいことしようとしてるんだけどいい方法ありませんか
385蟻人間 ◆T6xkBnTXz7B0
2022/07/17(日) 21:13:42.26ID:Il0xN2QW 通信URLが監視されてたら何してもばれる。
それでもやりたいならWin+D
それでもやりたいならWin+D
386蟻人間 ◆T6xkBnTXz7B0
2022/07/17(日) 21:21:33.73ID:Il0xN2QW 「ボスが来た」で検索すると、そういうツールが見つかるよ。
387蟻人間 ◆T6xkBnTXz7B0
2022/07/17(日) 21:22:16.77ID:Il0xN2QW 通信内容も隠蔽したいならテザリングするといいよ。
388蟻人間 ◆T6xkBnTXz7B0
2022/07/17(日) 21:26:39.21ID:Il0xN2QW 内部通告は社会の正義だからね。がんばってね。
389蟻人間 ◆T6xkBnTXz7B0
2022/07/17(日) 21:41:58.23ID:Il0xN2QW 今ならメガネ型の端末やコンタクトレンズみたいな端末があるって。
それでネットサーフィンできるよ。
それでネットサーフィンできるよ。
390デフォルトの名無しさん
2022/07/17(日) 22:12:12.21ID:og+Kl2+D などと自宅警備員が言っており
391デフォルトの名無しさん
2022/07/18(月) 02:41:01.00ID:M8P73NZJ その言語の研修に行かせてもらえば?
392デフォルトの名無しさん
2022/07/18(月) 09:09:17.65ID:unHGOtJd UMLとかどこ行っても潰しの効く技術を勉強しといたら?
特に最下流なゴミ案件だと設計ドキュメント無かったりするから、それを作ってますと言い訳
特に最下流なゴミ案件だと設計ドキュメント無かったりするから、それを作ってますと言い訳
393デフォルトの名無しさん
2022/07/18(月) 10:38:54.88ID:kCD1BPcn OSSのライブラリって設計ドキュメントとかなかったりするよね
OSSの開発には参加できない低レベル人材ということだよね
OSSの開発には参加できない低レベル人材ということだよね
394デフォルトの名無しさん
2022/07/18(月) 12:40:49.12ID:VS4KQwYj 設計資料の無いプログラムなんて、何の価値も無いでしょ
個人が趣味やってるようなものなら話しは別だけど
会社で仕事としてやってるなら、ソースだけなんてありえない。
そこらに建ってるビルで設計図ないビルなんて無いだろ
犬小屋つくるのとはわけがちがう
個人が趣味やってるようなものなら話しは別だけど
会社で仕事としてやってるなら、ソースだけなんてありえない。
そこらに建ってるビルで設計図ないビルなんて無いだろ
犬小屋つくるのとはわけがちがう
395デフォルトの名無しさん
2022/07/18(月) 12:47:50.22ID:QxUO6Zmj 設計図は保守のために必要なのであって開発のための設計図は不要
396デフォルトの名無しさん
2022/07/18(月) 12:49:37.70ID:VS4KQwYj 会社に入れば分かるよ
学生さんがお遊びで書いてるようなおもちゃコードとはダンチレベチだから
学生さんがお遊びで書いてるようなおもちゃコードとはダンチレベチだから
397デフォルトの名無しさん
2022/07/18(月) 13:25:28.89ID:LUyjnnnP OSSはわかる人が参加するものであって
企業内の製品は誰でもわかるようにしなければいけない
設計あるなしは要否によっても決まるもの、という位置付けに変化した
企業内の製品は誰でもわかるようにしなければいけない
設計あるなしは要否によっても決まるもの、という位置付けに変化した
398デフォルトの名無しさん
2022/07/18(月) 13:28:37.05ID:T3NdTMmH 会社でコード書いてるのなんて高卒とか専卒のやつらだろ
大学でちゃんとコード書いてる学生さんの方が上だよ
大学でちゃんとコード書いてる学生さんの方が上だよ
399デフォルトの名無しさん
2022/07/18(月) 13:34:29.85ID:VS4KQwYj なぜか学歴の話しになってて草草草
頭の悪い人って物事を別の方向に捉えて勝手に結論付けるよね
頭の悪い人って物事を別の方向に捉えて勝手に結論付けるよね
400デフォルトの名無しさん
2022/07/18(月) 14:19:10.39ID:unHGOtJd N□□セキュアとかの仕事ですら、設計ドキュメント無かったぜ
401デフォルトの名無しさん
2022/07/18(月) 14:39:42.97ID:kCD1BPcn ビルは完全にウォーターフォールでしか開発できないからな
途中で改善点など見つけても後戻りできない
そこがソフトウェア開発と建築との違いで何度でも試行錯誤してブラッシュアップできるのがソフトウェアの良いところなのに
混同して考えているという時点でセンスないし向いてないから別の業界に転職した方が良いよ
途中で改善点など見つけても後戻りできない
そこがソフトウェア開発と建築との違いで何度でも試行錯誤してブラッシュアップできるのがソフトウェアの良いところなのに
混同して考えているという時点でセンスないし向いてないから別の業界に転職した方が良いよ
402デフォルトの名無しさん
2022/07/18(月) 15:03:52.33ID:RNtKt9aH 設計ドキュメントの作成・維持・読んで理解するのに要するコスト・時間と
設計ドキュメントなしにコードを読んで設計を理解するのに要するコスト・時間を状況に応じて比較して考えればいいよ
設計するやつとコード書くやつが分かれてたり
コードだけからだと設計を読み取るのに時間がかかったり
そもそもコードを読めない・読まない人が設計を理解する必要があったり
多くのソフトウェアやシステムは後者のコストが著しく高くなる環境のほうが一般的
設計するやつとコード書くやつが同じでユーザーもコードを読む前提のソフトウェアやシステムはどちらかといえば例外的
設計ドキュメントなしにコードを読んで設計を理解するのに要するコスト・時間を状況に応じて比較して考えればいいよ
設計するやつとコード書くやつが分かれてたり
コードだけからだと設計を読み取るのに時間がかかったり
そもそもコードを読めない・読まない人が設計を理解する必要があったり
多くのソフトウェアやシステムは後者のコストが著しく高くなる環境のほうが一般的
設計するやつとコード書くやつが同じでユーザーもコードを読む前提のソフトウェアやシステムはどちらかといえば例外的
403デフォルトの名無しさん
2022/07/18(月) 15:52:41.75ID:88C78euP >>394
オープンソースのソフトウェアに分厚い設計資料はありますか?
オープンソースのソフトウェアに分厚い設計資料はありますか?
404デフォルトの名無しさん
2022/07/18(月) 16:11:52.15ID:f70Fl4T+ >>403
オープンソースには分かるやつしか参加しないから、ソースコードを別の言葉で書き直したような設計書ならいらないんだよね。
企業は人員の 9割が無能だから、そいつらのための仕事として設計書作成作業を設けてるだけ。
んで 9割の連中がその設計書を見ながら作った動かないコードは、残りの 1割の連中が設計書など見ずに動くように書き直す。
だから設計書と製品が解離する。
オープンソースには分かるやつしか参加しないから、ソースコードを別の言葉で書き直したような設計書ならいらないんだよね。
企業は人員の 9割が無能だから、そいつらのための仕事として設計書作成作業を設けてるだけ。
んで 9割の連中がその設計書を見ながら作った動かないコードは、残りの 1割の連中が設計書など見ずに動くように書き直す。
だから設計書と製品が解離する。
405デフォルトの名無しさん
2022/07/18(月) 17:54:35.48ID:lfKiyV0F >>404
オープンソースに分厚い設計資料がないのだったら、本質的に企業の仕事においても不要でしょうね、偉い人にはどうしてそんなことがわからないのでしょうか?
オープンソースに分厚い設計資料がないのだったら、本質的に企業の仕事においても不要でしょうね、偉い人にはどうしてそんなことがわからないのでしょうか?
406デフォルトの名無しさん
2022/07/18(月) 18:01:12.19ID:LUyjnnnP 製作者がいなくなったとき、
オープンソースは引き継げる能力のあるやつが引き継ぐ、いなければいつか消えるのみ
会社は他に能力のあるやつがいなくても、誰かに引き継がせなきゃいけない。放置は許されない
オープンソースは引き継げる能力のあるやつが引き継ぐ、いなければいつか消えるのみ
会社は他に能力のあるやつがいなくても、誰かに引き継がせなきゃいけない。放置は許されない
407デフォルトの名無しさん
2022/07/18(月) 18:20:16.09ID:Vps5Lgrt >>396
せやな。Linuxぐらいの設計書は必要
せやな。Linuxぐらいの設計書は必要
408デフォルトの名無しさん
2022/07/18(月) 19:30:18.00ID:iK5pz8lh409デフォルトの名無しさん
2022/07/18(月) 20:03:26.47ID:SlCZ8nzK 書類なんざ所詮管理手段の一つ。結果が伴わなければ意味ない
書類の作成を目的化するような会社じゃビジネスは上手くいかないだろうね
書類の作成を目的化するような会社じゃビジネスは上手くいかないだろうね
410デフォルトの名無しさん
2022/07/19(火) 00:29:30.95ID:KHPjwZjx ダメなプロジェクトや仕事は設計ドキュメントが先にある
良いプロジェクトや仕事は様々なレベルでそれぞれ試しに作っては壊したり比較したりやり直したり
システムアーキテクチャレベルで固まってきてもデータ構造やらAPI相当やらはリファクタリングでどんどん良いものへ変化
そして最後に設計ドキュメントに相当するものをきちんと作る
良いプロジェクトや仕事は様々なレベルでそれぞれ試しに作っては壊したり比較したりやり直したり
システムアーキテクチャレベルで固まってきてもデータ構造やらAPI相当やらはリファクタリングでどんどん良いものへ変化
そして最後に設計ドキュメントに相当するものをきちんと作る
411デフォルトの名無しさん
2022/07/19(火) 02:32:32.91ID:u93zEaXd エクセルのデータを読み込んで加工して手元のmysqlに書き込むプログラムがあるのですが
プログラムで書き込むのと sql fileに書き出してコマンドで実行する方式のどっちがいいでしょうか?
プログラムで書き込むのと sql fileに書き出してコマンドで実行する方式のどっちがいいでしょうか?
412デフォルトの名無しさん
2022/07/19(火) 11:20:13.57ID:6ZFnu09m >>411
どういう観点で比較したいの?
どういう観点で比較したいの?
413デフォルトの名無しさん
2022/07/21(木) 14:52:16.30ID:qntGDUHT C,C++の勉強してListの構造を学んで疑問に思ったのですが
Javaなどでメモリ飛び飛びで作られたListが存在するときにGCが発生したら完全整列するのでしょうか?それとも要素毎に空いたメモリに再配置されるのでしょうか?
前者なら遅くなるなぁ?と、後者で動いてる?
まぁわかったところでGCなのでやりようがないかもですが、考え方だけでも知っておきたいです
Javaなどでメモリ飛び飛びで作られたListが存在するときにGCが発生したら完全整列するのでしょうか?それとも要素毎に空いたメモリに再配置されるのでしょうか?
前者なら遅くなるなぁ?と、後者で動いてる?
まぁわかったところでGCなのでやりようがないかもですが、考え方だけでも知っておきたいです
414デフォルトの名無しさん
2022/07/21(木) 14:59:01.82ID:cxEc0/aI415デフォルトの名無しさん
2022/07/21(木) 15:10:02.66ID:qntGDUHT416デフォルトの名無しさん
2022/07/22(金) 21:00:16.41ID:coO/VVNr アセンブラスレがなかったのでこちらのスレで失礼します。
学校でH8/300Hのマイコン学習をしています。
どうしてもわからないことがあり質問させてただきます。
HEW 生成ファイル補足説明(H8S、H8/300)
https://www.renesas.com/us/ja/document/man/735601
の3ページ目、リセット関数に関してです。
.SECTION PResetPRG,CODE,LOCATE=H'0400
_PowerON_Reset:
SLEEP
.SECTION $VECT0,DATA,LOCATE=H'0000
.DATA.L _PowerON_Reset
.END
上記のコードは実行してもただSLEEPするだけ、ということは理解できています。
コードの読み方を調べているうちに、
上記コードで定義されているPResetPRGのH'0400と、$VECT0のH'0000は、
ディフォで生成される設定に合わせているということは理解できたのですが、
じゃあ、なんでわざわざ宣言するんでしょうか?
ネットや書籍で調べまくっているのですが、掘り下げた説明に出会えず、
これがピンとこないせいか、授業の内容もいまいちピンときません。
まだLEDをピカらせるといった初歩的なことをしているだけですが、
リセット関数はどのコードにも冒頭部分に記述されています。
しかし初期設定部分ということもあってかコピペで済ましており、
学校の人も誰もこの記述の具体的な説明を含む読み方ができません。
どなたか日本語訳的な感じで読み替えてもらえないでしょうか?
よろしくおねがしいます。
学校でH8/300Hのマイコン学習をしています。
どうしてもわからないことがあり質問させてただきます。
HEW 生成ファイル補足説明(H8S、H8/300)
https://www.renesas.com/us/ja/document/man/735601
の3ページ目、リセット関数に関してです。
.SECTION PResetPRG,CODE,LOCATE=H'0400
_PowerON_Reset:
SLEEP
.SECTION $VECT0,DATA,LOCATE=H'0000
.DATA.L _PowerON_Reset
.END
上記のコードは実行してもただSLEEPするだけ、ということは理解できています。
コードの読み方を調べているうちに、
上記コードで定義されているPResetPRGのH'0400と、$VECT0のH'0000は、
ディフォで生成される設定に合わせているということは理解できたのですが、
じゃあ、なんでわざわざ宣言するんでしょうか?
ネットや書籍で調べまくっているのですが、掘り下げた説明に出会えず、
これがピンとこないせいか、授業の内容もいまいちピンときません。
まだLEDをピカらせるといった初歩的なことをしているだけですが、
リセット関数はどのコードにも冒頭部分に記述されています。
しかし初期設定部分ということもあってかコピペで済ましており、
学校の人も誰もこの記述の具体的な説明を含む読み方ができません。
どなたか日本語訳的な感じで読み替えてもらえないでしょうか?
よろしくおねがしいます。
417デフォルトの名無しさん
2022/07/22(金) 21:56:20.98ID:5RjVUBfu アセンブラというかハードの知識が足りてないんじゃね?
ベクタテーブルで調べてごらん。
ベクタテーブルで調べてごらん。
418デフォルトの名無しさん
2022/07/22(金) 21:57:59.77ID:JKfbNlr+ h8なんて知らん素人だけどさ
このCPUはリセットされると0番地の内容をプログラムカウンタに設定して
そこから実行を開始するっぽい
で、今回はH'0000番地にVECT0という名前をつけて
内容はH'0400
H'0400番地にPResetPRGという名前をつけて
内容はSLEEP命令
この名前とかアドレスはその開発環境のデフォルトなんでしょ
このCPUはリセットされると0番地の内容をプログラムカウンタに設定して
そこから実行を開始するっぽい
で、今回はH'0000番地にVECT0という名前をつけて
内容はH'0400
H'0400番地にPResetPRGという名前をつけて
内容はSLEEP命令
この名前とかアドレスはその開発環境のデフォルトなんでしょ
419デフォルトの名無しさん
2022/07/22(金) 22:31:54.54ID:QLPuwyNz420416
2022/07/22(金) 23:10:59.57ID:coO/VVNr >>417->>419
ありがとうございます。書き込み後も調べ続けておりました。
>>417
一応イメージは掴んでいるつもりですが、改めて勉強してみます。
リセット時や割り込み時の処理の仕方だと認識しています。
自分はたぶんsection宣言の読み方や使い方がわかっていない気がします。
>>418
ありがとうございます。レス読んで思い出しました。
このリセット関数については、最初は先生に質問したのですが、
「0000の中に0400が入っているんだよ」と言われ、その時はわかった気になったのですが、
帰宅後に調べ直したらまたわからなくなり、今回の質問に至ったという経緯でした。
わかる
・このCPUはリセットされると0番地から実行を開始する
・名前とかアドレスはデフォルトのやつをそのまま使っている
・H'0000番地にVECT0という名前をつけている。
・H'0400番地にPResetPRGという名前をつけている。
わからない1
・H'0000番地の中にH'0400が入っているについて、その入れる処理は、どこがそうなっているんですか?
私の理解では「番地に名前をつけて、コードかデータの種類を指定しただけど、入れる処理はしていない」です。
わからない2
・.DATA.L _PowerON_Reset はプログラムを「_PowerON_Reset」からスタートする動作だと
教わりましたが、この記述でなんでそうなるかがわからないです。
>>419
ありがとうございます。そういうもんですか・・・そこは飲み込みます。
ありがとうございます。書き込み後も調べ続けておりました。
>>417
一応イメージは掴んでいるつもりですが、改めて勉強してみます。
リセット時や割り込み時の処理の仕方だと認識しています。
自分はたぶんsection宣言の読み方や使い方がわかっていない気がします。
>>418
ありがとうございます。レス読んで思い出しました。
このリセット関数については、最初は先生に質問したのですが、
「0000の中に0400が入っているんだよ」と言われ、その時はわかった気になったのですが、
帰宅後に調べ直したらまたわからなくなり、今回の質問に至ったという経緯でした。
わかる
・このCPUはリセットされると0番地から実行を開始する
・名前とかアドレスはデフォルトのやつをそのまま使っている
・H'0000番地にVECT0という名前をつけている。
・H'0400番地にPResetPRGという名前をつけている。
わからない1
・H'0000番地の中にH'0400が入っているについて、その入れる処理は、どこがそうなっているんですか?
私の理解では「番地に名前をつけて、コードかデータの種類を指定しただけど、入れる処理はしていない」です。
わからない2
・.DATA.L _PowerON_Reset はプログラムを「_PowerON_Reset」からスタートする動作だと
教わりましたが、この記述でなんでそうなるかがわからないです。
>>419
ありがとうございます。そういうもんですか・・・そこは飲み込みます。
421デフォルトの名無しさん
2022/07/22(金) 23:24:37.68ID:bpOnuI9e CODE Section は、0400 から、
DATA Section は、0000 からとか、
どこのアドレスを使うか、決めるのは自由だろ?
DATA Section は、0000 からとか、
どこのアドレスを使うか、決めるのは自由だろ?
422デフォルトの名無しさん
2022/07/22(金) 23:37:14.09ID:bpOnuI9e 0000 などは、16進数か?
0000〜00ff: 0〜255
0100〜01ff: 256〜511
0200〜02ff: 512〜768
0300〜03ff: 768〜1023
0400〜04ff: 1024〜1279
つまり、0400 は1024のアドレスから始まる
0000〜00ff: 0〜255
0100〜01ff: 256〜511
0200〜02ff: 512〜768
0300〜03ff: 768〜1023
0400〜04ff: 1024〜1279
つまり、0400 は1024のアドレスから始まる
423デフォルトの名無しさん
2022/07/22(金) 23:38:03.71ID:JKfbNlr+ _PowerON_Resetっていうラベルは
SLEEP命令の位置のH'0400を指すんだよ
それで.DATA.Lという疑似命令で
現在位置H'0000にH'0400を出力する
SLEEP命令の位置のH'0400を指すんだよ
それで.DATA.Lという疑似命令で
現在位置H'0000にH'0400を出力する
424デフォルトの名無しさん
2022/07/22(金) 23:51:00.22ID:JKfbNlr+ というかマニュアルを読めよ全部書いてあるぞ
たぶんこの2つだろ↓
H8/300H シリーズ プログラミングマニュアル
H8S, H8/300 シリーズ クロスアセンブラ ユーザーズマニュアル
たぶんこの2つだろ↓
H8/300H シリーズ プログラミングマニュアル
H8S, H8/300 シリーズ クロスアセンブラ ユーザーズマニュアル
425デフォルトの名無しさん
2022/07/23(土) 00:11:15.01ID:mkhmVAM0 >>424
今回の質問の前に思いつく限りの検索ワードで調べました。
以下の媒体は特に参考になったと思えたページの一部です。
流石に書籍やpdfを全ページ読んだとは言いませんが、
SECTION、PResetPRG、CODE、LOCATE=H'0400、_PowerON_Reset:、$VECT0、DATA
など、コード内にあった主要な記号は全て検索し、
ヒットした箇所の前後の記述を熟読し、それでも理解できなかったので質問しました。
今は >>423 さんのレスにあった疑似命令について調べているる途中です。
プログラムはHTML/CSSしかやったことがなく、そっちの感覚が全く使えないので苦慮しております。
[プログラム](http://www.t-net.ne.jp/~kuu-sky/page090.html)
[01_01.EPS](https://nagasm.org/ASL/manual/soft.pdf)
[HEW 生成ファイル補足説明(H8S、H8/300)](https://www.renesas.com/us/ja/document/man/735601)
[H8プログラミングメモ](https://bluefish.orz.hm/sdoc/h8_prog.html)
[たのしくできるH8マイコン制御実験 - 横田一弘 - Google ブックス](https://books.google.co.jp/books?id=hNPVNj4wuOIC&printsec=frontcover&hl=ja#v=onepage&q&f=false)
(https://books.google.co.jp/books?id=9dd1xBNFRpAC&printsec=frontcover&hl=ja#v=onepage&q&f=false)
[ppkitinside2004.pdf](http://www.robot-triathlon.org/kit/ppkitinside2004.pdf)
[H8S H8/300シリーズ クロスアセンブラ ユーザーズマニュアル](https://www.renesas.com/us/ja/support/document-search?keywords=j702038_h8s)
[H8/36064グループハードウェアマニュアル](https://www.renesas.com/jp/ja/document/mah/h836064-group-hardware-manual?language=ja&r=1052281)
[プログラミング(前編) | Renesas](https://www.renesas.com/jp/ja/support/engineer-school/mcu-programming-peripherals-05)
[H8/300H シリーズ プログラミングマニュアル](https://www.renesas.com/jp/ja/document/man/870711)
[猫ですが。: H8マイコン-その1](http://konohanaya.blogspot.com/2010/10/h.html)
今回の質問の前に思いつく限りの検索ワードで調べました。
以下の媒体は特に参考になったと思えたページの一部です。
流石に書籍やpdfを全ページ読んだとは言いませんが、
SECTION、PResetPRG、CODE、LOCATE=H'0400、_PowerON_Reset:、$VECT0、DATA
など、コード内にあった主要な記号は全て検索し、
ヒットした箇所の前後の記述を熟読し、それでも理解できなかったので質問しました。
今は >>423 さんのレスにあった疑似命令について調べているる途中です。
プログラムはHTML/CSSしかやったことがなく、そっちの感覚が全く使えないので苦慮しております。
[プログラム](http://www.t-net.ne.jp/~kuu-sky/page090.html)
[01_01.EPS](https://nagasm.org/ASL/manual/soft.pdf)
[HEW 生成ファイル補足説明(H8S、H8/300)](https://www.renesas.com/us/ja/document/man/735601)
[H8プログラミングメモ](https://bluefish.orz.hm/sdoc/h8_prog.html)
[たのしくできるH8マイコン制御実験 - 横田一弘 - Google ブックス](https://books.google.co.jp/books?id=hNPVNj4wuOIC&printsec=frontcover&hl=ja#v=onepage&q&f=false)
(https://books.google.co.jp/books?id=9dd1xBNFRpAC&printsec=frontcover&hl=ja#v=onepage&q&f=false)
[ppkitinside2004.pdf](http://www.robot-triathlon.org/kit/ppkitinside2004.pdf)
[H8S H8/300シリーズ クロスアセンブラ ユーザーズマニュアル](https://www.renesas.com/us/ja/support/document-search?keywords=j702038_h8s)
[H8/36064グループハードウェアマニュアル](https://www.renesas.com/jp/ja/document/mah/h836064-group-hardware-manual?language=ja&r=1052281)
[プログラミング(前編) | Renesas](https://www.renesas.com/jp/ja/support/engineer-school/mcu-programming-peripherals-05)
[H8/300H シリーズ プログラミングマニュアル](https://www.renesas.com/jp/ja/document/man/870711)
[猫ですが。: H8マイコン-その1](http://konohanaya.blogspot.com/2010/10/h.html)
426419
2022/07/23(土) 00:43:15.10ID:6LmREh/f >>420
開発時にメモリ上にどのようにデータを配置するかの指定は今は一般的にリンカの仕事
パソコンのプログラムはもちろん、マイコンでも今はリンカに対して配置するアドレスを
指定するのが一般的
ルネサスの場合、現行のRXマイコンやRAマイコンなどもアドレスはリンカに指示する
しかしレガシーな開発環境だとアセンブラコード内にアドレスを直打ち出来たりして
>>416の例はそのケースだと思う。今時の開発環境でこのパターンはレアと
思われるので理解を深める必要はないかも
H8の開発環境はないのでRXマイコン(CS+)の例だけど
RXマイコンのリセットベクタのアドレスは0xFFFFFFFCからの4バイト
リセットが解除されるとこのアドレスの値がPCへロードされる(=書かれているアドレスから実行が始まる)
ttps://uploader.purinka.work/src/20992.png
右のメモリダンプを見ると0xFFFFFFFCの値は0000C0FF。リトルエンディアンなので並べ替えると
0xFFC00000となりこのアドレスから実行が開始される
左の逆アセンブルリストで0xFFC00000を見るとPowerON_Reset_PC関数がある
PowerON_Reset_PC関数のソースコードを見ると
ttps://uploader.purinka.work/src/20994.png
#pragma sectionでResetPRGセクションへ配置するよう指示されている(91行目~)
Pはセクション種別で2文字目以降がセクション名
そしてリンカの設定を見ると
ttps://uploader.purinka.work/src/20993.png
ResetPRGセクションは0xFFC00000が指定されていて上記アドレスと一致する
開発時にメモリ上にどのようにデータを配置するかの指定は今は一般的にリンカの仕事
パソコンのプログラムはもちろん、マイコンでも今はリンカに対して配置するアドレスを
指定するのが一般的
ルネサスの場合、現行のRXマイコンやRAマイコンなどもアドレスはリンカに指示する
しかしレガシーな開発環境だとアセンブラコード内にアドレスを直打ち出来たりして
>>416の例はそのケースだと思う。今時の開発環境でこのパターンはレアと
思われるので理解を深める必要はないかも
H8の開発環境はないのでRXマイコン(CS+)の例だけど
RXマイコンのリセットベクタのアドレスは0xFFFFFFFCからの4バイト
リセットが解除されるとこのアドレスの値がPCへロードされる(=書かれているアドレスから実行が始まる)
ttps://uploader.purinka.work/src/20992.png
右のメモリダンプを見ると0xFFFFFFFCの値は0000C0FF。リトルエンディアンなので並べ替えると
0xFFC00000となりこのアドレスから実行が開始される
左の逆アセンブルリストで0xFFC00000を見るとPowerON_Reset_PC関数がある
PowerON_Reset_PC関数のソースコードを見ると
ttps://uploader.purinka.work/src/20994.png
#pragma sectionでResetPRGセクションへ配置するよう指示されている(91行目~)
Pはセクション種別で2文字目以降がセクション名
そしてリンカの設定を見ると
ttps://uploader.purinka.work/src/20993.png
ResetPRGセクションは0xFFC00000が指定されていて上記アドレスと一致する
427419
2022/07/23(土) 00:44:12.83ID:6LmREh/f >・このCPUはリセットされると0番地から実行を開始する
正確にはこれは間違っている。正しくは0番地に書いてあるアドレスから実行が開始される
リセットベクタというかベクタテーブルには大きく分けて2パターンあって
・該当するアドレスに書いてある命令を実行する
・該当するアドレスにアドレスから実行する
通常はこのどちらか。H8は後者。前者は古い物に多くて、新しめのはほとんど後者
>・H'0000番地の中にH'0400が入っているについて、その入れる処理は、どこがそうなっているんですか?
>.SECTION $VECT0,DATA,LOCATE=H'0000
>.DATA.L _PowerON_Reset ←PowerON_Resetのアドレスが配置される実データ
この部分が該当箇所。最終的なデータを出力しているのはアセンブラ
上にも書いたけどこのような書き方は今の主流ではない
何となくだけど開発ツールの扱いもまだ不慣れなのかな。自分も使いこなせているとは言い難いけど
正確にはこれは間違っている。正しくは0番地に書いてあるアドレスから実行が開始される
リセットベクタというかベクタテーブルには大きく分けて2パターンあって
・該当するアドレスに書いてある命令を実行する
・該当するアドレスにアドレスから実行する
通常はこのどちらか。H8は後者。前者は古い物に多くて、新しめのはほとんど後者
>・H'0000番地の中にH'0400が入っているについて、その入れる処理は、どこがそうなっているんですか?
>.SECTION $VECT0,DATA,LOCATE=H'0000
>.DATA.L _PowerON_Reset ←PowerON_Resetのアドレスが配置される実データ
この部分が該当箇所。最終的なデータを出力しているのはアセンブラ
上にも書いたけどこのような書き方は今の主流ではない
何となくだけど開発ツールの扱いもまだ不慣れなのかな。自分も使いこなせているとは言い難いけど
428デフォルトの名無しさん
2022/07/23(土) 01:38:12.90ID:mkhmVAM0 >>>423
調べてきました!
DATA命令を使ってメモリ上にアドレスを確保できるってことですね。
どうやら自分はその使い方を、検索時に見落としていたようです。
ようやく0000の中に0400が入る流れがイメージできました。
レスの内容を頼りに調べたところ、下記書籍にDATA命令を用いて
アドレスシンボルの番地をメモリに確保する旨の解説がありました。
たのしくできるH8マイコン制御実験
https://books.google.co.jp/books?id=hNPVNj4wuOIC&printsec=frontcover&hl=ja#v=onepage&q&f=false
>>426-427
419さん画像付きでの解説ありがとうございます!今の自分は「リンカとは?」ってレベルなのですが、
少なくともその「ResetPRGセクションは0xFFC00000が指定されていて上記アドレスと一致する」までの解説は、
画像を見ながら最後まで追いかけることができました。
来週また学校へ行った時に、HEWのツールで同じように追いかけてみます!
「0番地に書いてあるアドレスから実行が開始される」のご指摘も含めて、今後も学んでいきます。
調べてきました!
DATA命令を使ってメモリ上にアドレスを確保できるってことですね。
どうやら自分はその使い方を、検索時に見落としていたようです。
ようやく0000の中に0400が入る流れがイメージできました。
レスの内容を頼りに調べたところ、下記書籍にDATA命令を用いて
アドレスシンボルの番地をメモリに確保する旨の解説がありました。
たのしくできるH8マイコン制御実験
https://books.google.co.jp/books?id=hNPVNj4wuOIC&printsec=frontcover&hl=ja#v=onepage&q&f=false
>>426-427
419さん画像付きでの解説ありがとうございます!今の自分は「リンカとは?」ってレベルなのですが、
少なくともその「ResetPRGセクションは0xFFC00000が指定されていて上記アドレスと一致する」までの解説は、
画像を見ながら最後まで追いかけることができました。
来週また学校へ行った時に、HEWのツールで同じように追いかけてみます!
「0番地に書いてあるアドレスから実行が開始される」のご指摘も含めて、今後も学んでいきます。
429デフォルトの名無しさん
2022/07/23(土) 11:02:36.52ID:a/eG1EZ0 うむ。なかなか見所のある若者じゃ、精進なされよ
430419
2022/07/23(土) 11:39:15.16ID:n897GEgW ぶっちゃけ「今更H8かよ」感はある
確かに古い故にシンプルだろうし学校の教材の都合なんだろうけど
H8マイコンのほとんど(全部?)は新規開発非推奨になっているはず
マイコンの勉強にはなっても実践的ではない
>>428
本気でマイコン開発を勉強したいなら32bitマイコンのボードを購入して弄ってみる方が
良いかもしれない・・・と思ったけど今やルネサスの評価・試作ボードは値上がっている上に
販路も限られるようだ。国内から買えるところだとTarget Board for RXもRA Fast Prototyping Boardも
chip1stopかmouserくらいしかなくて値段も4~5千円くらいはするっぽい
自分のパソコンを持っているならだけど、HEW後続のCS+の評価版は無料で利用できるから
ダウンロード(確か要登録)&インストールして同梱されているRXシミュレータを動かしてみるとか?
RXのシミュレータはお世辞にも出来が良いとは言えないけど>>426程度の確認は出来るし
ルネサスがRXをH8の後続に据えていることもあってH8→RX移行マニュアル的なドキュメントも揃っている
もちろんH8のノウハウそのままとは行かないけど雰囲気を掴むくらいは出来るのでは
あとリンカに関してだけどそもそもリンカを含む低レイヤーの解説資料は少ないと思う
自分が知る範囲だとこの本を紹介しておく
リンカ・ローダ実践開発テクニック
ttps://shop.cqpub.co.jp/hanbai/books/38/38071.html
FreeBSD&gcc環境で解説されていてマイコンに特化した説明ではないので適宜読み替える必要があるけど
確かに古い故にシンプルだろうし学校の教材の都合なんだろうけど
H8マイコンのほとんど(全部?)は新規開発非推奨になっているはず
マイコンの勉強にはなっても実践的ではない
>>428
本気でマイコン開発を勉強したいなら32bitマイコンのボードを購入して弄ってみる方が
良いかもしれない・・・と思ったけど今やルネサスの評価・試作ボードは値上がっている上に
販路も限られるようだ。国内から買えるところだとTarget Board for RXもRA Fast Prototyping Boardも
chip1stopかmouserくらいしかなくて値段も4~5千円くらいはするっぽい
自分のパソコンを持っているならだけど、HEW後続のCS+の評価版は無料で利用できるから
ダウンロード(確か要登録)&インストールして同梱されているRXシミュレータを動かしてみるとか?
RXのシミュレータはお世辞にも出来が良いとは言えないけど>>426程度の確認は出来るし
ルネサスがRXをH8の後続に据えていることもあってH8→RX移行マニュアル的なドキュメントも揃っている
もちろんH8のノウハウそのままとは行かないけど雰囲気を掴むくらいは出来るのでは
あとリンカに関してだけどそもそもリンカを含む低レイヤーの解説資料は少ないと思う
自分が知る範囲だとこの本を紹介しておく
リンカ・ローダ実践開発テクニック
ttps://shop.cqpub.co.jp/hanbai/books/38/38071.html
FreeBSD&gcc環境で解説されていてマイコンに特化した説明ではないので適宜読み替える必要があるけど
431デフォルトの名無しさん
2022/07/23(土) 11:46:55.13ID:PpxI5rKd アセンブラでリンカの話とか最初からしてもなぁwとは思う
432デフォルトの名無しさん
2022/07/23(土) 12:01:32.61ID:bR39w9BX H8のベクタってその番地にjmpを描くんじゃないの
433デフォルトの名無しさん
2022/07/23(土) 12:08:49.71ID:ESnt81dA H8/3069Fみついわボードはよく出来てたなあ
H8のアーキテクチャは普通のPCのCPUと同じノイマン型だからアセンブラの学習には良いと思う
当時はWebでの情報も比較的多かったが
今はどうかな
H8のアーキテクチャは普通のPCのCPUと同じノイマン型だからアセンブラの学習には良いと思う
当時はWebでの情報も比較的多かったが
今はどうかな
434419
2022/07/23(土) 12:28:51.76ID:n897GEgW >>431
現在の学習レベルだと、とりあえず「そう言うもんだ」で済ましてかまわないとは思うけど
本人は納得できていないみたいだし、いつかは理解しなきゃいけない部分だし良いんでないの
割り込みコントローラ回りを弄るようになったらデバッグのために嫌でも覚えるようだろうし
現在の学習レベルだと、とりあえず「そう言うもんだ」で済ましてかまわないとは思うけど
本人は納得できていないみたいだし、いつかは理解しなきゃいけない部分だし良いんでないの
割り込みコントローラ回りを弄るようになったらデバッグのために嫌でも覚えるようだろうし
435416
2022/07/23(土) 14:22:31.02ID:mkhmVAM0 >>430
学校というのは実は職業訓練でして。
今はH8/TinyマイコンとHEW環境を教材にして学んでいますが、
この後の授業は半年かけて、C言語、ラズパイ、Java、スマホのアプリ制作と進んでいく流れです。
H8が時代を感じるものであることは承知しており、プログラムや組込みの基礎を学びつつ、
「わからない状況に陥った時の対応力」を鍛えるつもりで向き合っています。
今回は、自分が勉強しなくちゃいけないところがよくわかりました。
メモリとCPUの関係と、プログラムカウンタの動き方をよく調べておきます。
あとDATA命令の使い方もおさらいします。
ソースコードはちゃんと、1行1行全部、根拠付きで説明できるようになりたいですね。
>HEW後続のCS+の評価版
環境は自宅でも導入しようと以前調べたのですが、自分のメイン機がMac(M1Air)でして、
HWEがMacで使えないと知り、ちょっと保留にしているところです。
Windows機は10年ほど前に買ったDELLのinsprion15Rが押し入れに眠っているので
Macでやるいい方法が見つからなかったから、お盆あたりにそいつを蘇生しようかな、と。
HEW後続のCS+の評価版の件と、リンカ・ローダ実践開発テクニックはブクマ入れました。
学校というのは実は職業訓練でして。
今はH8/TinyマイコンとHEW環境を教材にして学んでいますが、
この後の授業は半年かけて、C言語、ラズパイ、Java、スマホのアプリ制作と進んでいく流れです。
H8が時代を感じるものであることは承知しており、プログラムや組込みの基礎を学びつつ、
「わからない状況に陥った時の対応力」を鍛えるつもりで向き合っています。
今回は、自分が勉強しなくちゃいけないところがよくわかりました。
メモリとCPUの関係と、プログラムカウンタの動き方をよく調べておきます。
あとDATA命令の使い方もおさらいします。
ソースコードはちゃんと、1行1行全部、根拠付きで説明できるようになりたいですね。
>HEW後続のCS+の評価版
環境は自宅でも導入しようと以前調べたのですが、自分のメイン機がMac(M1Air)でして、
HWEがMacで使えないと知り、ちょっと保留にしているところです。
Windows機は10年ほど前に買ったDELLのinsprion15Rが押し入れに眠っているので
Macでやるいい方法が見つからなかったから、お盆あたりにそいつを蘇生しようかな、と。
HEW後続のCS+の評価版の件と、リンカ・ローダ実践開発テクニックはブクマ入れました。
436デフォルトの名無しさん
2022/07/23(土) 15:00:25.61ID:cRrcO95j うむ
437デフォルトの名無しさん
2022/07/23(土) 17:13:46.90ID:FGM1D/su 職業訓練校でH8でアセンブラなんて尖ってるなぁ。
アセンブラなんて基本情報処理向けにCASLでも勉強して
マイコンなんてCでいいと思うんだけどな。
アセンブラなんて基本情報処理向けにCASLでも勉強して
マイコンなんてCでいいと思うんだけどな。
438デフォルトの名無しさん
2022/07/23(土) 18:33:10.27ID:qgluObjk 単にアセンブラと言ってもOSみたいのを作る場合と単にユーザープログラムを
書く場合では必要な知識が違うと思われ
書く場合では必要な知識が違うと思われ
439デフォルトの名無しさん
2022/07/23(土) 19:08:26.97ID:PpxI5rKd >>438
そうだね
今時組み込みですらlinuxとかOSを使うし一昔前でもitronとか使ってたし
直接リセットベクタやらを設定するようなプログラムは現実にはスーパーファミコンぐらいの
時代に戻らないと無かった気がするな
まぁ、コンピュータの知識としての課題でそういう基礎と言うか基本的な事を知っていて悪い事では無いけど
相当前から最低でもC/C++での開発だっただろうし部分的にインラインアセンブラを使う事はあっても
アセンブラでOS無しのプログラムを書くことはまずないからそんな知識は今となっては殆ど必要無くなってるよね
そうだね
今時組み込みですらlinuxとかOSを使うし一昔前でもitronとか使ってたし
直接リセットベクタやらを設定するようなプログラムは現実にはスーパーファミコンぐらいの
時代に戻らないと無かった気がするな
まぁ、コンピュータの知識としての課題でそういう基礎と言うか基本的な事を知っていて悪い事では無いけど
相当前から最低でもC/C++での開発だっただろうし部分的にインラインアセンブラを使う事はあっても
アセンブラでOS無しのプログラムを書くことはまずないからそんな知識は今となっては殆ど必要無くなってるよね
440デフォルトの名無しさん
2022/07/23(土) 21:02:27.65ID:FAO+OpS7 組み込みやったことないのか
441デフォルトの名無しさん
2022/07/23(土) 21:44:52.49ID:ESnt81dA おいくつなのか判らんけどそんな学校行くよりとっとと就職して経験積んだ方が良いよ
マイコンの授業なんて担当教員の趣味がだいぶ入り込んでて誰も反論できないような立場だからやるだけ無駄
1年だかを無駄に過ごすとになる
マイコンの授業なんて担当教員の趣味がだいぶ入り込んでて誰も反論できないような立場だからやるだけ無駄
1年だかを無駄に過ごすとになる
442デフォルトの名無しさん
2022/07/23(土) 21:52:30.23ID:FbAMoEc9 パチスロの開発に関わってる方や詳しい方にお聞きしたいのですが、リプレイフラグは8977か8978のどちらでしょうか?
65536/8977と65536/8978どちらもほぼ7.3なので分かりません。フリーズ65536/8のように割り切れればいいのですが
よろしくお願いします。
65536/8977と65536/8978どちらもほぼ7.3なので分かりません。フリーズ65536/8のように割り切れればいいのですが
よろしくお願いします。
443419
2022/07/23(土) 22:15:43.77ID:n897GEgW >>435
>この後の授業は半年かけて、C言語、ラズパイ、Java、スマホのアプリ制作と進んでいく流れです。
半年でそれらを習得できるとは思えないからさわりだけなのかな。内容から察するととIoT関係かな?
>メモリとCPUの関係と、プログラムカウンタの動き方をよく調べておきます。
この辺は>>425の“プログラミング(前編) | Renesas”とその後編が比較的平易に説明されていると思うけど
不足なんだろうか
>自分のメイン機がMac(M1Air)
iOS開発とかは別として組み込みに限らず開発系でMacはサポートが弱い事が多くかつトラブルの元に
なりがちだからWindows環境かLinux環境を用意した方が良いと思う
>>439
お仕着せのSDKやコードジェネレータのみで作れる程度の物なら低レイヤーの知識は不要かもね
>>441
判らんでも無いけど、今のご時世に仕事しながら勉強できる会社ってどのくらいあるんだ?
特に質問者が疑問に思っているような低レイヤーに詳しい人がいる会社なんて結構レアそう
開発系なんて日常業務に忙殺されて下手すりゃ体をこわしかねないイメージがあるが
>この後の授業は半年かけて、C言語、ラズパイ、Java、スマホのアプリ制作と進んでいく流れです。
半年でそれらを習得できるとは思えないからさわりだけなのかな。内容から察するととIoT関係かな?
>メモリとCPUの関係と、プログラムカウンタの動き方をよく調べておきます。
この辺は>>425の“プログラミング(前編) | Renesas”とその後編が比較的平易に説明されていると思うけど
不足なんだろうか
>自分のメイン機がMac(M1Air)
iOS開発とかは別として組み込みに限らず開発系でMacはサポートが弱い事が多くかつトラブルの元に
なりがちだからWindows環境かLinux環境を用意した方が良いと思う
>>439
お仕着せのSDKやコードジェネレータのみで作れる程度の物なら低レイヤーの知識は不要かもね
>>441
判らんでも無いけど、今のご時世に仕事しながら勉強できる会社ってどのくらいあるんだ?
特に質問者が疑問に思っているような低レイヤーに詳しい人がいる会社なんて結構レアそう
開発系なんて日常業務に忙殺されて下手すりゃ体をこわしかねないイメージがあるが
444デフォルトの名無しさん
2022/07/23(土) 22:42:24.60ID:NgLN2nLK445デフォルトの名無しさん
2022/07/23(土) 23:07:39.46ID:NgLN2nLK Javaでスマホアプリが目標なのだろう
「低レベルもやっといた方がいいよね」はわかるが、
OSなし組み込みが目標でないならH8アセンブラはやりすぎでは…とは思う
(教材の都合とかもあるだろうから余計なお世話だとも思う)
「低レベルもやっといた方がいいよね」はわかるが、
OSなし組み込みが目標でないならH8アセンブラはやりすぎでは…とは思う
(教材の都合とかもあるだろうから余計なお世話だとも思う)
446デフォルトの名無しさん
2022/07/24(日) 00:13:27.63ID:SLnKepmZ 教える側がH8に一番慣れてるぐらいの事情しかない
H8はarduinoでマイコンが注目されてた頃にuClinuxで一時期頭ひとつ抜けてたがラズパイ以降役目を終えた
H8はarduinoでマイコンが注目されてた頃にuClinuxで一時期頭ひとつ抜けてたがラズパイ以降役目を終えた
447デフォルトの名無しさん
2022/07/24(日) 03:06:45.70ID:J65kp3AQ 組み込みは時間の無駄。
仕事で、お金をもらいながら勉強するもの
例えば、YouTube で有名な、雑食系エンジニア・KENTA の初心者向けRuby on Railsサロンは月千円で、
日本6位の3千人が入っている。1位はキングコング西野の数万人
Rails, Linux などが主な勉強内容
コンピューターの基礎は、入門書を1冊を読むだけ。
マイコンなど、全くアプリ開発者に関係ないので、時間の無駄
仕事で、お金をもらいながら勉強するもの
例えば、YouTube で有名な、雑食系エンジニア・KENTA の初心者向けRuby on Railsサロンは月千円で、
日本6位の3千人が入っている。1位はキングコング西野の数万人
Rails, Linux などが主な勉強内容
コンピューターの基礎は、入門書を1冊を読むだけ。
マイコンなど、全くアプリ開発者に関係ないので、時間の無駄
448447
2022/07/24(日) 03:17:30.67ID:J65kp3AQ 関係ない授業を入れて、全体の価格を上げるため。
詐欺みたいなもの
1個1個を深く勉強していたら、数年掛かるし、切りがない。
マイコン・C 言語だけで、数年掛かる。
アプリ開発者には関係ないから、時間の無駄
KENTA も言ってる。
必要な所だけを勉強して、それ以外は本をサラッと読んで、先に進む。
だから、半年でポートフォリオを作って転職できる
他の香具師が5年掛かっても、何も作れないのは、学校の水増しカリキュラムのせい
大切なのは何かを勉強することではなくて、
勉強する方法を勉強すること!
これがKENTA。
だから半年で開発者になれる
これが分からない香具師は、10年やっても出来ない
詐欺みたいなもの
1個1個を深く勉強していたら、数年掛かるし、切りがない。
マイコン・C 言語だけで、数年掛かる。
アプリ開発者には関係ないから、時間の無駄
KENTA も言ってる。
必要な所だけを勉強して、それ以外は本をサラッと読んで、先に進む。
だから、半年でポートフォリオを作って転職できる
他の香具師が5年掛かっても、何も作れないのは、学校の水増しカリキュラムのせい
大切なのは何かを勉強することではなくて、
勉強する方法を勉強すること!
これがKENTA。
だから半年で開発者になれる
これが分からない香具師は、10年やっても出来ない
449デフォルトの名無しさん
2022/07/24(日) 03:40:32.32ID:EX/z9tJK ダレだよケンタってチキンか?w
450デフォルトの名無しさん
2022/07/24(日) 04:23:17.54ID:E5ZFw2qU 底辺派遣奴隷がKENTAのYoutubeみて知ったかぶりして、
自分があたかもKENTAになったかのように妄想する自慰の道具。
自分があたかもKENTAになったかのように妄想する自慰の道具。
451デフォルトの名無しさん
2022/07/24(日) 09:32:03.94ID:hnBeY/7d エンジニア不足解消にむけて、文科省、通産省がいま最も注目する新進気鋭の先導者では?
文科省がエンジニア育成にユーチューブを活用するワーキンググループを発足したのは、彼の影響と思われる。
文科省がエンジニア育成にユーチューブを活用するワーキンググループを発足したのは、彼の影響と思われる。
452デフォルトの名無しさん
2022/07/24(日) 10:55:48.87ID:QqIxIyeR DBとネットワークもやった方がいいね
453デフォルトの名無しさん
2022/07/24(日) 13:09:38.66ID:2lyIaqMH ライブラリの作り方教えて
454デフォルトの名無しさん
2022/07/24(日) 13:11:39.16ID:vEjRJRF/ 何のや
455416
2022/07/24(日) 13:34:31.70ID:MO/A+cHc >Iot系?
学校バレするとあれなので回答は控えます。ちなみに40代前半IT業界未経験です。
>この辺は>>425の“プログラミング(前編)〜説明されていると思うけど不足なんだろうか
今回の質問の前にも目を通していましたが、重視していませんでした。
ここで教わったあと読み返してようやく繋がった、という感じです。
私が質問前の自力タイム中に注目していたことが
SECTIONやPResetPRG、CODEといった、命令やラベル名、属性の使い方や役割でした。
それも、HTML/CSSやExcelでタグや関数の使い方を調べる時の感覚です。
メモリCPUプログラムカウンタといった部分は、
「今回の質問を調べる上では重視しなくてもいいところ」と思っていました。
でも、そのマイコンの仕組みの基礎の部分にちゃんと注目していれば、
1.HEWでビルドしたプログラムがセクションで定義した属性に従ってメモリに配置される
2.コードセクション(0400)にはSLEEPの部分で、データセクション(0000)にはDATA命令のやつか?
3.CPUはプログラムカウンタが示しているアドレスのメモリを見ている。最初は0000から読む。
4.0000に入っている内容はDATA命令のところ。つまり?
という順序的観点が検索時の前提になり、注目するところも変わったと今は考えています。
自分のつたない調べ方でも、>>428 の「たのしくできるH8マイコン制御実験」92pの
「DATA命令では,さらに,メモル上にアドレスを確保することができます」という記述にも辿り着けたと思います。
それが無理だったとしても、
DATA命令でアドレスの取得みたいなことをしているかも?
右に書いてある「PowerON_Reset」の番地を読んでいる?
などと、と推測することはできたでしょう。
ちなみにここで学ぶまでは「.DATA命令はメモリ領域を定義するもの」と認識していて、
右に書いてある「PowerON_Reset」との関係は謎でしたw
学校バレするとあれなので回答は控えます。ちなみに40代前半IT業界未経験です。
>この辺は>>425の“プログラミング(前編)〜説明されていると思うけど不足なんだろうか
今回の質問の前にも目を通していましたが、重視していませんでした。
ここで教わったあと読み返してようやく繋がった、という感じです。
私が質問前の自力タイム中に注目していたことが
SECTIONやPResetPRG、CODEといった、命令やラベル名、属性の使い方や役割でした。
それも、HTML/CSSやExcelでタグや関数の使い方を調べる時の感覚です。
メモリCPUプログラムカウンタといった部分は、
「今回の質問を調べる上では重視しなくてもいいところ」と思っていました。
でも、そのマイコンの仕組みの基礎の部分にちゃんと注目していれば、
1.HEWでビルドしたプログラムがセクションで定義した属性に従ってメモリに配置される
2.コードセクション(0400)にはSLEEPの部分で、データセクション(0000)にはDATA命令のやつか?
3.CPUはプログラムカウンタが示しているアドレスのメモリを見ている。最初は0000から読む。
4.0000に入っている内容はDATA命令のところ。つまり?
という順序的観点が検索時の前提になり、注目するところも変わったと今は考えています。
自分のつたない調べ方でも、>>428 の「たのしくできるH8マイコン制御実験」92pの
「DATA命令では,さらに,メモル上にアドレスを確保することができます」という記述にも辿り着けたと思います。
それが無理だったとしても、
DATA命令でアドレスの取得みたいなことをしているかも?
右に書いてある「PowerON_Reset」の番地を読んでいる?
などと、と推測することはできたでしょう。
ちなみにここで学ぶまでは「.DATA命令はメモリ領域を定義するもの」と認識していて、
右に書いてある「PowerON_Reset」との関係は謎でしたw
456デフォルトの名無しさん
2022/07/24(日) 14:05:47.61ID:brewOpTp >>453
つmake library
つmake library
457419
2022/07/24(日) 17:28:16.60ID:t3OCaKrr >>455
プログラムとデータやアドレスを分けて考えちゃっているのかな?
特にマイコンの場合はメモリ保護機能がないか、あっても限定的な機能しか持たないため
セクションの違いはメモリ配置場所(大抵の場合ROMかRAM)を決定する以上の意味を持たないことが多いです
つまり.DATA制御命令でマシンコードを配置してもその領域が実行可能であれば実行出来ますし
割り込みベクタテーブルにアドレスが配置されていれば割り込み発生時にはそのアドレスへジャンプします
あくまでハードウェアから見てそのデータ列がどのように見えるかがポイントで
与えたデータの管理はプログラマか処理系の仕事です
ちなみにCortex-MやRXの場合、ROMだけでなくRAMに配置されているマシンコードも
実行可能ですし(H8系でRAM上のマシンコードを実行可能かは確認できなかった)
割り込みベクタテーブルの一部をRAMに再配置することも出来ます
プログラムとデータやアドレスを分けて考えちゃっているのかな?
特にマイコンの場合はメモリ保護機能がないか、あっても限定的な機能しか持たないため
セクションの違いはメモリ配置場所(大抵の場合ROMかRAM)を決定する以上の意味を持たないことが多いです
つまり.DATA制御命令でマシンコードを配置してもその領域が実行可能であれば実行出来ますし
割り込みベクタテーブルにアドレスが配置されていれば割り込み発生時にはそのアドレスへジャンプします
あくまでハードウェアから見てそのデータ列がどのように見えるかがポイントで
与えたデータの管理はプログラマか処理系の仕事です
ちなみにCortex-MやRXの場合、ROMだけでなくRAMに配置されているマシンコードも
実行可能ですし(H8系でRAM上のマシンコードを実行可能かは確認できなかった)
割り込みベクタテーブルの一部をRAMに再配置することも出来ます
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】 アメリカ議会 「中国が台湾武力侵攻する準備を急速進展中」 [お断り★]
- 「二枚舌は許されない」中国外務省 高市総理の発言を批判… [BFU★]
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★8 [樽悶★]
- 中国国際航空が日本便を減便へ、春節休みも SNSでは投稿相次ぐ [七波羅探題★]
- 【速報】公然わいせつの疑いで逮捕・送検・略式起訴のAぇ! group 草間リチャード敬太メンバー 脱退を発表 「心の病の療養」に専念 [Ailuropoda melanoleuca★]
- 小野田紀美 経済安保相「悪いことをする外国人、日本にいない状況つくる」 [Hitzeschleier★]
- 【実況】博衣こよりのえちえちお子様ランチ🛸💜🥀🧪🍃
- サイバー攻撃されたアスクル、数万品目の商品出荷を手作業でこなす。日本人「あたたかみがある」 [492715192]
- 【悲報】高市有事、中国から追加の報復措置が来る模様 [834922174]
- 恐ろしい😈のちゅちょちゅちょ・ちぇびるのお🏡
- 奈良高専「ぼくらは、ほんとに負けたんでしょうか…」ロボコンで旭川1up周回作戦に敗北、涙ながらに語る。奈良OBからも疑問の声 [776365898]
- 【悲報】中国のNo.1動画サイト、「琉球は日本領土ではない」「日本人の琉球侵略を許すな」ネタで連日とんでもなく盛り上がる… [452836546]
