スレ立てるまでもない質問はここで 160匹目 at TECH
[2ch|▼Menu]
[前50を表示]
400:デフォルトの名無しさん
22/07/18 10:38:54.88 kCD1BPcn.net
OSSのライブラリって設計ドキュメントとかなかったりするよね
OSSの開発には参加できない低レベル人材ということだよね

401:デフォルトの名無しさん
22/07/18 12:40:49.12 VS4KQwYj.net
設計資料の無いプログラムなんて、何の価値も無いでしょ
個人が趣味やってるようなものなら話しは別だけど
会社で仕事としてやってるなら、ソースだけなんてありえない。
そこらに建ってるビルで設計図ないビルなんて無いだろ
犬小屋つくるのとはわけがちがう

402:デフォルトの名無しさん
22/07/18 12:47:50.22 QxUO6Zmj.net
設計図は保守のために必要なのであって開発のための設計図は不要

403:デフォルトの名無しさん
22/07/18 12:49:37.70 VS4KQwYj.net
会社に入れば分かるよ
学生さんがお遊びで書いてるようなおもちゃコードとはダンチレベチだから

404:デフォルトの名無しさん
22/07/18 13:25:28.89 LUyjnnnP.net
OSSはわかる人が参加するものであって
企業内の製品は誰でもわかるようにしなければいけない
設計あるなしは要否によっても決まるもの、という位置付けに変化した

405:デフォルトの名無しさん
22/07/18 13:28:37.05 T3NdTMmH.net
会社でコード書いてるのなんて高卒とか専卒のやつらだろ
大学でちゃんとコード書いてる学生さんの方が上だよ

406:デフォルトの名無しさん
22/07/18 13:34:29.85 VS4KQwYj.net
なぜか学歴の話しになってて草草草
頭の悪い人って物事を別の方向に捉えて勝手に結論付けるよね

407:デフォルトの名無しさん
22/07/18 14:19:10.39 unHGOtJd.net
N□□セキュアとかの仕事ですら、設計ドキュメント無かったぜ

408:デフォルトの名無しさん
22/07/18 14:39:42.97 kCD1BPcn.net
ビルは完全にウォーターフォールでしか開発できないからな
途中で改善点など見つけても後戻りできない
そこがソフトウェア開発と建築との違いで何度でも試行錯誤してブラッシュアップできるのがソフトウェアの良いところなのに
混同して考えているという時点でセンスないし向いてないから別の業界に転職した方が良いよ

409:デフォルトの名無しさん
22/07/18 15:03:52 RNtKt9aH.net
設計ドキュメントの作成・維持・読んで理解するのに要するコスト・時間と
設計ドキュメントなしにコードを読んで設計を理解するのに要するコスト・時間を状況に応じて比較して考えればいいよ

設計するやつとコード書くやつが分かれてたり
コードだけからだと設計を読み取るのに時間がかかったり
そもそもコードを読めない・読まない人が設計を理解する必要があったり
多くのソフトウェアやシステムは後者のコストが著しく高くなる環境のほうが一般的

設計するやつとコード書くやつが同じでユーザーもコードを読む前提のソフトウェアやシステムはどちらかといえば例外的

410:デフォルトの名無しさん
22/07/18 15:52:41 88C78euP.net
>>394
オープンソースのソフトウェアに分厚い設計資料はありますか?

411:デフォルトの名無しさん
22/07/18 16:11:52.15 f70Fl4T+.net
>>403
オープンソースには分かるやつしか参加しないから、ソースコードを別の言葉で書き直したような設計書ならいらないんだよね。
企業は人員の 9割が無能だから、そいつらのための仕事として設計書作成作業を設けてるだけ。
んで 9割の連中がその設計書を見ながら作った動かないコードは、残りの 1割の連中が設計書など見ずに動くように書き直す。
だから設計書と製品が解離する。

412:デフォルトの名無しさん
22/07/18 17:54:35.48 lfKiyV0F.net
>>404
オープンソースに分厚い設計資料がないのだったら、本質的に企業の仕事においても不要でしょうね、偉い人にはどうしてそんなことがわからないのでしょうか?

413:デフォルトの名無しさん
22/07/18 18:01:12.19 LUyjnnnP.net
製作者がいなくなったとき、
オープンソースは引き継げる能力のあるやつが引き継ぐ、いなければいつか消えるのみ
会社は他に能力のあるやつがいなくても、誰かに引き継がせなきゃいけない。放置は許されない

414:デフォルトの名無しさん
22/07/18 18:20:16.09 Vps5Lgrt.net
>>396 せやな。Linuxぐらいの設計書は必要



416:デフォルトの名無しさん
22/07/18 19:30:18.00 iK5pz8lh.net
>>406
製作者がいなくなる状況を生成した、それが会社側の失敗なのでは?
ドキュメントなんて所詮、参考でしかなく、結局はコードを読むしかない、偉い人にはそれがわからないのでは?

417:デフォルトの名無しさん
22/07/18 20:03:26.47 SlCZ8nzK.net
書類なんざ所詮管理手段の一つ。結果が伴わなければ意味ない
書類の作成を目的化するような会社じゃビジネスは上手くいかないだろうね

418:デフォルトの名無しさん
22/07/19 00:29:30.95 KHPjwZjx.net
ダメなプロジェクトや仕事は設計ドキュメントが先にある
良いプロジェクトや仕事は様々なレベルでそれぞれ試しに作っては壊したり比較したりやり直したり
システムアーキテクチャレベルで固まってきてもデータ構造やらAPI相当やらはリファクタリングでどんどん良いものへ変化
そして最後に設計ドキュメントに相当するものをきちんと作る

419:デフォルトの名無しさん
22/07/19 02:32:32.91 u93zEaXd.net
エクセルのデータを読み込んで加工して手元のmysqlに書き込むプログラムがあるのですが
プログラムで書き込むのと sql fileに書き出してコマンドで実行する方式のどっちがいいでしょうか?

420:デフォルトの名無しさん
22/07/19 11:20:13 6ZFnu09m.net
>>411
どういう観点で比較したいの?

421:デフォルトの名無しさん
22/07/21 14:52:16.30 qntGDUHT.net
C,C++の勉強してListの構造を学んで疑問に思ったのですが
Javaなどでメモリ飛び飛びで作られたListが存在するときにGCが発生したら完全整列するのでしょうか?それとも要素毎に空いたメモリに再配置されるのでしょうか?
前者なら遅くなるなぁ?と、後者で動いてる?
まぁわかったところでGCなのでやりようがないかもですが、考え方だけでも知っておきたいです

422:デフォルトの名無しさん
22/07/21 14:59:01.82 cxEc0/aI.net
>>413
後者
GC言語に限らずリンクリストは非常に非効率なデータ構造であり、動的配列よりもリンクリストの方が適している状況は極めて稀である
Cで実装しやすいから教科書に出てくるだけ

423:デフォルトの名無しさん
22/07/21 15:10:02.66 qntGDUHT.net
>>414
ありがとうございます
やはり後者ですか
List使った処理を追加したら遅くなりまして
もう一度コードの見直ししてみます

424:デフォルトの名無しさん
22/07/22 21:00:16.41 coO/VVNr.net
アセンブラスレがなかったのでこちらのスレで失礼します。
学校でH8/300Hのマイコン学習をしています。
どうしてもわからないことがあり質問させてただきます。
HEW 生成ファイル補足説明(H8S、H8/300)
URLリンク(www.renesas.com)
の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をピカらせるといった初歩的なことをしているだけですが、
リセット関数はどのコードにも冒頭部分に記述されています。
しかし初期設定部分ということもあってかコピペで済ましており、
学校の人も誰もこの記述の具体的な説明を含む読み方ができません。
どなたか日本語訳的な感じで読み替えてもらえないでしょうか?
よろしくおねがしいます。

425:デフォルトの名無しさん
22/07/22 21:56:20.98 5RjVUBfu.net
アセンブラというかハードの知識が足りてないんじゃね?
ベクタテーブルで調べてごらん。

426:デフォルトの名無しさん
22/07/22 21:57:59.77 JKfbNlr+.net
h8なんて知らん素人だけどさ
このCPUはリセットされると0番地の内容をプログラムカウンタに設定して
そこから実行を開始するっぽい
で、今回はH'0000番地にVECT0という名前をつけて
内容はH'0400
H'0400番地にPResetPRGという名前をつけて
内容はSLEEP命令
この名前とかアドレスはその開発環境のデフォルトなんでしょ

427:デフォルトの名無しさん
22/07/22 22:31:54.54 QLPuwyNz.net
>>416
>じゃあ、なんでわざわざ宣言するんでしょうか?
この回答は「PResetPRGのアドレスは変更可能だから」かな

428:416
22/07/22 23:10:59 coO/VVNr.net
>>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
ありがとうございます。そういうもんですか・・・そこは飲み込みます。

429:デフォルトの名無しさん
22/07/22 23:24:37.68 bpOnuI9e.net
CODE Section は、0400 から、
DATA Section は、0000 からとか、
どこのアドレスを使うか、決めるのは自由だろ?

430:デフォルトの名無しさん
22/07/22 23:37:14.09 bpOnuI9e.net
0000 などは、16進数か?
0000〜00ff: 0〜255
0100〜01ff: 256〜511
0200〜02ff: 512〜768
0300〜03ff: 768〜1023
0400〜04ff: 1024〜1279
つまり、0400 は1024のアドレスから始まる

431:デフォルトの名無しさん
22/07/22 23:38:03.71 JKfbNlr+.net
_PowerON_Resetっていうラベルは
SLEEP命令の位置のH'0400を指すんだよ
それで.DATA.Lという疑似命令で
現在位置H'0000にH'0400を出力する

432:デフォルトの名無しさん
22/07/22 23:51:00.22 JKfbNlr+.net
というかマニュアルを読めよ全部書いてあるぞ
たぶんこの2つだろ↓
H8/300H シリーズ プログラミングマニュアル
H8S, H8/300 シリーズ クロスアセンブラ ユーザーズマニュアル

433:デフォルトの名無しさん
22/07/23 00:11:15.01 mkhmVAM0.net
>>424
今回の質問の前に思いつく限りの検索ワードで調べました。
以下の媒体は特に参考になったと思えたページの一部です。
流石に書籍やpdfを全ページ読んだとは言いませんが、
SECTION、PResetPRG、CODE、LOCATE=H'0400、_PowerON_Reset:、$VECT0、DATA
など、コード内にあった主要な記号


434:は全て検索し、 ヒットした箇所の前後の記述を熟読し、それでも理解できなかったので質問しました。 今は >>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)



435:419
22/07/23 00:43:15.10 6LmREh/f.net
>>420
開発時にメモリ上にどのようにデータを配置するかの指定は今は一般的にリンカの仕事
パソコンのプログラムはもちろん、マイコンでも今はリンカに対して配置するアドレスを
指定するのが一般的
ルネサスの場合、現行のRXマイコンやRAマイコンなどもアドレスはリンカに指示する
しかしレガシーな開発環境だとアセンブラコード内にアドレスを直打ち出来たりして
>>416の例はそのケースだと思う。今時の開発環境でこのパターンはレアと
思われるので理解を深める必要はないかも
H8の開発環境はないのでRXマイコン(CS+)の例だけど
RXマイコンのリセットベクタのアドレスは0xFFFFFFFCからの4バイト
リセットが解除されるとこのアドレスの値がPCへロードされる(=書かれているアドレスから実行が始まる)
URLリンク(uploader.purinka.work)
右のメモリダンプを見ると0xFFFFFFFCの値は0000C0FF。リトルエンディアンなので並べ替えると
0xFFC00000となりこのアドレスから実行が開始される
左の逆アセンブルリストで0xFFC00000を見るとPowerON_Reset_PC関数がある
PowerON_Reset_PC関数のソースコードを見ると
URLリンク(uploader.purinka.work)
#pragma sectionでResetPRGセクションへ配置するよう指示されている(91行目~)
Pはセクション種別で2文字目以降がセクション名
そしてリンカの設定を見ると
URLリンク(uploader.purinka.work)
ResetPRGセクションは0xFFC00000が指定されていて上記アドレスと一致する

436:419
22/07/23 00:44:12.83 6LmREh/f.net
>・このCPUはリセットされると0番地から実行を開始する
正確にはこれは間違っている。正しくは0番地に書いてあるアドレスから実行が開始される
リセットベクタというかベクタテーブルには大きく分けて2パターンあって
・該当するアドレスに書いてある命令を実行する
・該当するアドレスにアドレスから実行する
通常はこのどちらか。H8は後者。前者は古い物に多くて、新しめのはほとんど後者
>・H'0000番地の中にH'0400が入っているについて、その入れる処理は、どこがそうなっているんですか?
>.SECTION $VECT0,DATA,LOCATE=H'0000
>.DATA.L _PowerON_Reset ←PowerON_Resetのアドレスが配置される実データ
この部分が該当箇所。最終的なデータを出力しているのはアセンブラ
上にも書いたけどこのような書き方は今の主流ではない
何となくだけど開発ツールの扱いもまだ不慣れなのかな。自分も使いこなせているとは言い難いけど

437:デフォルトの名無しさん
22/07/23 01:38:12.90 mkhmVAM0.net
>>>423
調べてきました!
DATA命令を使ってメモリ上にアドレスを確保できるってことですね。
どうやら自分はその使い方を、検索時に見落としていたようです。
ようやく0000の中に0400が入る流れがイメージできました。
レスの内容を頼りに調べたところ、下記書籍にDATA命令を用いて
アドレスシンボルの番地をメモリに確保する旨の解説がありました。
たのしくできるH8マイコン制御実験
URLリンク(books.google.co.jp)
>>426-427
419さん画像付きでの解説ありがとうございます!今の自分は「リンカとは?」ってレベルなのですが、
少なくともその「ResetPRGセクションは0xFFC00000が指定されていて上記アドレスと一致する」までの解説は、
画像を見ながら最後まで追いかけることができました。
来週また学校へ行った時に、HEWのツールで同じように追いかけてみます!
「0番地に書いてあるアドレスから実行が開始される」のご指摘も含めて、今後も学んでいきます。

438:デフォルトの名無しさん
22/07/23 11:02:36 a/eG1EZ0.net
うむ。なかなか見所のある若者じゃ、精進なされよ

439:419
22/07/23 11:39:15.16 n897GEgW.net
ぶっちゃけ「今更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のノウハウそのままとは行かないけど雰囲気を掴むくらいは出来るのでは
あとリンカに関してだけどそもそもリンカを含む低レイヤーの解説資料は少ないと思う
自分が知る範囲だとこの本を紹介しておく
リンカ・ローダ実践開発テクニック
URLリンク(shop.cqpub.co.jp)
FreeBSD&gcc環境で解説されていてマイコンに特化した説明ではないので適宜読み替える必要があるけど

440:デフォルトの名無しさん
22/07/23 11:46:55.13 PpxI5rKd.net
アセンブラでリンカの話とか最初からしてもなぁwとは思う

441:デフォルトの名無しさん
22/07/23 12:01:32.61 bR39w9BX.net
H8のベクタってその番地にjmpを描くんじゃないの

442:デフォルトの名無しさん
22/07/23 12:08:49.71 ESnt81dA.net
H8/3069Fみついわボードはよく出来てたなあ
H8のアーキテクチャは普通のPCのCPUと同じノイマン型だからアセンブラの学習には良いと思う
当時はWebでの情報も


443:比較的多かったが 今はどうかな



444:419
22/07/23 12:28:51 n897GEgW.net
>>431
現在の学習レベルだと、とりあえず「そう言うもんだ」で済ましてかまわないとは思うけど
本人は納得できていないみたいだし、いつかは理解しなきゃいけない部分だし良いんでないの
割り込みコントローラ回りを弄るようになったらデバッグのために嫌でも覚えるようだろうし

445:416
22/07/23 14:22:31.02 mkhmVAM0.net
>>430
学校というのは実は職業訓練でして。
今はH8/TinyマイコンとHEW環境を教材にして学んでいますが、
この後の授業は半年かけて、C言語、ラズパイ、Java、スマホのアプリ制作と進んでいく流れです。
H8が時代を感じるものであることは承知しており、プログラムや組込みの基礎を学びつつ、
「わからない状況に陥った時の対応力」を鍛えるつもりで向き合っています。
今回は、自分が勉強しなくちゃいけないところがよくわかりました。
メモリとCPUの関係と、プログラムカウンタの動き方をよく調べておきます。
あとDATA命令の使い方もおさらいします。
ソースコードはちゃんと、1行1行全部、根拠付きで説明できるようになりたいですね。
>HEW後続のCS+の評価版
環境は自宅でも導入しようと以前調べたのですが、自分のメイン機がMac(M1Air)でして、
HWEがMacで使えないと知り、ちょっと保留にしているところです。
Windows機は10年ほど前に買ったDELLのinsprion15Rが押し入れに眠っているので
Macでやるいい方法が見つからなかったから、お盆あたりにそいつを蘇生しようかな、と。
HEW後続のCS+の評価版の件と、リンカ・ローダ実践開発テクニックはブクマ入れました。

446:デフォルトの名無しさん
22/07/23 15:00:25.61 cRrcO95j.net
うむ

447:デフォルトの名無しさん
22/07/23 17:13:46.90 FGM1D/su.net
職業訓練校でH8でアセンブラなんて尖ってるなぁ。
アセンブラなんて基本情報処理向けにCASLでも勉強して
マイコンなんてCでいいと思うんだけどな。

448:デフォルトの名無しさん
22/07/23 18:33:10.27 qgluObjk.net
単にアセンブラと言ってもOSみたいのを作る場合と単にユーザープログラムを
書く場合では必要な知識が違うと思われ

449:デフォルトの名無しさん
22/07/23 19:08:26.97 PpxI5rKd.net
>>438
そうだね
今時組み込みですらlinuxとかOSを使うし一昔前でもitronとか使ってたし
直接リセットベクタやらを設定するようなプログラムは現実にはスーパーファミコンぐらいの
時代に戻らないと無かった気がするな
まぁ、コンピュータの知識としての課題でそういう基礎と言うか基本的な事を知っていて悪い事では無いけど
相当前から最低でもC/C++での開発だっただろうし部分的にインラインアセンブラを使う事はあっても
アセンブラでOS無しのプログラムを書くことはまずないからそんな知識は今となっては殆ど必要無くなってるよね

450:デフォルトの名無しさん
22/07/23 21:02:27 FAO+OpS7.net
組み込みやったことないのか

451:デフォルトの名無しさん
22/07/23 21:44:52.49 ESnt81dA.net
おいくつなのか判らんけどそんな学校行くよりとっとと就職して経験積んだ方が良いよ
マイコンの授業なんて担当教員の趣味がだいぶ入り込んでて誰も反論できないような立場だからやるだけ無駄
1年だかを無駄に過ごすとになる

452:デフォルトの名無しさん
22/07/23 21:52:30.23 FbAMoEc9.net
パチスロの開発に関わってる方や詳しい方にお聞きしたいのですが、リプレイフラグは8977か8978のどちらでしょうか?
65536/8977と65536/8978どちらもほぼ7.3なので分かりません。フリーズ65536/8のように割り切れればいいのですが
よろしくお願いします。

453:419
22/07/23 22:15:43.77 n897GEgW.net
>>435
>この後の授業は半年かけて、C言語、ラズパイ、Java、スマホのアプリ制作と進んでいく流れです。
半年でそれらを習得できるとは思えないからさわりだけなのかな。内容から察するととIoT関係かな?
>メモリとCPUの関係と、プログラムカウンタの動き方をよく調べておきます。
この辺は>>425の“プログラミング(前編) | Renesas”とその後編が比較的平易に説明されていると思うけど
不足なんだろうか
>自分のメイン機がMac(M1Air)
iOS開発とかは別として組み込みに限らず開発系でMacはサポートが弱い事が多くかつトラブルの元に
なりがちだからWindows環境かLinux環境を用意した方が良いと思う
>>439
お仕着せのSDKやコードジェネレータのみで作れる程度の物なら低レイヤーの知識は不要かもね
>>441
判らんでも無いけど、今のご時世に仕事しながら勉強できる会社ってどのくらいあるんだ?
特に質問者が疑問に思っているような低レイヤーに詳しい人がいる会社なんて結構レアそう
開発系なんて日常業務に忙殺されて下手すりゃ体をこわしかねないイメージがあるが

454:デフォルトの名無しさん
22/07/23 22:42:24.60 NgLN2nLK.net
>>442
「10/73以上であること」が規則
なので8977/65536はダメ

455:デフォルトの名無しさん
22/07/23 23:07:39.46 NgLN2nLK.net
Javaでスマホアプリが目標なのだろう
「低レベルもやっといた方がいいよね」はわかるが、
OSなし組み込みが目標でないならH8アセンブラはやりすぎでは…とは思う
(教材の都合とかもあるだろうから余計なお世話だとも思う)

456:デフォルトの名無しさん
22/07/24 00:13:27.63 SLnKepmZ.net
教える側がH8に一番慣れてるぐらいの事情しかない
H8はarduinoでマイコンが注目されてた頃にuClinuxで一時期頭ひとつ抜けてたがラズパイ以降役目を終えた

457:デフォルトの名無しさん
22/07/24 03:06:45.70 J65kp3AQ.net
組み込みは時間の無駄。
仕事で、お金をもらいながら勉強するもの
例えば、YouTube で有名な、雑食系エンジニア・KENTA の初心者向けRuby on Railsサロンは月千円で、
日本6位の3千人が入っている。1位はキングコング西野の数万人
Rails, Linux などが主な勉強内容
コンピューターの基礎は、入門書を1冊を読むだけ。
マイコンなど、全くアプリ開発者に関係ないので、時間の無駄

458:447
22/07/24 03:17:30.67 J65kp3AQ.net
関係ない授業を入れて、全体の価格を上げるため。
詐欺みたいなもの
1個1個を深く勉強していたら、数年掛かるし、切りがない。
マイコン・C 言語だけで、数年掛かる。
アプリ開発者には関係ないから、時間の無駄
KENTA も言ってる。
必要な所だけを勉強して、それ以外は本をサラッと読んで、先に進む。
だから、半年でポートフォリオを作って転職できる
他の香具師が5年掛かっても、何も作れないのは、学校の水増しカリキュラムのせい
大切なのは何かを勉強することではなくて、
勉強する方法を勉強すること!
これがKENTA。
だから半年で開発者になれる
これが分からない香具師は、10年やっても出来ない

459:デフォルトの名無しさん
22/07/24 03:40:32.32 EX/z9tJK.net
ダレだよケンタってチキンか?w

460:デフォルトの名無しさん
22/07/24 04:23:17.54 E5ZFw2qU.net
底辺派遣奴隷がKENTAのYoutubeみて知ったかぶりして、
自分があたかもKENTAになったかのように妄想する自慰の道具。

461:デフォルトの名無しさん
22/07/24 09:32:03.94 hnBeY/7d.net
エンジニア不足解消にむけて、文科省、通産省がいま最も注目する新進気鋭の先導者では?
文科省がエンジニア育成にユー


462:`ューブを活用するワーキンググループを発足したのは、彼の影響と思われる。



463:デフォルトの名無しさん
22/07/24 10:55:48.87 QqIxIyeR.net
DBとネットワークもやった方がいいね

464:デフォルトの名無しさん
22/07/24 13:09:38.66 2lyIaqMH.net
ライブラリの作り方教えて

465:デフォルトの名無しさん
22/07/24 13:11:39.16 vEjRJRF/.net
何のや

466:416
22/07/24 13:34:31.70 MO/A+cHc.net
>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

467:デフォルトの名無しさん
22/07/24 14:05:47.61 brewOpTp.net
>>453
つmake library

468:419
22/07/24 17:28:16 t3OCaKrr.net
>>455
プログラムとデータやアドレスを分けて考えちゃっているのかな?
特にマイコンの場合はメモリ保護機能がないか、あっても限定的な機能しか持たないため
セクションの違いはメモリ配置場所(大抵の場合ROMかRAM)を決定する以上の意味を持たないことが多いです
つまり.DATA制御命令でマシンコードを配置してもその領域が実行可能であれば実行出来ますし
割り込みベクタテーブルにアドレスが配置されていれば割り込み発生時にはそのアドレスへジャンプします
あくまでハードウェアから見てそのデータ列がどのように見えるかがポイントで
与えたデータの管理はプログラマか処理系の仕事です

ちなみにCortex-MやRXの場合、ROMだけでなくRAMに配置されているマシンコードも
実行可能ですし(H8系でRAM上のマシンコードを実行可能かは確認できなかった)
割り込みベクタテーブルの一部をRAMに再配置することも出来ます

469:デフォルトの名無しさん
22/07/24 17:28:20 GMSYIMoG.net
アセンブラのラベルとかがわからないなら、一旦オブジェクトファイルを生成して
それをデバッガでディスアセンブルしたりするのは無し?
そしたら、あーこのアドレスにこれが来るんだーとか

470:デフォルトの名無しさん
22/07/24 17:35:32.41 vEjRJRF/.net
組み込みとか時代遅れのゴミは無視してWeb系に行こうぜ
日本のメーカーは糞でこれから落ちぶれていくだけだから関わらない方が良いよ
IoTとかArduinoだったらギリ許す

471:419
22/07/24 18:18:08.33 t3OCaKrr.net
>>458 質問内容からしてビルド時のフローとかデバッグツールの使い方も判ってなさそうに見える ただコンパイラ系の開発経験がない人が理解するのは難しいだろうとも思う ググってもなかなかまとまった情報が出てこないところだし



473:デフォルトの名無しさん
22/07/24 19:14:36.61 SLnKepmZ.net
>>457
H8もノイマンだからセクションによる実行制限はないはずだよ
ただ今更この人がマイコン学習していくこと自体は不毛な気がするんだよね…

474:デフォルトの名無しさん
22/07/24 19:19:53.04 SLnKepmZ.net
>>455
>ちなみに40代前半IT業界未経験です。
それだと半年程度のお勉強ではどう転んでもIT系への就職は無理
職業訓練の経歴なんて全く評価されないよ
学校なんか行くよりはIT系の派遣に登録して派遣先で顔を覚えて貰いつつどういう業界なのか知っていった方が賢いぞ

475:デフォルトの名無しさん
22/07/24 19:24:05.79 fEm4m5y+.net
てか未経験40代がこんな低レイヤーの勉強するの遠回りすぎるだろ
ある程度現場で経験積んだエンジニアが娯楽でやるもんだよこういうのは

476:416
22/07/24 19:26:23.27 MO/A+cHc.net
>>457 >>460
419さん気にかけてくれてありがとう。
>プログラムとデータやアドレスを分けて考えちゃっているのかな?
>特にマイコンの場合はメモリ保護機能がないか、〜そのアドレスへジャンプします
現時点では何もかも調べなければわからない状態なので、
自ずとそれぞれの意味や違いを几帳面すぎるかな〜とは思いつつも違いを意識しています。
何よりここの基礎が理解できない程度だと、この先もついていけないと直感しています。
>〜あくまでハードウェアから見てそのデータ列がどのように見えるかがポイントで
>与えたデータの管理はプログラマか処理系の仕事です
ここは今後の為に意識しておきますね! 線引き大事。
>ちなみにCortex-MやRXの場合〜割り込みベクタテーブルの一部をRAMに再配置することも出来ます
割り込みベクタテーブルはROM配置と習っていたので、へぇ〜という感じっです。
まぁ今の私にはそこから広がった想像をするだけのスキルがないんですが、頭の片隅に覚えておきます。
>質問内容からしてビルド時のフローとかデバッグツールの使い方も判ってなさそうに見える
ビルド時のフローは今回の質問あと復習しました。とは言っても、
教科書とか入門向けに書いてある、簡略化したフロー図をぼんやりイメージできる程度の理解です。
デバッグツールはまだ触ったことがないのでわからないです。
先ほど授業で最初になったら十数行程度のプログラムをやっと私なりに日本語化できました。
JSRとかMOVとかRTSとか、基本的な命令を使って無意味にループしてるだけの勉強用プログラムですが、
やっぱりぜんぶわかると気持ちいいですね。ようやく1歩目が終わった感じです。
ちなみにH8マイコンの授業は来週でおしまいw
そのあとまた別のプログラムを学びます。今後も頑張っていきます。

477:デフォルトの名無しさん
22/07/24 19:29:06.80 pts8jowi.net
>>444
そういった規則があるのですね。
スッキリしました。
ありがとうございます。

478:デフォルトの名無しさん
22/07/24 20:01:22.22 IZxLU3+7.net
「デフォルト」とは債務不履行のことだと思いますが
なぜム/マ業界では「デフォルト」を別の意味で使っているのですか?

479:デフォルトの名無しさん
22/07/24 20:26:17.55 wPXQkERB.net
default=怠ること
ユーザーが設定変更を怠った場合の値=初期値

480:419
22/07/24 20:27:44.54 t3OCaKrr.net
流行のIoTなどの用途向けに今マイコンを勉強するならRA&FSPかSTM32&CubeMXあたりだろうか
Arduino使える人は結構いるけどそのレベルで製品化までこぎ着けるのは難しいし
別にRXやLPCなど他のマイコンでも良いけど覚えることはちょっと増えそう
>>461-462
H8は特に制限ないのか。


481:一つ勉強になった 仮にIoT目的ならメーカー提供のSDKやコードジェネレータでほぼ足りるはずなので 必ずしも低レイヤーを勉強する必要はなさそうではある 就職の足しにならないであろうはその通りだと思うけど、Web系のみとかではもっと厳しそうな気が



482:デフォルトの名無しさん
22/07/24 21:42:19.01 QqIxIyeR.net
ネットワークとDBが足りてない

483:デフォルトの名無しさん
22/07/24 22:05:40.73 tpoO7THQ.net
40代未経験ならJavaとDBの勉強だけやってさっさと働け
未経験のおっさんが流行のIoT出来る選択肢なんてそもそも存在しない

484:デフォルトの名無しさん
22/07/24 22:29:08.85 3wgufn1T.net
>>467
default = 欠席裁判、ですよ

485:デフォルトの名無しさん
22/07/24 22:32:52.70 MshpqOuh.net
>>471
欠席=出席を怠ること、じゃね

486:447
22/07/24 22:55:38.37 J65kp3AQ.net
KENTA の初心者向け・Ruby on Railsサロンに、年齢制限はあるのか?
出来るか出来ないか、ポートフォリオの実力だけじゃないの?
沖縄のかみざとよしとのやんばるコードとか、
人生逆転サロンの守護神・たけは、
中年で1年ぐらいのプログラミング初心者で、Rails のトップになった!
まあ元々、彼は大学院数学科の天才で、
数学講師から、Java の資格を取って、Railsへ転向した
バグ取り名人 たけ
【Rails】(送信時のリロード無し!)Action CableでSlack風チャットアプリを作成
YouTube の動画

487:419
22/07/24 23:43:09 t3OCaKrr.net
マイコンアプリの開発だけで仕事になるとは思えないけど
ハードもそれなりに出来るならアドバンテージになるんじゃないかな
今でも両方出来る人は多くないしね

488:デフォルトの名無しさん
22/07/24 23:48:59 QqIxIyeR.net
マイコンとか教える側の雇用対策やろ

489:デフォルトの名無しさん
22/07/25 01:55:20.49 fy0hTX+n.net
ぜんぜん部外者なんで素朴な質問をしていいですか?
IoTということは、TCP/IPの機能がいるわけですよね? 割り込みベクタがとか
ゆってるけど、まさかTCP/IPのスタックも実装したりはしないですよね?
結局普通は最初からOS的なものが必要になりそうな気がするのですが

490:デフォルトの名無しさん
22/07/25 01:58:55.05 fy0hTX+n.net
ネットワークのドライバぐらいは実装する必要がある、なら割り込みとか知ってた方が
いいでしょうからまあ確かに

491:デフォルトの名無しさん
22/07/25 02:02:04.18 BZBhu3k0.net
有線LANの作例はいくらでもあるしWiFiやBTモジュールで通信させる方法もある
そしてSSL/TLSが欲しくなるまでがセット

492:デフォルトの名無しさん
22/07/25 04:19:42.61 fR7BwuK/.net
>>476
Linux使えばいいだろ?
それともOSなしでIoTしないといかんのか?

493:デフォルトの名無しさん
22/07/25 06:55:34.42 EqxRHHki.net
チップメーカー提供のなりFreeRTOSのなりAzureRTOSのなり使えば良い
TCP/IPどころかTLS/SSLまで用意されているよ

494:デフォルトの名無しさん
22/07/25 11:21:33 dJJE5upa.net
適当に必要なツールだけ造って
面倒な部分は M5StickC にやらせると楽

495:デフォルトの名無しさん
22/07/25 12:58:59.87 +sFX7yRz.net
一口にIoT言っても
・Wi-Fi/BT回線かLTE回線か
・常時給電か否か
・LinuxかRTOSか
・ダウンタイム要求
でだいぶ難易度が違う

496:デフォルトの名無しさん
22/07/25 13:01:00.01 Ag7GGmTP.net
windowsもあるゾ!

497:デフォルトの名無しさん
22/07/25 17:44:12.29 vWw940/9.net
IoTに限った話じゃないけどWindowsを使う必然性ってあまりなくね?

498:デフォルトの名無しさん
22/07/25 17:51:54.32 mBcdUBse.net
普通に考えたら組み込みとかにWindows使う必要無いのだけど案外使われているという事は
大きな企業ほどフリーソフトで無料の


499:ものは避ける傾向があるということ RDBでもオラクルを使うのはその辺もあるし、OSにしてもred hatとかは企業向けもあるけど Windowsにしておけば何かあっても責任逃れ出来るという事だろうなぁ



500:デフォルトの名無しさん
22/07/25 17:52:34.96 fnQLcriz.net
組み込み系や制御系の開発PCはほとんどWindowsだよ
SDKやツールの対応がWindowsファーストだからな

501:デフォルトの名無しさん
22/07/25 18:00:04.51 AXHgFxoO.net
メーカーの老害にはmacは使いこなせないからだよ

502:デフォルトの名無しさん
22/07/25 18:37:43.52 nPMjx1b5.net
macは時代を30年ほど間違えてないか?って値段だろ
LinuxかFreeBSDでえーやん?

503:デフォルトの名無しさん
22/07/25 18:40:12.32 YKvWEWzT.net
下請け丸投げしかできないメーカーのゴミ社員はwindowsでエクセルしか使えないからだよ

504:デフォルトの名無しさん
22/07/25 18:50:14.35 XGvRm+qF.net
ハード屋さんが使ってたロジアナがWinXPで動いててビックリしたわ

505:デフォルトの名無しさん
22/07/25 18:57:37.62 GOtCNvAE.net
macは高級感だけで金払う馬鹿を鴨にする戦略だから

506:デフォルトの名無しさん
22/07/25 19:02:31.32 2PhM5qDH.net
>>485
利益に繋がっているとは言いがたいのがポイントだなw

507:デフォルトの名無しさん
22/07/25 21:11:33.38 GOtCNvAE.net
ケンタウィルスは絶滅汁

508:デフォルトの名無しさん
22/07/25 21:38:03 dV4kzGF1.net
>>486
EDAはWindows優勢だけどMCUやFPGAの開発ツールはLinux版も同時リリースされてない?

509:デフォルトの名無しさん
22/07/25 22:21:56.73 nPMjx1b5.net
RDBだとまぁOracleがトップ、次点がPostgreSQL, SQL Server、その下はMySQL
どういう訳かはしらないけどDB2は一回しか経験ない
フリーのPostgreSQLとかMySQLを使ってたのはバリ一部上場だし、もうあまり有料無料は関係なさそうかな

510:デフォルトの名無しさん
22/07/25 22:29:55 dV4kzGF1.net
そう言えばソニーセミコンのソフト開発系?はLinuxメインかもね
Spresenseの開発環境はLinuxファーストだったような

511:デフォルトの名無しさん
22/07/25 22:32:31 oUQ2GGC1.net
・日立、週休3日で給与維持 生産性向上へ働き方改革 時間から成果へ転換
・日立、最低勤務時間を撤廃 「週休3日」も可能に
・2022年の新入社員、79.8%がテレワーク オフィスの必要性は?
・日立、富士通、NEC…「ジョブ型雇用」を大企業が続々導入する理由
・日立やNECが導入へ 「週休3日」は人材獲得の切り札
・リクルートグループ、週休「約3日」に。4月から年間休日を145日に増加へ
・カルビー/国内社員3900人を対象に副業解禁
・介護職の週休3日制をサポート 宮城県、難しい3連休も可能に

512:デフォルトの名無しさん
22/07/25 22:54:07 gTrk2zFk.net
AWS IoT で良い。
ただし、AWSの12資格には、IoTの資格がないけど

Windows をサーバーで使うことはない。
クライアント・操作側で使うだけ

今は、クラウドのすべてのシステムがDocker だから、
DockerはLinux だけの技術だから、Linuxを使わざるを得ない

513:デフォルトの名無しさん
22/07/25 23:05:15.21 dV4kzGF1.net
ちょっと前に発売された音ゲーがWindows環境よりProton環境の方が遅延が少なくて快適なんてオチがあった

514:デフォルトの名無しさん
22/07/25 23:24:47.38 N/8RfmxG.net
500

515:デフォルトの名無しさん
22/07/26 00:42:45.75 7eeTS5R1.net
>>498
あわしろを召喚しちまうからLinuxの話題


516:はやめとけ。



517:デフォルトの名無しさん
22/07/26 10:40:36 72WDY9Tv.net
みなさんは変数名はきっちり英単語にして付けてます? それとも日本語ローマ字的なものもOKでやってます?

518:デフォルトの名無しさん
22/07/26 11:00:10.77 b/a9cbVb.net
>>472
なるほどね、同意しましょう

519:デフォルトの名無しさん
22/07/26 11:55:16.39 EFLNvNJ6.net
サーバを所有するという概念が十年スパンの長期的にはオワコンになると思うな
DockerにしろVMにしろ仮想環境ソリューションは今だけで、将来的にはLambdaのような疎結合な計算機資源に移行すると思う
モノシリックが過ぎるよ仮想環境とかVPC
無くなるという意味じゃなく、三十年後くらいには完全に基盤として隠蔽されてマネージドがメインストリームになるという
ただLightsailみたいなサーバは多重化とか関係ないからアプリケーションとして残る

520:デフォルトの名無しさん
22/07/26 12:03:39.48 ZN4y9/Yq.net
IT後進国のジャップランド以外ではな

521:デフォルトの名無しさん
22/07/26 12:13:37.87 DIb0h0GI.net
>>502
普段は英単語だけど、たまにnaikei(内径)とか使っちゃう

522:デフォルトの名無しさん
22/07/26 17:58:19.46 gc9s0ohk.net
モノシリックωωω

523:デフォルトの名無しさん
22/07/26 22:55:38.11 5qP0bzbL.net
テキストボックスとラベルを比較したいんだけどこれじゃうまくいかないのでどうすればいいか教えてください
ボタン押しても10点しか出ない
Dim inp1 As String
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles URLリンク(Button1.Click)
inp1 = TextBox1.Text
Label1.Text = CStr(Int(Rnd() * 99))
Label2.Text = "得点"
If "inp1" = Label1.Text Then
Label2.Text = "100点"
ElseIf "inp1" > Label1.Text Then
Label2.Text = "10点"
ElseIf "inp1" < Label1.Text Then
Label2.Text = "5点"
End If

524:デフォルトの名無しさん
22/07/26 22:58:00.90 5qP0bzbL.net
>>508
visalstudioです

525:アリ人間
22/07/26 23:13:19.30 SFGiBpCo.net
>>508
inp1と"inp1"の違いはわかりますか?
前者は変数であり、後者は文字列リテラルです。

526:デフォルトの名無しさん
22/07/26 23:15:05.41 tkxwNYDd.net
AWS Lambda でも、Ruby などの他に、Docker も使える
こんなに流行っているPHP は、デフォルトで用意されていない。
プロ用の言語とは、みなされていない

527:デフォルトの名無しさん
22/07/26 23:31:05.10 MJpCL8rD.net
>>510
すみませんよくわかりません
" "を消すことで点数は出るようになったのですが
textboxに何も入力出来ずにボタンを押すと今度は5点が出るようになってしまいました
また数値の差(textboxとlabelの差が10以内ならAを表示20より上ならBを表示)などはどうすればいいのでしょうか

528:デフォルトの名無しさん
22/07/26 23:31:14.00 khPn0eWd.net
>>511みたいなRubyガイジは消えてねw
Rubyなんてもう仕事では使われなくなっている訳だがw

529:アリ人間
22/07/26 23:45:37.56 SFGiBpCo.net
>>512
イベント駆動、制御構造、文字列と数値の違いもわかってないみたいだから、前の単元を見直して再勉強して下さい。

530:デフォルトの名無しさん
22/07/26 23:52:00.61 EFLNvNJ6.net
>>512
次は文字列から数値に変換してから比較
VBだと思うが文字列比較してるから大小比較には使えない
入力できない件はTextコントロールのEnableプロパティがFalseにでもなってるんだろ

531:アリ人間
22/07/26 23:53:31.94 SFGiBpCo.net
数値の差は引き算と絶対値を使えば得られる。
その前に文字列を数値に変換する必要がある。

532:デフォルトの名無しさん
22/07/27 00:18:54.56 nNmP47B2.net
>>515
>>516
数値の変換はinp1=Val(textbox.text)で正しいのでしょうかそれともIf Val(inp1) = Label1.Text Then でも大丈夫ですか?
あとtext boxに何も入力出来ずにではなくしずにでしたすみません


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

564日前に更新/300 KB
担当:undef