アセンブラ言語やマシン語は覚えておくべきですか? (519レス)
上下前次1-新
1(15): 仕様書無しさん [] 2009/06/12(金)19:54
c言語だけ、理解していれば、プログラマーとして、大丈夫なのでしょうか?
2(3): 仕様書無しさん [] 2009/06/12(金)19:58
>>1
マシン語は不要。
アセンブラは、「おれ業務系のプログラムだったらもう余裕。工数も機能を言われるだけである程度見積もれる」ってレベルになって
仕事にマンネリ化して、さらにもう一皮向けたプログラマになりたいと思ったら、マイコンと一緒に始めなさい
3: 仕様書無しさん [sage] 2009/06/12(金)20:02
知らないよりは、知ってれば有利。
今じゃほぼ無いと思うが、昔はコンパイラにもバグがあって、それを調べるのに重宝した。
4(1): 仕様書無しさん [sage] 2009/06/12(金)20:05
むしろ言語を学ぶこと自体既に意味がなくなりつつ
5: 仕様書無しさん [] 2009/06/12(金)20:23
>>4
どういうことですか?
6: 仕様書無しさん [sage] 2009/06/12(金)20:36
なぜにC言語
言うのが20年ばかり遅くはないか
7: 仕様書無しさん [sage] 2009/06/12(金)20:40
>>2
そういうレベルになっちゃうと、もうアセンブラ仕事なんか理解できないよ。
8: 仕様書無しさん [sage] 2009/06/12(金)20:54
業種によるだろ。JK
9: 仕様書無しさん [] 2009/06/12(金)21:47
ニーモニック表が読めればOK
10: 仕様書無しさん [] 2009/06/12(金)22:10
ローカル変数やヒープ、関数の呼び出し規約、スタックの構造が想像できるようになると、デバッグ効率も全然違うから是非覚えておくべき。
というか、アセンブリ言語を経験していないブログラマは、セックスを経験していないホストのようなもの。見てくれだけで女を喜ばそうなんざ、
どだい無理な話だわな。
11: 仕様書無しさん [sage] 2009/06/12(金)22:19
学生時代に経験したけどほとんど覚えてない
12: 仕様書無しさん [sage] 2009/06/12(金)22:24
というかこれは憶える必要はない、と断言できるものってそうそう無い。
>>1が何系のプログラマーになりたいか、でその進路にアセンブラは必要か否か
ならまだ答えられるんだけど、プログラマーと漠然とした範囲なら
「おぼえておいてソンは無い」という当たり障りない答えになってしまうかと。
13: 仕様書無しさん [] 2009/06/12(金)23:27
アセンブリ言語
アセンブラ
14: 仕様書無しさん [sage] 2009/06/12(金)23:31
アセロラ飲料
プリクラ
15: 仕様書無しさん [sage] 2009/06/12(金)23:39
>>1はまず日本語を覚えて、句読点の分量を適宜調整して欲しい。
16: 仕様書無しさん [sage] 2009/06/13(土)00:16
最低限、そのコードが動くマシンがどうなっているのかは知っているべきだし、
はき出すコードがおかしくないかどうか位は自分で見てわかるべき。(あんちょこ使って良いから。)
配列にマシン語いれといて自己書き換えとかC言語でも希に良くやる。
17: 仕様書無しさん [sage] 2009/06/13(土)00:54
アセンブリ言語なんて、
計算機アーテクチャを知ってないと、自分が何やってるかわからんようになって
一発でやる気が無くなるのがオチ
最低でもタネンバウムのOS本は読んどかないとな
18: 仕様書無しさん [] 2009/06/13(土)01:01
クラッキングのためだと思ったら、結構楽しく覚えられるんじゃね?
19: 仕様書無しさん [sage] 2009/06/13(土)01:05
それは修羅の道
普通に勉強する方が遥かに楽
20: 仕様書無しさん [] 2009/06/13(土)01:38
マシン語はさすがにおぼえなくていいよ
21: 仕様書無しさん [] 2009/06/13(土)02:12
組込なら書けなくても読めたほうがいいよ。Cで書いたプログラムの動きが納得できないときに
コンパイラが吐いたアセンブラで机上デバッグするというのはよくやること。
22: 仕様書無しさん [sage] 2009/06/13(土)02:23
汎用機からJavaに移植する仕事したときにアセンブラの解析やったなぁ
自分は8ビットでマシン語やってたからある程度理解出来たけど
他のプログラマはみんな業務系の人だったんで誰も読めなかった
23: 仕様書無しさん [sage] 2009/06/13(土)02:26
そのプロジェクトってアセンブラ解析部隊のおじいちゃん集団がいたんだけど
ディスプレイの文字が小さくて読めないらしく、
17インチモニタなのにみんなSVGAでモニタあげてた
24: 仕様書無しさん [sage] 2009/06/13(土)08:19
>>2はきっと、組込み開発のことを全く知らないんだろうな。
それはそれで幸せなことだw
25: 仕様書無しさん [sage] 2009/06/13(土)08:57
とりあえず、情報処理技術者試験のCASL2程度はやっとけ。
8086でもいいけど、要するにそのぐらいの基本レベル。
26: 仕様書無しさん [sage] 2009/06/13(土)13:09
アセンブラを知らない組み込みプログラマは、モグリ。
27: 仕様書無しさん [sage] 2009/06/13(土)13:32
大学でひととおり習ってるはず
28(1): 仕様書無しさん [] 2009/06/13(土)16:35
今だったら、アセンブラで、
ファイルからリードして標準出力へ表示ぐらい出来れば良いんじゃね。
29: 仕様書無しさん [sage] 2009/06/13(土)16:42
>>28
ファイルでは敷居が高いから、キーボードから1文字リードしてTTYに出力の方がいいよ。
それならシステム関数使わないで全部まるまるっとアセンブラで組めるだろ?
30: 仕様書無しさん [sage] 2009/06/13(土)17:08
シリアル入力→演算→シリアル出力
これならワンチップマイコンでも作れるからね。
31(1): 仕様書無しさん [sage] 2009/06/13(土)17:09
そう考えると中級アマチュアでもみんなマシン語書いてた
ベーマガI/O世代はレベル高かったんだな
32: 仕様書無しさん [sage] 2009/06/13(土)17:28
>>31
いや、当時は覚える範囲がすごく狭いから
プログラマーのスキル=どれくらい深く知ってるか=アセンブラ等のハードよりの技術
みたいな感じだった。今は目的に適した言語、ツール、書き方等、スキルの方向性も変わってきてる。
アセンブラを憶えると希少価値は上がるけど活用する場面は少なかった。俺の場合。
そのうちUVパイプやらRISCやらアセンブラに直訳するだけでは高速化すら難しくなり、今は必要なら読む程度。
同じ労力で>>1が別言語覚えるのと迷っているならそちらを進める。
33: 仕様書無しさん [sage] 2009/06/13(土)17:46
9801以外の奴はBASICとマシン語しか選択肢なかったようなもんだからな
34(1): 仕様書無しさん [sage] 2009/06/13(土)17:48
ちょっと前に誰か偉い人が
僕らの時代はC言語を覚えなきゃならないのが不幸だったとか言ってたな
個人的に技術追求するんじゃなかったら特定の高給言語だけできればいいんだよね
35(2): 仕様書無しさん [sage] 2009/06/13(土)18:17
Cを覚えたくないのに覚えなきゃならないから不幸だった、とかいう人は
そもそもプログラマに向いてない。
逆に、今の若い人は、Cもアセンブラも不要なので、習得が難しく、
ソフトウェアの本質を知らないまま突き進んで気の毒だと思うけどね。
36: 仕様書無しさん [sage] 2009/06/13(土)18:30
Cやアセンブラがソフトの本質ぅ?
37: 仕様書無しさん [sage] 2009/06/13(土)19:04
>>35
最初がいきなりC言語だと挫折する人の方が多いから
そもそもソフト作れる人がほとんどいなかったって意味だろ
38: 仕様書無しさん [sage] 2009/06/13(土)19:18
ソフトを作れる人を減らしていかないと
俺の仕事がなくなる
39: 仕様書無しさん [] 2009/06/13(土)19:41
>>34
んなこたーない。
今は一つのシステム作るのに複数の言語・複数のプラットフォームを
使うのは当たり前になってきてる。
昔と違って「C言語さえできればプログラマとして一人前」みたいなことは無くなった。
40: 仕様書無しさん [sage] 2009/06/13(土)20:11
客の要求に応じたシステムを作れれば言語ひとつしか出来なくても一人前だと思うんだが。
複数言語使い分けてなんてのは技術者側の自己満足でしょ。
アーキテクチャやってる人なら複数言語使ってみて比較して使い分けてってのは必要だろうけど。
41: 仕様書無しさん [sage] 2009/06/13(土)20:44
客の要求に応じたシステムを安く作るために、いろんな言語を使うんだよ。
一つの言語でやろうっていう方が、技術屋の自己満足。
42: 仕様書無しさん [sage] 2009/06/13(土)20:59
>>35
それで仕事になるなら知らなくてもいいことを知らないのは気の毒とは違うんじゃないかな
43: 仕様書無しさん [sage] 2009/06/13(土)21:18
いろんな言語使わんよ実際は
やったとしても上級PGがせいぜい似た感じの言語を2つ3つやる程度
例えばJavaとPHPとか、VBとVCとかみたいな
もちろんSQLやBASHやHTMLは1言語と数えないでね
44: 仕様書無しさん [sage] 2009/06/13(土)21:55
だから業種によって様々だから。
言い切れるおまいらが異常だよ。
45: 仕様書無しさん [sage] 2009/06/13(土)22:00
沢山覚えてて当たり前なのか、必要な人だけ沢山覚えればいいのかって話じゃないの?
複数の言語を沢山覚えるのが当たり前ではないって反論なだけでしょ
そりゃいくつもの言語を使い分ける必要がある人はいるだろうよ
46: 仕様書無しさん [sage] 2009/06/13(土)22:22
いや、言語一つだけでPGやっていけるっていう方が珍しいと思うぞ。
COBOLとかの特殊な世界は知らんが。
47: 仕様書無しさん [sage] 2009/06/13(土)22:31
半数以上のPGは言語1つ2つでやってると思うが、
そんなにいろんな言語をやらんといけない業種って何?
CとC++とMakeとshellとSQLで5言語と計算とか無しな
48: 仕様書無しさん [sage] 2009/06/13(土)22:41
WEB系だけどJavaとPHP以外は壊滅してるから殆ど使わんな。
ってかその中でもPHPが殆ど。
業界ではレアケースだったのかこれ。
49: 仕様書無しさん [sage] 2009/06/13(土)22:50
業務系の請負でもライブラリはCのインタフェース触らないといけないものがあって、UIはJavaで運用スクリプトがPerlだったりするが。
もちろんSQLとshくらい普通に知ってる感じで。
あとは案件によって時々ABAPとか付いてきたりか。
仕事が来てから必要に応じて勉強しても間に合う話しなので
どうってことは無い事だけど。
50: 仕様書無しさん [sage] 2009/06/13(土)23:09
アセンブラ必要なのは組み込み系だけじゃね?
業務系とかWEB系は高級言語レベルで動作が保証されればハードに近い所が何やってんのか知る必要無いからな。
51(1): 仕様書無しさん [sage] 2009/06/13(土)23:11
WEB系の仕事するときでも、Java,PHP,JavaScript(AS含む),Rubyくらいは出てくるなぁ。
(一つのプロジェクトで全部使うわけでもないけど)
マスタメンテなどの管理アプリ欲しいっていわれればC#あたりで作ることになるし、
会社としてはWEB系以外の仕事も請負ってるんで、そっちはまたべつの技術使うし。
52: 仕様書無しさん [sage] 2009/06/13(土)23:42
おれも情報処理技術者試験のCASL勉強したけど全然覚えてない
でも先にこれやっとくとCのポインタが理解しやすかったと思う
53: 仕様書無しさん [sage] 2009/06/14(日)01:02
つまり複数言語を沢山使う人は、みんな無駄に改行を入れるということですね。
54(1): 仕様書無しさん [sage] 2009/06/14(日)01:15
引数をスタックでわたすかレジスターで渡すかの違いがわかるのは大きい
わけねーだろ!
55: 仕様書無しさん [] 2009/06/14(日)01:28
知識はただじゃない
けど、オープンソースが僕の技術力を高めてくれた
プラマイ0
56(1): 仕様書無しさん [sage] 2009/06/14(日)01:49
>>51
そんなバラバラで作っちゃって、メンテナンスどうしてんの?
同じ言語や環境で揃えて、誰か辞めてもメンテナンス出来るようにしないと
のちのち面倒くさいだろ。
二次受けで元請けの言いなりみたいな会社だったらそうなのかもしれないけど、
自社開発の所は環境揃えるもんだぜ。
57: 仕様書無しさん [sage] 2009/06/14(日)02:19
>>56
言語が違うくらいでメンテナンス不能になるようなことはないって。
新人でも一ヶ月くらいで新しい言語使えるようになるから。
58: 仕様書無しさん [sage] 2009/06/14(日)03:13
言語よりコンピュータで何ができるかわかってる方が大きい。
Cでもjavaでも.NETでもちょっとしたアプリなら誰でもできる。
でもスレッドをつかったプログラミングとか、異機種間通信で文字コードの違いを
頭に入れて作らなきゃいけないとかはまた別次元の問題。
大切なのは前者より後者
59(3): 仕様書無しさん [sage] 2009/06/14(日)06:02
一ヶ月やった程度の新人に、動いてる客のシステムいじらせるとか正気ですか。
60: 仕様書無しさん [sage] 2009/06/14(日)08:15
バラバラの言語で作っていたものを社内で統一するってことはよくあるね。
うちもJava,PHP,Perl,ASPってあったけど、一部の大規模なのをのぞいて、
新規案件は基本PHP+Symfonyに統一になった。
Webの場合は、言語の使い分けって技術者の自己満足でしかないんだよね。
HTML出てくればそれでいい。
61: 仕様書無しさん [] 2009/06/14(日)08:50
>>59
結局、その程度の規模なんでしょ。
10万ステップ級の業務プログラムとかいじることはないでしょ。
所詮、使い捨てプログラムレベル
62(1): 仕様書無しさん [sage] 2009/06/14(日)09:07
小規模システムを作り切りで納品するだけの下請なんじゃね
だからメンテナンスは考えないで、
目新しい言語に次々手を出すと
63: 仕様書無しさん [] 2009/06/14(日)09:14
>>62
怖いよね。そーゆー会社。
プログラムが使い捨てってことは、それを作っているプログラマも使い捨てにできるってことに気づいたら、さっさと転職考えるよな
64(2): 仕様書無しさん [sage] 2009/06/14(日)09:50
> 10万ステップ級
すいぶん小規模なんだなw
65(3): 仕様書無しさん [sage] 2009/06/14(日)09:58
>>64
ひとつのファイルが10万ステップだお
66: 仕様書無しさん [sage] 2009/06/14(日)10:03
それは拷問だ
67(2): 仕様書無しさん [] 2009/06/14(日)10:30
>>64
でけぇよ
厨房はひっこんでろ。
OSですら500万STEPだぞ。
業務系で10万STEP規模なら、相当なもん作れる
68: 仕様書無しさん [sage] 2009/06/14(日)10:33
>>59
お前の会社は、新人に仕事投げっぱなしなのかな?
69: 仕様書無しさん [] 2009/06/14(日)10:35
>>67
どうせ1000ステップ20ファンクションくらいのプログラム作成に1ヶ月くらいかけている素人でしょ。
10万ステップ、医療系ならレセプトシステムが作れるな
70: 仕様書無しさん [sage] 2009/06/14(日)10:38
>>59
ちゃんとテストして動けばだれがつくっても同じだろ
71: 仕様書無しさん [sage] 2009/06/14(日)10:48
>>65
>ひとつのファイルが10万ステップだお
1行に平均40バイト書かれてると仮定すれば、ファイルサイズは4メガバイト足らずか。
そんなソースコードが存在してる時点で会社のレベルが知れるね。
新人をいれるとかいれないとか以前の問題だと思うぞ。
72: 仕様書無しさん [sage] 2009/06/14(日)10:50
保守できないじゃん。
73: 仕様書無しさん [sage] 2009/06/14(日)10:54
業務系には蛙がたくさんいるようだな
74(1): 仕様書無しさん [sage] 2009/06/14(日)11:04
アセンブラが出来ない奴らがスレ違いの話を延々とw
75: 仕様書無しさん [sage] 2009/06/14(日)11:15
>>74
もうその話は結論でたからいいじゃん
76(1): 仕様書無しさん [sage] 2009/06/14(日)11:23
結論出てんのなら、このスレ終了でいいじゃん。
なにスレ違いな話を延々としてんの。
77: 仕様書無しさん [sage] 2009/06/14(日)11:25
>>76
>>1 読めよ。
>c言語だけ、理解していれば、プログラマーとして、大丈夫なのでしょうか?
この問いに何と答えるのか
78(1): 仕様書無しさん [sage] 2009/06/14(日)11:30
>>1への答えとしては
「まずその前に、日本語をもっと勉強しましょう」。
79: 仕様書無しさん [sage] 2009/06/14(日)11:44
Cを理解してるっていってもねえ。
理解してると思ってるのは自分だけって奴もいっぱいいるしな。
static関数のプロトタイプ宣言をヘッダに書くみたいな狂ったことして
「Cわかります」って威張られても笑っちゃうだけだよ。
関数のポインタが嫌でifをずらずら並べたり、プロトタイプ宣言がわからなくて
ボトムアップ順で関数記述したり、ローカルでしか使わない関数なのにstatic
つけなかったり、分割コンパイルがよくわからないから1個のソースに何でもかんでも
入れたり・・・「なんちゃってCプログラマ」は無数にいるよ。
80(1): 仕様書無しさん [sage] 2009/06/14(日)11:47
>>78
は?>>1の日本語のどこに問題あるんだ?
81: 仕様書無しさん [sage] 2009/06/14(日)12:17
>>80
日本語ネイティブは、あんなに読点を打たない。
82(1): 仕様書無しさん [sage] 2009/06/14(日)14:33
ま、アセンブラの次にcは最後まで生き残る言語だからな。
コンピュータという機械がある限りアセンブラは存在し、
アセンブラが存在する限りcは存在する。
83(2): 仕様書無しさん [sage] 2009/06/14(日)16:49
>>82
それはフォンノイマン型コンピュータの話だろう。
いずれちょびっツに出てくるようなパソコンが主流となる。
そうなれば機械語は終わりだ。
84: 仕様書無しさん [sage] 2009/06/14(日)16:56
>>83
生きてるうちにちょびっつが完成したらいいなー
無理だろうなorz
85(1): 仕様書無しさん [sage] 2009/06/14(日)18:36
>>83
intelがあの調子じゃ今世紀一杯(あと91年)は無理だろw
86: 仕様書無しさん [sage] 2009/06/14(日)18:45
アセンブラぐらいマニュアル見ながら読めるのが普通だろ。ユーザーレポートのレジスタ値見ても障害解析できねーじゃないか。
何も上級シスアド受かれとか言ってるわけじゃないし、基本だけ知ってれば何とでもなる。2日で覚えれるさ。
87: 仕様書無しさん [sage] 2009/06/14(日)18:50
C言語「覚えた」の基準は、構造化やモジュール結合度の概念が身についてないと何の意味もないよね。
88: 仕様書無しさん [sage] 2009/06/14(日)20:34
>>85
つまりドラえもんの時代まで待てということか
89: 仕様書無しさん [sage] 2009/06/15(月)23:07
簡単なアセンブラぐらいできないんだったら、
プログラマやめたほうがいいだろ。
アセンブラでアプリ1本作るというのなら、大変だけど。
90: 仕様書無しさん [] 2009/06/16(火)08:12
>>67
>> OSですら500万STEPだぞ。
君ねー、OS書いたことないの、バレバレだよーん。
その君の言ってるOSって、まあ、基本的なドライバは
含めるとしても、ExcelやWordは入ってないよな?(笑)
91: 仕様書無しさん [sage] 2009/06/16(火)10:04
つーか、マイコンやれば簡単な電子回路も学べるし
アセンブラも学べるしドライバが何やってるかもよくわかるし
PCだけやってても技術者にはなれない
92: 仕様書無しさん [sage] 2009/06/16(火)10:35
>>65
糞ソースwwwwwwwwwwwwww
93: 仕様書無しさん [sage] 2009/06/16(火)22:37
つーか、自分でCPU作ってCコンパイラを作らなければいいんだよ
94(2): 仕様書無しさん [sage] 2009/06/16(火)22:39
>>54
> 引数をスタックでわたすかレジスターで渡すかの違いがわかるのは大きい
> わけねーだろ!
組み込みだと結構気にしますが。
関数の第一引数はint型であれば、レジスタ渡しを優先的に選択するマイコンとか。
知らないと損をすることがあるので違うマイコンをはじめて使う時は
このあたりのことから勉強してます。
95(1): 仕様書無しさん [sage] 2009/06/16(火)22:47
>>94
それはマイコンがどうとか言うより、そのマイコンのCコンパイラの癖じゃないのか。
96: 94 [sage] 2009/06/16(火)22:49
>>95
> >>94
> それはマイコンがどうとか言うより、そのマイコンのCコンパイラの癖じゃないのか。
そうですね正確にはそういうことです
97: 仕様書無しさん [sage] 2009/06/16(火)22:57
-O -fomit-frame-pointer -fforce-register
ってやれば出来るだけスタック渡ししてくれるでそ
98: 仕様書無しさん [sage] 2009/06/16(火)23:01
まちがえた 出来るだけレジスタ渡し、ね
99(1): 仕様書無しさん [] 2009/06/17(水)02:45
組込みマイコンでもGCC使えないのは、もうモチベーション出ないな。
100: 仕様書無しさん [sage] 2009/06/17(水)02:50
GCCがあってもむしろアセンブラでガリガリ書きたい石もある。
ColdFireとか。
上下前次1-新書関写板覧索設栞歴
あと 419 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.020s