1read 100read
2011年10月1期プログラマーアセンブラ言語やマシン語は覚えておくべきですか? TOP カテ一覧 スレ一覧 削除依頼
・ 次のスレ
給料比較 公務員>SE>プログラマー
IDE(統合開発環境) vs emacs(テキストエディタ)
ちらしの裏
つまり若者は死んだら良いんだろ?


アセンブラ言語やマシン語は覚えておくべきですか?


1 :09/06/12 〜 最終レス :11/09/18
c言語だけ、理解していれば、プログラマーとして、大丈夫なのでしょうか?

2 :
>>1
マシン語は不要。
アセンブラは、「おれ業務系のプログラムだったらもう余裕。工数も機能を言われるだけである程度見積もれる」ってレベルになって
仕事にマンネリ化して、さらにもう一皮向けたプログラマになりたいと思ったら、マイコンと一緒に始めなさい

3 :
知らないよりは、知ってれば有利。
今じゃほぼ無いと思うが、昔はコンパイラにもバグがあって、それを調べるのに重宝した。

4 :
むしろ言語を学ぶこと自体既に意味がなくなりつつ

5 :
>>4
どういうことですか?

6 :
なぜにC言語
言うのが20年ばかり遅くはないか

7 :
>>2
そういうレベルになっちゃうと、もうアセンブラ仕事なんか理解できないよ。

8 :
業種によるだろ。JK

9 :
ニーモニック表が読めればOK

10 :
ローカル変数やヒープ、関数の呼び出し規約、スタックの構造が想像できるようになると、デバッグ効率も全然違うから是非覚えておくべき。
というか、アセンブリ言語を経験していないブログラマは、を経験していないホストのようなもの。見てくれだけで女を喜ばそうなんざ、
どだい無理な話だわな。

11 :
学生時代に経験したけどほとんど覚えてない

12 :
というかこれは憶える必要はない、と断言できるものってそうそう無い。
>>1が何系のプログラマーになりたいか、でその進路にアセンブラは必要か否か
ならまだ答えられるんだけど、プログラマーと漠然とした範囲なら
「おぼえておいてソンは無い」という当たり障りない答えになってしまうかと。

13 :
アセンブリ言語
アセンブラ

14 :
アセロラ飲料
プリクラ

15 :
>>1はまず日本語を覚えて、句読点の分量を適宜調整して欲しい。

16 :
最低限、そのコードが動くマシンがどうなっているのかは知っているべきだし、
はき出すコードがおかしくないかどうか位は自分で見てわかるべき。(あんちょこ使って良いから。)
配列にマシン語いれといて自己書き換えとかC言語でも希に良くやる。

17 :
アセンブリ言語なんて、
計算機アーテクチャを知ってないと、自分が何やってるかわからんようになって
一発でやる気が無くなるのがオチ
最低でもタネンバウムのOS本は読んどかないとな

18 :
クラッキングのためだと思ったら、結構楽しく覚えられるんじゃね?

19 :
それは修羅の道
普通に勉強する方が遥かに楽

20 :
マシン語はさすがにおぼえなくていいよ

21 :
組込なら書けなくても読めたほうがいいよ。Cで書いたプログラムの動きが納得できないときに
コンパイラが吐いたアセンブラで机上デバッグするというのはよくやること。

22 :
汎用機からJavaに移植する仕事したときにアセンブラの解析やったなぁ
自分は8ビットでマシン語やってたからある程度理解出来たけど
他のプログラマはみんな業務系の人だったんで誰も読めなかった

23 :
そのプロジェクトってアセンブラ解析部隊のおじいちゃん集団がいたんだけど
ディスプレイの文字が小さくて読めないらしく、
17インチモニタなのにみんなSVGAでモニタあげてた

24 :
>>2はきっと、組込み開発のことを全く知らないんだろうな。
それはそれで幸せなことだw

25 :
とりあえず、情報処理技術者試験のCASL2程度はやっとけ。
8086でもいいけど、要するにそのぐらいの基本レベル。

26 :
アセンブラを知らない組み込みプログラマは、モグリ。

27 :
大学でひととおり習ってるはず

28 :
今だったら、アセンブラで、
ファイルからリードして標準出力へ表示ぐらい出来れば良いんじゃね。

29 :
>>28
ファイルでは敷居が高いから、キーボードから1文字リードしてTTYに出力の方がいいよ。
それならシステム関数使わないで全部まるまるっとアセンブラで組めるだろ?

30 :
シリアル入力→演算→シリアル出力
これならワンチップマイコンでも作れるからね。

31 :
そう考えると中級アマチュアでもみんなマシン語書いてた
ベーマガI/O世代はレベル高かったんだな

32 :
>>31
いや、当時は覚える範囲がすごく狭いから
プログラマーのスキル=どれくらい深く知ってるか=アセンブラ等のハードよりの技術
みたいな感じだった。今は目的に適した言語、ツール、書き方等、スキルの方向性も変わってきてる。
アセンブラを憶えると希少価値は上がるけど活用する場面は少なかった。俺の場合。
そのうちUVパイプやらRISCやらアセンブラに直訳するだけでは高速化すら難しくなり、今は必要なら読む程度。
同じ労力で>>1が別言語覚えるのと迷っているならそちらを進める。

33 :
9801以外の奴はBASICとマシン語しか選択肢なかったようなもんだからな

34 :
ちょっと前に誰か偉い人が
僕らの時代はC言語を覚えなきゃならないのが不幸だったとか言ってたな
個人的に技術追求するんじゃなかったら特定の高給言語だけできればいいんだよね

35 :
Cを覚えたくないのに覚えなきゃならないから不幸だった、とかいう人は
そもそもプログラマに向いてない。
逆に、今の若い人は、Cもアセンブラも不要なので、習得が難しく、
ソフトウェアの本質を知らないまま突き進んで気の毒だと思うけどね。

36 :
Cやアセンブラがソフトの本質ぅ?

37 :
>>35
最初がいきなりC言語だと挫折する人の方が多いから
そもそもソフト作れる人がほとんどいなかったって意味だろ

38 :
ソフトを作れる人を減らしていかないと
俺の仕事がなくなる

39 :
>>34
んなこたーない。
今は一つのシステム作るのに複数の言語・複数のプラットフォームを
使うのは当たり前になってきてる。
昔と違って「C言語さえできればプログラマとして一人前」みたいなことは無くなった。

40 :
客の要求に応じたシステムを作れれば言語ひとつしか出来なくても一人前だと思うんだが。
複数言語使い分けてなんてのは技術者側の自己満足でしょ。
アーキテクチャやってる人なら複数言語使ってみて比較して使い分けてってのは必要だろうけど。

41 :
客の要求に応じたシステムを安く作るために、いろんな言語を使うんだよ。
一つの言語でやろうっていう方が、技術屋の自己満足。

42 :
>>35
それで仕事になるなら知らなくてもいいことを知らないのは気の毒とは違うんじゃないかな

43 :
いろんな言語使わんよ実際は
やったとしても上級PGがせいぜい似た感じの言語を2つ3つやる程度
例えばJavaとPHPとか、VBとVCとかみたいな
もちろんSQLやBASHやHTMLは1言語と数えないでね

44 :
だから業種によって様々だから。
言い切れるおまいらが異常だよ。

45 :
沢山覚えてて当たり前なのか、必要な人だけ沢山覚えればいいのかって話じゃないの?
複数の言語を沢山覚えるのが当たり前ではないって反論なだけでしょ
そりゃいくつもの言語を使い分ける必要がある人はいるだろうよ

46 :
いや、言語一つだけでPGやっていけるっていう方が珍しいと思うぞ。
COBOLとかの特殊な世界は知らんが。

47 :
半数以上のPGは言語1つ2つでやってると思うが、
そんなにいろんな言語をやらんといけない業種って何?
CとC++とMakeとshellとSQLで5言語と計算とか無しな

48 :
WEB系だけどJavaとPHP以外は壊滅してるから殆ど使わんな。
ってかその中でもPHPが殆ど。
業界ではレアケースだったのかこれ。

49 :
業務系の請負でもライブラリはCのインタフェース触らないといけないものがあって、UIはJavaで運用スクリプトがPerlだったりするが。
もちろんSQLとshくらい普通に知ってる感じで。
あとは案件によって時々ABAPとか付いてきたりか。
仕事が来てから必要に応じて勉強しても間に合う話しなので
どうってことは無い事だけど。

50 :
アセンブラ必要なのは組み込み系だけじゃね?
業務系とかWEB系は高級言語レベルで動作が保証されればハードに近い所が何やってんのか知る必要無いからな。

51 :
WEB系の仕事するときでも、Java,PHP,JavaScript(AS含む),Rubyくらいは出てくるなぁ。
(一つのプロジェクトで全部使うわけでもないけど)
マスタメンテなどの管理アプリ欲しいっていわれればC#あたりで作ることになるし、
会社としてはWEB系以外の仕事も請負ってるんで、そっちはまたべつの技術使うし。

52 :
おれも情報処理技術者試験のCASL勉強したけど全然覚えてない
でも先にこれやっとくとCのポインタが理解しやすかったと思う

53 :
つまり複数言語を沢山使う人は、みんな無駄に改行を入れるということですね。

54 :
引数をスタックでわたすかレジスターで渡すかの違いがわかるのは大きい
わけねーだろ!

55 :
知識はただじゃない
けど、オープンソースが僕の技術力を高めてくれた
プラマイ0

56 :
>>51
そんなバラバラで作っちゃって、メンテナンスどうしてんの?
同じ言語や環境で揃えて、誰か辞めてもメンテナンス出来るようにしないと
のちのち面倒くさいだろ。
二次受けで元請けの言いなりみたいな会社だったらそうなのかもしれないけど、
自社開発の所は環境揃えるもんだぜ。

57 :
>>56
言語が違うくらいでメンテナンス不能になるようなことはないって。
新人でも一ヶ月くらいで新しい言語使えるようになるから。

58 :
言語よりコンピュータで何ができるかわかってる方が大きい。
Cでもjavaでも.NETでもちょっとしたアプリなら誰でもできる。
でもスレッドをつかったプログラミングとか、異機種間通信で文字コードの違いを
頭に入れて作らなきゃいけないとかはまた別次元の問題。
大切なのは前者より後者

59 :
一ヶ月やった程度の新人に、動いてる客のシステムいじらせるとか正気ですか。

60 :
バラバラの言語で作っていたものを社内で統一するってことはよくあるね。
うちもJava,PHP,Perl,ASPってあったけど、一部の大規模なのをのぞいて、
新規案件は基本PHP+Symfonyに統一になった。
Webの場合は、言語の使い分けって技術者の自己満足でしかないんだよね。
HTML出てくればそれでいい。

61 :
>>59
結局、その程度の規模なんでしょ。
10万ステップ級の業務プログラムとかいじることはないでしょ。
所詮、使い捨てプログラムレベル

62 :
小規模システムを作り切りで納品するだけの下請なんじゃね
だからメンテナンスは考えないで、
目新しい言語に次々手を出すと

63 :
>>62
怖いよね。そーゆー会社。
プログラムが使い捨てってことは、それを作っているプログラマも使い捨てにできるってことに気づいたら、さっさと転職考えるよな

64 :
> 10万ステップ級
すいぶん小規模なんだなw

65 :
>>64
ひとつのファイルが10万ステップだお

66 :
それは拷問だ

67 :
>>64
でけぇよ
厨房はひっこんでろ。
OSですら500万STEPだぞ。
業務系で10万STEP規模なら、相当なもん作れる

68 :
>>59
お前の会社は、新人に仕事投げっぱなしなのかな?

69 :
>>67
どうせ1000ステップ20ファンクションくらいのプログラム作成に1ヶ月くらいかけている素人でしょ。
10万ステップ、医療系ならレセプトシステムが作れるな

70 :
>>59
ちゃんとテストして動けばだれがつくっても同じだろ

71 :
>>65
>ひとつのファイルが10万ステップだお
1行に平均40バイト書かれてると仮定すれば、ファイルサイズは4メガバイト足らずか。
そんなソースコードが存在してる時点で会社のレベルが知れるね。
新人をいれるとかいれないとか以前の問題だと思うぞ。

72 :
保守できないじゃん。

73 :
業務系には蛙がたくさんいるようだな

74 :
アセンブラが出来ない奴らがスレ違いの話を延々とw

75 :
>>74
もうその話は結論でたからいいじゃん

76 :
結論出てんのなら、このスレ終了でいいじゃん。
なにスレ違いな話を延々としてんの。

77 :
>>76
>>1 読めよ。
>c言語だけ、理解していれば、プログラマーとして、大丈夫なのでしょうか?
この問いに何と答えるのか

78 :
>>1への答えとしては
「まずその前に、日本語をもっと勉強しましょう」。

79 :
Cを理解してるっていってもねえ。
理解してると思ってるのは自分だけって奴もいっぱいいるしな。
static関数のプロトタイプ宣言をヘッダに書くみたいな狂ったことして
「Cわかります」って威張られても笑っちゃうだけだよ。
関数のポインタが嫌でifをずらずら並べたり、プロトタイプ宣言がわからなくて
ボトムアップ順で関数記述したり、ローカルでしか使わない関数なのにstatic
つけなかったり、分割コンパイルがよくわからないから1個のソースに何でもかんでも
入れたり・・・「なんちゃってCプログラマ」は無数にいるよ。

80 :
>>78
は?>>1の日本語のどこに問題あるんだ?

81 :
>>80
日本語ネイティブは、あんなに読点を打たない。

82 :
ま、アセンブラの次にcは最後まで生き残る言語だからな。
コンピュータという機械がある限りアセンブラは存在し、
アセンブラが存在する限りcは存在する。

83 :
>>82
それはフォンノイマン型コンピュータの話だろう。
いずれちょびっツに出てくるようなパソコンが主流となる。
そうなれば機械語は終わりだ。

84 :
>>83
生きてるうちにちょびっつが完成したらいいなー
無理だろうなorz

85 :
>>83
intelがあの調子じゃ今世紀一杯(あと91年)は無理だろw

86 :
アセンブラぐらいマニュアル見ながら読めるのが普通だろ。ユーザーレポートのレジスタ値見ても障害解析できねーじゃないか。
何も上級シスアド受かれとか言ってるわけじゃないし、基本だけ知ってれば何とでもなる。2日で覚えれるさ。

87 :
C言語「覚えた」の基準は、構造化やモジュール結合度の概念が身についてないと何の意味もないよね。

88 :
>>85
つまりドラえもんの時代まで待てということか

89 :
簡単なアセンブラぐらいできないんだったら、
プログラマやめたほうがいいだろ。
アセンブラでアプリ1本作るというのなら、大変だけど。

90 :
>>67
 >> OSですら500万STEPだぞ。
君ねー、OS書いたことないの、バレバレだよーん。
その君の言ってるOSって、まあ、基本的なドライバは
含めるとしても、ExcelやWordは入ってないよな?(笑)

91 :
つーか、マイコンやれば簡単な電子回路も学べるし
アセンブラも学べるしドライバが何やってるかもよくわかるし
PCだけやってても技術者にはなれない

92 :
>>65
糞ソースwwwwwwwwwwwwww

93 :
つーか、自分でCPU作ってCコンパイラを作らなければいいんだよ

94 :
>>54
> 引数をスタックでわたすかレジスターで渡すかの違いがわかるのは大きい
> わけねーだろ!
組み込みだと結構気にしますが。
関数の第一引数はint型であれば、レジスタ渡しを優先的に選択するマイコンとか。
知らないと損をすることがあるので違うマイコンをはじめて使う時は
このあたりのことから勉強してます。

95 :
>>94
それはマイコンがどうとか言うより、そのマイコンのCコンパイラの癖じゃないのか。

96 :
>>95
> >>94
> それはマイコンがどうとか言うより、そのマイコンのCコンパイラの癖じゃないのか。
そうですね正確にはそういうことです

97 :
-O -fomit-frame-pointer -fforce-register
ってやれば出来るだけスタック渡ししてくれるでそ

98 :
まちがえた 出来るだけレジスタ渡し、ね

99 :
組込みマイコンでもGCC使えないのは、もうモチベーション出ないな。

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 削除依頼
・ 次のスレ
給料比較 公務員>SE>プログラマー
IDE(統合開発環境) vs emacs(テキストエディタ)
ちらしの裏
つまり若者は死んだら良いんだろ?