[過去ログ]
スレ立てるまでもない質問はここで 156匹目 (1002レス)
スレ立てるまでもない質問はここで 156匹目 http://mevius.5ch.io/test/read.cgi/tech/1613809074/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
1: デフォルトの名無しさん [] 2021/02/20(土) 17:17:54 ID:56yjs2OO この板はプログラムを作る人のための板です。 あらゆる質問はまず スレ立てるまでもない質問はここで スレにしてください。 【前スレ】 スレ立てるまでもない質問はここで 155匹目 https://mevius.5ch.net/test/read.cgi/tech/1606439237/ 次スレは>>980が立てること http://mevius.5ch.io/test/read.cgi/tech/1613809074/1
903: デフォルトの名無しさん [sage] 2021/06/04(金) 08:41:42 ID:5QdjaX9T iを配列の添字の変数だと思っているのかな for文でみんな説明もなくiを使うから…… http://mevius.5ch.io/test/read.cgi/tech/1613809074/903
904: デフォルトの名無しさん [] 2021/06/04(金) 09:40:51 ID:6dOQNCq3 データを置く階層は深いところよりも浅いところの方がプログラムの処理速度は速いですか? 例えば、C:\Users\xxxxx\Documents\Product_A\Lot_B\Each_C\の下の\Dataフォルダよりも C直下に置いた\Dataフォルダの方がプログラムの処理速度は速いですか? それとも処理速度は同じですか? コンパイル後に C:\Users\xxxxx\Documents\Product_A\Lot_B\Each_C\ が 直アドレスに変換されているなら速度は同じだと思うんですが・・・ http://mevius.5ch.io/test/read.cgi/tech/1613809074/904
905: デフォルトの名無しさん [sage] 2021/06/04(金) 09:53:20 ID:BzCokzlM >>904 理論的には、ファイルパスが長いとその分ファイルパス自体に対するメモリアクセスが僅かに遅くなったり、 ディスク上のインデックスを探索してファイルを探すのが経路が伸びて僅かに遅くなったりする可能性はある しかし現実にはファイルの中身の読み書きの方が圧倒的に時間がかかるため、「全く」影響しない http://mevius.5ch.io/test/read.cgi/tech/1613809074/905
906: デフォルトの名無しさん [sage] 2021/06/04(金) 15:52:56 ID:T0+OILo8 >>901-903 別の問題の配列に5,3,7,8,9を入れて全ての数字を表示させなさいっていうのでは、numの{}内の数がiに置き換わってるんだけどこれはどういうこと? num = [5,3,7,8,9]; for(i=0; i<5; i++) { alert(num[i]); } これに倣って>>900のnissuの[]内もiに置き換えることが出来るんだと思ってしまったんだけど http://mevius.5ch.io/test/read.cgi/tech/1613809074/906
907: デフォルトの名無しさん [sage] 2021/06/04(金) 15:55:44 ID:T0+OILo8 すみません、タイプミスしてたんでもう一度投稿しました >>901-903 別の問題の配列に5,3,7,8,9を入れて全ての数字を表示させなさいっていうのでは、numの[]内の数がiに置き換わってるんだけどこれはどういうこと? num = [5,3,7,8,9]; for(i=0; i<5; i++) { alert(num[i]); } これに倣って>>900のnissuの[]内もiに置き換えることが出来るんだと思ってしまったんだけど http://mevius.5ch.io/test/read.cgi/tech/1613809074/907
908: デフォルトの名無しさん [sage] 2021/06/04(金) 17:15:35 ID:T0+OILo8 すまん、理解した for文だとカウンタ変数としてiが使われるけど[]内が全てiに置き換えられるわけじゃないってことか 流れで勉強してたからごちゃごちゃになってしまった どうもありがとうございました、すっきりしました http://mevius.5ch.io/test/read.cgi/tech/1613809074/908
909: デフォルトの名無しさん [] 2021/06/04(金) 18:48:06 ID:0c0chM5J やっぱり最初は変数宣言が必須の言語 がいいね http://mevius.5ch.io/test/read.cgi/tech/1613809074/909
910: デフォルトの名無しさん [sage] 2021/06/04(金) 23:39:50 ID:6dOQNCq3 >>905 何億回とアクセスするので、その僅かが気になるんですけどね。 パスの長さで差があるのであればやはり短くします。 ありがとうございました。 http://mevius.5ch.io/test/read.cgi/tech/1613809074/910
911: デフォルトの名無しさん [sage] 2021/06/05(土) 00:15:38 ID:Bf3C1+0O そんな質問してる程度のレベルならそんな無意味なオナニーよりももっと他にいくらでも遥かに速くできる余地があるはず まあその辺の感覚はいずれわかってくる http://mevius.5ch.io/test/read.cgi/tech/1613809074/911
912: デフォルトの名無しさん [sage] 2021/06/05(土) 00:27:10 ID:f5S9H8yw >>910 >>905に書いてるのはファイルアクセスのたびに差が出る項目じゃないでしょ 本当に気になるなら実測すればいい http://mevius.5ch.io/test/read.cgi/tech/1613809074/912
913: デフォルトの名無しさん [sage] 2021/06/05(土) 00:37:40 ID:qhZUuBmz GHzってCPUの能力のスケール感がわかってなさそう http://mevius.5ch.io/test/read.cgi/tech/1613809074/913
914: デフォルトの名無しさん [sage] 2021/06/05(土) 01:27:20 ID:wpsN2NXu 1 1,000 = K 1,000,000 = M 1,000,000,000 = G 1秒間に 1,000,000,000 回命令を実行できるんだYO! 1,000,000,000 っていうのは 10億回だYO! http://mevius.5ch.io/test/read.cgi/tech/1613809074/914
915: デフォルトの名無しさん [sage] 2021/06/05(土) 06:02:44 ID:N52Z5yzZ かもしれない運転で最適化しはじめたらキリがない http://mevius.5ch.io/test/read.cgi/tech/1613809074/915
916: デフォルトの名無しさん [sage] 2021/06/05(土) 08:09:28 ID:Is+ZM/MZ コンピュータの世界で1Kが1000とか冗談やろ? 1024と言えよ http://mevius.5ch.io/test/read.cgi/tech/1613809074/916
917: デフォルトの名無しさん [sage] 2021/06/05(土) 10:38:59 ID:5ExJ61TU ほんとうの問題点は、プログラマたちが誤った場所と誤った時点での効率について苦労して、多くの時間を浪費してしまったということにあります。プログラミングでは、時を得ない最適化は諸悪の根源なのであります。(すべてではないにしても、少なくとも悪の大部分と言えるでしょう。) ─ドナルド・クヌース http://mevius.5ch.io/test/read.cgi/tech/1613809074/917
918: デフォルトの名無しさん [sage] 2021/06/05(土) 10:42:30 ID:5jYpQazu >>916 君こそ冗談やろww http://mevius.5ch.io/test/read.cgi/tech/1613809074/918
919: デフォルトの名無しさん [sage] 2021/06/05(土) 11:02:57 ID:4ow2Od2a CPUの処理能力の問題じゃなくてアルゴリズムのオーダーの問題 http://mevius.5ch.io/test/read.cgi/tech/1613809074/919
920: デフォルトの名無しさん [sage] 2021/06/05(土) 11:17:55 ID:5ExJ61TU コンピュータサイエンスに限らず、実測してみる、定量的に判断する、そういう科学的なリテラシーが身に付かなかった人は伸び悩むと思う http://mevius.5ch.io/test/read.cgi/tech/1613809074/920
921: デフォルトの名無しさん [] 2021/06/05(土) 11:35:19 ID:wpsN2NXu >>917 > プログラミングでは、時を得ない最適化は諸悪の根源なのであります。 可哀想なことを言うなよ・・・ Googleだって自分らがやってることに意味があるんだって 必死に最適化した理由をひねり出してるんやで Google、「Chrome 91」は23%高速化 V8エンジン改善で https://www.itmedia.co.jp/news/articles/2105/31/news070.html > Googleは「これらの新機能により、Chromeは最大23%高速になり、 > 毎日のCPU時間を17年間以上節約できることになる」としている。 ほらな、最適化することで毎日のCPU時間を 17年間以上も節約できるんや。17年間やで17年間。 凄いやろ? Chromeユーザー33億人全員の累計時間だけどな 17年=536,112,000 秒 ÷ 30億人 = 一人あたり1日 0.18秒の節約 http://mevius.5ch.io/test/read.cgi/tech/1613809074/921
922: デフォルトの名無しさん [sage] 2021/06/05(土) 12:29:56 ID:CL+eGbWy エコだね 素晴らしい改善効果だ http://mevius.5ch.io/test/read.cgi/tech/1613809074/922
923: デフォルトの名無しさん [sage] 2021/06/05(土) 13:40:34 ID:Fz1ER27V >>921 ネタにマジレスですまんけど、それは時を得ないという前提条件を満たしてないな 性能とセキュリティ、プライバシーは現代のブラウザシェア争いの主戦場でもある それとも>>904が作るプログラムがChrome並に世界中で稼働するという主張かな? http://mevius.5ch.io/test/read.cgi/tech/1613809074/923
924: デフォルトの名無しさん [sage] 2021/06/05(土) 15:09:40 ID:kVxFyEBS ボトルネックがどこか分かって最適化するんなら普通の話だな http://mevius.5ch.io/test/read.cgi/tech/1613809074/924
925: デフォルトの名無しさん [] 2021/06/05(土) 18:25:56 ID:wpsN2NXu >>923 ん?何の話をしてるのかわかってない? 1日でたったの0.18秒しかCPU時間が減ってないのに それを大幅にCPU時間の削減したように見せかける Googleの涙ぐましい努力(笑)って話をしてるんだけど http://mevius.5ch.io/test/read.cgi/tech/1613809074/925
926: デフォルトの名無しさん [sage] 2021/06/05(土) 19:09:17 ID:ZdF2Vraf >>925 俺の引用に対して「可愛そうなこと言うなよ」という話の持って行き方は噛み合ってなくて無理があるってツッコミだよ 改善の結果が技術的には小さなものだっとしても顧客や市場が好意的に反応するならその戦略は正しくペイしている もし市場が好意的な反応を示さなかったことが判明しているならGoogleがアワレな言い訳をしているという主張にも理解するよ Chromeの話が個人的に面白いと感じて誰かに言いたかったんだろうなということはよく伝わった http://mevius.5ch.io/test/read.cgi/tech/1613809074/926
927: デフォルトの名無しさん [] 2021/06/05(土) 20:04:48 ID:wpsN2NXu Googleが誤った場所と誤った時点での効率について苦労して、多くの時間を浪費してしまってるってことが わかってないのか。 1日でたった0.18秒の節約。たった http://mevius.5ch.io/test/read.cgi/tech/1613809074/927
928: デフォルトの名無しさん [sage] 2021/06/05(土) 20:28:50 ID:f5S9H8yw 原文読めないってのは悲しいね http://mevius.5ch.io/test/read.cgi/tech/1613809074/928
929: デフォルトの名無しさん [] 2021/06/05(土) 21:07:38 ID:wpsN2NXu "毎日"17年間節約っていうのを疑問に思わなかったんだろうなw 原文見ればどういう計算なのか明らか http://mevius.5ch.io/test/read.cgi/tech/1613809074/929
930: デフォルトの名無しさん [sage] 2021/06/06(日) 05:32:12 ID:sH+YYhze DBサーバーからデータ取得する際、多数の項目で絞り込みが必要になってます。 例えば、ユーザーマスターから、下記条件を満たすユーザーを検索する場合です。 ※全部 AND です。 ・登録日がA月B日〜C月D日の間 ・パスワードの最終更新日時がA月B日〜C月D日の間 ・都道府県IDが1〜10の間 (都道府県コードは1(北海道)〜47(沖縄県)みたいに割当) ・誕生日がA月B日〜C月D日の間 ・結婚日がA月B日〜C月D日の間 等々・・ こういう場合、一番最初の WHERE の条件で、出来るだけ絞り込むのがいいと思うのですが、 どの条件で一番絞り込めるのか不明な場合、どうすればよいのでしょうか? http://mevius.5ch.io/test/read.cgi/tech/1613809074/930
931: デフォルトの名無しさん [sage] 2021/06/06(日) 06:16:52 ID:XtTAwPVN 順番は関係ないし、DBMSのオプティマイザがよしなにやってくれる。 選択性の良いインデックスが張られている列に条件をつけているかどうかは考慮した方がいいが。 http://mevius.5ch.io/test/read.cgi/tech/1613809074/931
932: デフォルトの名無しさん [] 2021/06/06(日) 11:21:12 ID:9mmqAG88 >>910 ネタだろうけど path長いのが嫌だからって 全部rootとか浅いところに持って来て 一つのディレクトリ内のエントリ数増え過ぎると アホみたいにパフォーマンス落ち始めるときもある http://mevius.5ch.io/test/read.cgi/tech/1613809074/932
933: デフォルトの名無しさん [] 2021/06/06(日) 11:23:17 ID:9mmqAG88 >>920 ++ http://mevius.5ch.io/test/read.cgi/tech/1613809074/933
934: デフォルトの名無しさん [sage] 2021/06/06(日) 22:11:28 ID:dJTGKVPN デザインパターンとか設計思想とか全く分からないんだけど入門?としてこれ見るといいよってサイトとか書籍あれば教えて http://mevius.5ch.io/test/read.cgi/tech/1613809074/934
935: デフォルトの名無しさん [] 2021/06/07(月) 10:56:46 ID:BLDePS2Q >デザインパターンとか設計思想とか 普通の人は入門が済んでから手をつける http://mevius.5ch.io/test/read.cgi/tech/1613809074/935
936: デフォルトの名無しさん [sage] 2021/06/07(月) 11:53:04 ID:TrlL7E54 分かりづらくてすまん デザインパターンの入門としておすすめの物が知りたい プログラムはjava silverレベルで書ける http://mevius.5ch.io/test/read.cgi/tech/1613809074/936
937: デフォルトの名無しさん [sage] 2021/06/07(月) 11:53:34 ID:pl6618+T デザインパターンの宝庫は、MVC(Model/View/Controller)のRuby on Rails。 15年ぐらい、ずっと議論してる MVCの他に、Form オブジェクト・Page オブジェクト・Service オブジェクトとか、 MVCが肥大しないように、どんどん分離していってる ただし、Railsはプロ用。 自社開発Web 系へ転職する人用 YouTube で有名な、雑食系エンジニア・KENTA のサロンが有名。 Rails, Linux, Docker Compose, Node.js(Webpack, Babel), Bootstrap VSCode(Remote Container, WSL2 ならRemote WSL), Heroku, CircleCI、データベース 他にも、Udemy の山浦清透も、Railsを推奨している。 AWS Fargate を使うのなら、AWSのくろかわこうへいのサロン http://mevius.5ch.io/test/read.cgi/tech/1613809074/937
938: デフォルトの名無しさん [] 2021/06/07(月) 13:32:28 ID:7qZ7vyBh disp1に入力があればstate=loadedなので if displ1.get(): __loaded時の処理 みたいなコードがそこそこあるんですが is_loaded(): return bool(disp1.get()) みたいな関数作るのってどうですか。ダメですか?読みやすくなるけど… http://mevius.5ch.io/test/read.cgi/tech/1613809074/938
939: デフォルトの名無しさん [] 2021/06/07(月) 15:15:53 ID:ZOzskMEE AGPLライセンスのライブラリを使いたいのですがどこまでソースコードを公開すればよいのでしょうか? 1, moduleA.js - AGPLのライブラリを利用 2, moduleB.js - AGPLのライブラリは不使用 3, app.js - ルーティング処理 http://mevius.5ch.io/test/read.cgi/tech/1613809074/939
940: デフォルトの名無しさん [sage] 2021/06/07(月) 15:20:58 ID:Fq1IXycO AGPLはその趣旨からいってぜんぶ公開しないとだめだろ http://mevius.5ch.io/test/read.cgi/tech/1613809074/940
941: デフォルトの名無しさん [sage] 2021/06/07(月) 15:22:58 ID:TK3hG12A >>938 disp1.get()に副作用がないならそういうメソッド抽出はありだと思うが def is_loaded(self): __return self.state == ‘loaded’ みたいに書ける設計のほうがベターだと思う http://mevius.5ch.io/test/read.cgi/tech/1613809074/941
942: デフォルトの名無しさん [] 2021/06/07(月) 16:49:27 ID:ZOzskMEE >>940 moduleBも公開しないとだめなんですね ありがとうございます http://mevius.5ch.io/test/read.cgi/tech/1613809074/942
943: デフォルトの名無しさん [] 2021/06/07(月) 22:40:04 ID:qUd3zbRZ ttps://twitter.com/ozuma5119/status/1401851808939606022 これはどういう意味なのでしょうか? https://twitter.com/5chan_nel (5ch newer account) http://mevius.5ch.io/test/read.cgi/tech/1613809074/943
944: デフォルトの名無しさん [sage] 2021/06/07(月) 22:52:23 ID:pXntu6ca >>943 https://www.yodobashi.com.warui.net 始まりじゃなくて終わりが大事 みたいなことじゃ http://mevius.5ch.io/test/read.cgi/tech/1613809074/944
945: デフォルトの名無しさん [age] 2021/06/08(火) 00:53:14 ID:u53qbkBm ローカルネットワーク上のWindowsマシン同士でシンプルなTCP通信を行うプログラムを作成しているのですが、 ポート番号はどの範囲を使えばよいのでしょうか? wikiによると、 0〜1023:一般的なポート番号 1024〜49151:登録済みポート番号 49152〜65535:自由に使用できるポート番号 となっており、49152〜65535を使えば良いかと思ったら そこはWindowsが動的ポートとして使っているので使えないという情報があり、 それじゃあ全部使えないじゃないか、となっています・・・。 http://mevius.5ch.io/test/read.cgi/tech/1613809074/945
946: デフォルトの名無しさん [sage] 2021/06/08(火) 01:26:00 ID:TOKjPAZ1 一般には https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml とか眺めて使うといい んで、皆さん勝手に使ってて衝突もざら だから余程のメジャーなサービスが無いなら気にするほどのことじゃないと思う http://mevius.5ch.io/test/read.cgi/tech/1613809074/946
947: デフォルトの名無しさん [sage] 2021/06/08(火) 06:48:16 ID:dOMi6vvz 環境変数・コマンドライン引数で渡すとか、YML などの設定ファイルに書いておけば良い そうすれば、ユーザーが自由に変えられる http://mevius.5ch.io/test/read.cgi/tech/1613809074/947
948: 945 [sage] 2021/06/08(火) 08:32:05 ID:Ke53ZRWk >>946-947 そういうことだったんですね! ありがとうございました! http://mevius.5ch.io/test/read.cgi/tech/1613809074/948
949: デフォルトの名無しさん [sage] 2021/06/08(火) 17:27:58 ID:l2BAfpwt >>945 基本的には>>946の言う通りなんだけど、サーバプログラム側の待ち受けポートに 0-1023は原則的に使ってはいけない Wellknownポートといってシステムが使う範囲ということになっているので http://mevius.5ch.io/test/read.cgi/tech/1613809074/949
950: 945 [sage] 2021/06/08(火) 21:05:01 ID:Ke53ZRWk >>949 ありがとうございます! さすがにそこは避けようと思ってました^^ http://mevius.5ch.io/test/read.cgi/tech/1613809074/950
951: デフォルトの名無しさん [] 2021/06/08(火) 21:07:05 ID:/pGHNa0l 既得権益を、、、ぶっ壊す! http://mevius.5ch.io/test/read.cgi/tech/1613809074/951
952: デフォルトの名無しさん [sage] 2021/06/08(火) 21:14:25 ID:TOKjPAZ1 そういや、ゾロ目の前後は競争率が高いとか散布図で図示した人って居なかったっけ? 別の話だったか? http://mevius.5ch.io/test/read.cgi/tech/1613809074/952
953: デフォルトの名無しさん [sage] 2021/06/10(木) 01:48:32.39 ID:WxJUiwPc データベースの物理設計と論理設計ってどう違うんでしょうか? どちらもテーブル間のリレーション設計するだけだと思うんですが http://mevius.5ch.io/test/read.cgi/tech/1613809074/953
954: デフォルトの名無しさん [sage] 2021/06/10(木) 09:27:45.31 ID:flmyYOFU 物理設計は具体的に何社のどれぐらいの容量のHDDをどこに置くか もちろん電源容量とかコンセントの数が足りるかとかとか考える 論理設計は具体的にどういう論理的割り振りにするか考える http://mevius.5ch.io/test/read.cgi/tech/1613809074/954
955: デフォルトの名無しさん [sage] 2021/06/10(木) 10:10:59.52 ID:/rzZEgjK 実際明確な違いはないから気にしなくていいよ 基本的に、コピペで工数を水増しするための無意味な重複工程だと思っていい >>954の言うようにハードウェア構成にまで踏み込むのが本来の物理設計なのだけど、 島猿SIではその辺はだいたいインフラの仕事なんでそこまで厳密にDBの設計との整合性は気にしないで適当に大きなハード買って適当にクォータ設定しちゃうケースが多い http://mevius.5ch.io/test/read.cgi/tech/1613809074/955
956: 955 [sage] 2021/06/10(木) 10:30:46.41 ID:/rzZEgjK ちなみに>>954を読むと物理設計としてハードウェアの枠を予め設計した上でその中身を論理設計するように読めるけど、これがまさに実態を表している 本来は全く逆で、論理設計の結果に基づいて物理設計でそれをどうハードまで落とし込むか決めるんだよ オラクルとかのベンダーはまず自社の高い製品を買ってそれを前提に考えてほしいから逆にしたがる http://mevius.5ch.io/test/read.cgi/tech/1613809074/956
957: デフォルトの名無しさん [sage] 2021/06/10(木) 11:50:52.24 ID:8j/+Fuuo >>953 シンプルに言うとどのHDDにデータを置くかって話だ 自作PCでも起動ドライブはSSDでデータはHDDだったりするだろ? DBだとどこにデータを置いたら高速になるかとか、インデックスがピンと張れる方法だとか どのドライブに何月のデータを置けばいいのかとかだよ OracleMasterSilverぐらいの知識があれば多少は何をするのかわかると思う まずはデータベースのテーブルがどこのHDDにあるのか、テーブルごと、インデックスごとにどういう割り振りに出来るのか そういうところからはじめてみてはどうか? http://mevius.5ch.io/test/read.cgi/tech/1613809074/957
958: デフォルトの名無しさん [sage] 2021/06/10(木) 14:33:39.07 ID:dKgFtdxH これが日本の現状なのか それともこの板だけ異常に低レベルなのか http://mevius.5ch.io/test/read.cgi/tech/1613809074/958
959: デフォルトの名無しさん [sage] 2021/06/10(木) 14:38:57.39 ID:vnbWNdgf >>953 一般的なプログラマーはDBの論理設計の経験がないから物理設計との違いをよく理解してない DB板で聞くか自分でググれ ついでにリレーションの意味もググれ http://mevius.5ch.io/test/read.cgi/tech/1613809074/959
960: デフォルトの名無しさん [sage] 2021/06/10(木) 20:18:57.75 ID:S0Lqp3Qd >>955 でもお金で解決できるなら何も問題はないのでは? 下手にケチってピーキーに設計すると泣くぞ http://mevius.5ch.io/test/read.cgi/tech/1613809074/960
961: デフォルトの名無しさん [sage] 2021/06/10(木) 20:21:09.20 ID:S0Lqp3Qd 足りなきゃ買えばいいんだよ、それが今のクラウド しっかりとした物理設計なんて、ほとんど意味のない害悪 http://mevius.5ch.io/test/read.cgi/tech/1613809074/961
962: デフォルトの名無しさん [sage] 2021/06/13(日) 16:57:15.84 ID:STYy7gJY >>881 ちなみに横からなんだけど、 文中のSTYLE) & ~WS_Vにある ) & ~ この部分ってどういう意味? http://mevius.5ch.io/test/read.cgi/tech/1613809074/962
963: デフォルトの名無しさん [] 2021/06/13(日) 17:05:30.29 ID:Ldya/JSY ) and not http://mevius.5ch.io/test/read.cgi/tech/1613809074/963
964: デフォルトの名無しさん [sage] 2021/06/13(日) 20:56:19.05 ID:STYy7gJY >>963 すまん、ありがとう。 いや、そもそも横からなんだけどって言いかたが間違ってた。 普通に質問でよかった。 880あたりの書き込みは俺なのだが(880で書いてる一連のIDも俺)、 いま全力でCUIアプリからCについて勉強してる。 というより、このあとC++に進んでWINAPIもやらないと881にして頂いた話は何も進めないので、 正直泣きながらだ。 というより挫けてる。 Autohotkeyを使ってもGUI作成や32apiを使う点でつまるところWINAPIとセットでCやC++学んだほうがよさそうということで はじめてはいるが、試練だなこれは。 よくわからん謎の開発環境?(VSではない)で、ウィンドウだけ出して喜んでるだけで、 その後が進まない。いや進めることができていない。 http://mevius.5ch.io/test/read.cgi/tech/1613809074/964
965: デフォルトの名無しさん [sage] 2021/06/16(水) 19:45:11.88 ID:181t9wct 昔のPS3やPS2のオフラインゲームでチートを作りたいから アセンブラを学ぼうと思ってるのですが https://gyazo.com/c0df66fb2407b84711fe5b62890f58a2 ↑こういうの見て理解が出来るようになるにはx86アセンブラというのを覚えればいいんでしょうか? http://mevius.5ch.io/test/read.cgi/tech/1613809074/965
966: デフォルトの名無しさん [sage] 2021/06/16(水) 21:37:33.32 ID:AzDBz8je >>965 そもそもアセンブラレベルでパッチあてたりするには相当な理解力が無いと無理だから諦めたほうがいい http://mevius.5ch.io/test/read.cgi/tech/1613809074/966
967: デフォルトの名無しさん [sage] 2021/06/16(水) 22:17:06.52 ID:181t9wct >>966 オフラインのゲームなので ollydbgやcheat engineの中身が読めるようになればいいです。 そこまで難しいレベルのことはやろうとしてないです http://mevius.5ch.io/test/read.cgi/tech/1613809074/967
968: デフォルトの名無しさん [sage] 2021/06/16(水) 22:40:53.92 ID:7CrzTbcp >>965 いわゆるリバースエンジニアリングと呼ばれる分野だが質問内容を見る限り全然足りていないように見える コンピューター内で計算はどのように行われるのか、データの移動はどうするのか、周辺デバイスやOSの利用は どうするのかなど低レイヤーの理解が無いと全く歯が立たないと思う ちなみにCPUだがPS2はMIPS系、PS3はPPC系だ 以前に見たPS3のゲームを解析レポートだと確かIDAにPPCのプラグインを組み合わせて静的解析していたかな それでもそれでも結構な知識と経験がいると思うが とりあえずOSやISAの違い無視してもOllyDbgでWinゲームの改造は朝飯前くらいじゃないと話にならないのでは http://mevius.5ch.io/test/read.cgi/tech/1613809074/968
969: デフォルトの名無しさん [sage] 2021/06/17(木) 07:38:07.73 ID:B6QT+gV0 x86アセンブラを覚えるには他のプログラミング言語同様 ハローワールドからやって覚えていくもの? それともPCのオフラインゲー解析してたら覚えられるんでしょうか。 http://mevius.5ch.io/test/read.cgi/tech/1613809074/969
970: デフォルトの名無しさん [sage] 2021/06/17(木) 07:46:05.74 ID:IuszbmHt アセンブラはCPUごとのレジスタやらメモリマップやらアドレッシングやら命令ごとのフラグへの影響やら、基礎を固めないと何もできない http://mevius.5ch.io/test/read.cgi/tech/1613809074/970
971: デフォルトの名無しさん [sage] 2021/06/17(木) 07:57:57.58 ID:hZaFEnho >>965 すでにそういうツールやノウハウがあるんだったら そのツールの解析からはじめたほうがいいと思う http://mevius.5ch.io/test/read.cgi/tech/1613809074/971
972: デフォルトの名無しさん [sage] 2021/06/17(木) 08:42:16.10 ID:B6QT+gV0 >>971 ツールの使い方はググって何とかなるのですが https://gyazo.com/63c5590c01c304c07ff3a5c17a5d46ac こういうの全く読めなくて手も足も出ない状況です・・ これに出てきてるのは何系のアセンブラなんでしょうか? http://mevius.5ch.io/test/read.cgi/tech/1613809074/972
973: デフォルトの名無しさん [sage] 2021/06/17(木) 08:59:56.36 ID:MdpjMllh >>972 ググって答えが見つかることしか分かりませんて状態なら、無理だから諦めろと言いたい 基礎的な知識がまったくない状態だから、遠回りしてでも基礎から地道に積み重ねるしかない http://mevius.5ch.io/test/read.cgi/tech/1613809074/973
974: デフォルトの名無しさん [sage] 2021/06/17(木) 09:45:33.10 ID:hZaFEnho >>972 SPU Assembly Language Specification http://mevius.5ch.io/test/read.cgi/tech/1613809074/974
975: デフォルトの名無しさん [sage] 2021/06/17(木) 10:55:12.84 ID:B6QT+gV0 >>973 学ぶ意欲はあるので遠回りしてでも習得したいのですが 基礎的な必要知識がなんなのか分かってない状態です http://mevius.5ch.io/test/read.cgi/tech/1613809074/975
976: デフォルトの名無しさん [sage] 2021/06/17(木) 11:04:32.10 ID:MdpjMllh >>975 必要なところだけピンポイントで足場を固めて積み上げるなんてできないから、広く浅くでコンピュータやプログラミングの全般的なことを学びながら、段々に自分に必要な物が見えて来るようになるからそちらを深掘りしていくようにしたら? http://mevius.5ch.io/test/read.cgi/tech/1613809074/976
977: デフォルトの名無しさん [sage] 2021/06/17(木) 11:54:29.83 ID:hZaFEnho 念のため補足しとくけどドキュメントの名称だからな ここに全部書いてあるから http://mevius.5ch.io/test/read.cgi/tech/1613809074/977
978: デフォルトの名無しさん [sage] 2021/06/17(木) 13:47:27.99 ID:xNFu7F8M wikipediaでx86を調べて そこでわからない単語を片っ端から wikipediaやググってみたら? http://mevius.5ch.io/test/read.cgi/tech/1613809074/978
979: デフォルトの名無しさん [sage] 2021/06/17(木) 15:36:52.47 ID:rI4RyUy5 PS2やPS3のゲームを改造したいのになぜx86なのか。それが判らない http://mevius.5ch.io/test/read.cgi/tech/1613809074/979
980: デフォルトの名無しさん [sage] 2021/06/17(木) 17:14:07.40 ID:ooZzmu2N >>972の内容は、まぁexeだしレジスタ名称とかニーモニックからX86だろうけど アセンブラって基本的な部分はある程度同じなんで、いきなりX86とかMIPSとか PPCとかフル機能のCPUのアセンブラから勉強しようとするとすぐに詰むよ アセンブラを眺める程度ならHP拾い読みでも良いけど、開発とかを行うならば もう少し簡単なPICとかのアセンブラをしっかり勉強してからの方が近道だと思うよ そして根本的な話でPS2とかPS3とかの開発をしたいならば別にアセンブラを 使わなくてもC++のSDKとか開発されているので、よほど低レベルな部分の 開発を行うのでなければアセンブラ必要ないよ ps2 sdkとかps3 sdkで検索してみて http://mevius.5ch.io/test/read.cgi/tech/1613809074/980
981: デフォルトの名無しさん [] 2021/06/17(木) 19:05:41.15 ID:JkvBpemd >>980 コンパイラが吐いたフル機能使いまくりのコードを 逆アセして読み解こうとしている天才がいるんだよ アセンブラの命令すらマニュアル無しで解読する能力の持ち主なんだ すごいだろ? http://mevius.5ch.io/test/read.cgi/tech/1613809074/981
982: デフォルトの名無しさん [sage] 2021/06/17(木) 19:46:46.81 ID:mjY/8PfV チートの程度にもよるけど、やねうらおの書籍「解析魔法少女 美咲ちゃん」は参考になったよ http://mevius.5ch.io/test/read.cgi/tech/1613809074/982
983: デフォルトの名無しさん [sage] 2021/06/17(木) 20:28:00.57 ID:IuszbmHt その昔の素朴なCPUだと16進ダンプを直読みする強者が http://mevius.5ch.io/test/read.cgi/tech/1613809074/983
984: デフォルトの名無しさん [sage] 2021/06/18(金) 11:44:25.11 ID:DLEaHmmC 日本では、情報処理試験の仮想アセンブラ・CASL2 が基本。 世界では、LLVM のサイトで、仮想アセンブラを学ぶ x86 なら、OllyDbg・やねうらお・うさぴょんが有名 http://mevius.5ch.io/test/read.cgi/tech/1613809074/984
985: デフォルトの名無しさん [] 2021/06/18(金) 12:03:44.02 ID:7Huy+AZL 漏れもやねうらは好きな方だが 初心者ならやねうらより ISBN 4839909865 http://mevius.5ch.io/test/read.cgi/tech/1613809074/985
986: デフォルトの名無しさん [sage] 2021/06/18(金) 12:32:20.21 ID:194Cy0xO CASLはどうみても68系ベースの簡略版で、68プログラマーでもあった俺はインストラクション眺めただけで楽勝だった http://mevius.5ch.io/test/read.cgi/tech/1613809074/986
987: デフォルトの名無しさん [sage] 2021/06/18(金) 12:35:29.33 ID:/PK0wqbC gyazoとかいうゴミで画像貼んな http://mevius.5ch.io/test/read.cgi/tech/1613809074/987
988: デフォルトの名無しさん [] 2021/06/18(金) 13:39:45.56 ID:WThQkiL7 func(list): _if list[0]=a: __for i in list: ____conv_a(i) ____write(i) _elif list[1]=b: __for i in list: ____conv_b(i) ____write(i) 空撃ちしたときと本番で処理違うみたいなので こう書きがちなんだけど、よくないなっていう自覚があります 配列→微妙に異なる処理→出力 のとき、どう書いたら上手いですか? http://mevius.5ch.io/test/read.cgi/tech/1613809074/988
989: デフォルトの名無しさん [sage] 2021/06/18(金) 13:46:33.95 ID:Jo75oGSb >>988 仕様がクソならコードもクソにしかならん そういう状況になるのはたいてい抽象化がヘタクソ http://mevius.5ch.io/test/read.cgi/tech/1613809074/989
990: デフォルトの名無しさん [] 2021/06/18(金) 14:15:44.89 ID:ru+U9KL5 python で代入文は if の条件に描けないぞ http://mevius.5ch.io/test/read.cgi/tech/1613809074/990
991: デフォルトの名無しさん [sage] 2021/06/18(金) 14:18:50.64 ID:H41XlXnl >>988 Pythonぽいけどdefないし等号も違うから何の言語か分からなかった Pythonみたいに関数を変数に入れられる言語なら最初に適用する関数を決めるとすっきりしそう func(list): # 適用する処理(conv)を設定 if list[0] == a: conv = conv_a elif list[1] == b: conv = conv_b # リストに処理を適用して出力 for i in list: conv(i) write(i) aとbでlistのインデクスが違うのが気になったけど無視する http://mevius.5ch.io/test/read.cgi/tech/1613809074/991
992: デフォルトの名無しさん [sage] 2021/06/18(金) 14:22:04.15 ID:EhVYURYt 変数名に list 使うな func(l): if l[0] != a && l[1] != b: return f = (conv_a, conv_b)[l[0] != a] for i in l: f(i) write(i) http://mevius.5ch.io/test/read.cgi/tech/1613809074/992
993: デフォルトの名無しさん [sage] 2021/06/18(金) 14:27:15.83 ID:rMpkljNE >>990 正確には Pythonでは代入は文なので、条件式には入れられない。 Cなどでは代入が式なので条件式にも入れられる。 http://mevius.5ch.io/test/read.cgi/tech/1613809074/993
994: デフォルトの名無しさん [sage] 2021/06/18(金) 14:40:28.04 ID:dSkONN1n >>988 >配列→微妙に異なる処理→出力 のとき、どう書いたら上手いですか? 高階関数を使う http://mevius.5ch.io/test/read.cgi/tech/1613809074/994
995: デフォルトの名無しさん [] 2021/06/18(金) 15:01:02.87 ID:WThQkiL7 すいませんpythonスレじゃないので曖昧な書き方のがいいのかなと思って… def func(l): _if l[0][0] == 0: __for i in l: ___write(conv_a(i)) _elif[0][0] == 1: __for i in l: ___write(conv_b(i)) です.ほんとは各処理もうちょっと関数続くんですけど いずれにせよ途中だけが微妙に違うほぼ同じ処理をきれいに書きたい >>991 おー.見やすいです http://mevius.5ch.io/test/read.cgi/tech/1613809074/995
996: デフォルトの名無しさん [] 2021/06/18(金) 15:45:26.03 ID:PuJK3NPt >>991 は仕様(実装)にバグがある http://mevius.5ch.io/test/read.cgi/tech/1613809074/996
997: デフォルトの名無しさん [sage] 2021/06/18(金) 17:03:01.08 ID:194Cy0xO うん、>>992のようにチェック入れるべきだね でもreturnより例外吐くべきでは? http://mevius.5ch.io/test/read.cgi/tech/1613809074/997
998: デフォルトの名無しさん [sage] 2021/06/18(金) 18:04:22.88 ID:tKtuqq6N 責務の分離が上手くできてない関数の中身だけいじくり回してもキレイにはならないよ 呼び出し側やデータ構造なんかも含めて考え直さないと http://mevius.5ch.io/test/read.cgi/tech/1613809074/998
999: デフォルトの名無しさん [sage] 2021/06/18(金) 18:38:56.71 ID:9pPslW7o メインルーチンとサブルーチンを明確に意識して メインルーチンは処理の流れがわかるように サブルーチンはテストして結果が出ればよしと分ける http://mevius.5ch.io/test/read.cgi/tech/1613809074/999
1000: デフォルトの名無しさん [] 2021/06/18(金) 21:22:28.52 ID:FdpzvR5V >>998 もっと具体的に言わないと役に立たないと思うが http://mevius.5ch.io/test/read.cgi/tech/1613809074/1000
1001: 1001 [] ID:Thread このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 118日 4時間 4分 34秒 http://mevius.5ch.io/test/read.cgi/tech/1613809074/1001
1002: 1002 [] ID:Thread 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。 運営にご協力お願いいたします。 ─────────────────── 《プレミアム会員の主な特典》 ★ 5ちゃんねる専用ブラウザからの広告除去 ★ 5ちゃんねるの過去ログを取得 ★ 書き込み規制の緩和 ─────────────────── 会員登録には個人情報は一切必要ありません。 月300円から匿名でご購入いただけます。 ▼ プレミアム会員登録はこちら ▼ https://premium.5ch.net/ ▼ 浪人ログインはこちら ▼ https://login.5ch.net/login.php http://mevius.5ch.io/test/read.cgi/tech/1613809074/1002
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.027s