2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

8086 vs. Z80 vs. 6809 vs. 6502 その11

666 :ナイコンさん:2016/07/09(土) 02:49:04.52 .net
空気読まずにふと思い立った事を聞いてみる

コード効率が一番良いのはどれだとおもう?

縛りは64KB内でFCや8bit機レベルのゲームを作る時
絵や音まわりのデータは考慮せず、処理系(マップデータ・メッセージデータなどは含む)だけでどこまで詰め込めるか
データ類の圧縮もいいけど、あまりにも論外な展開時間がかかるのは無しの方向で
それぞれ5MHz/4MHz/2MHz/1.79MHzのノーウェイトを前提に

いや、曖昧すぎてどうしようもないって事はわかってるんだけど、なんとなく、ね
気になったんだ

ちなみに俺はZ80しか使った事ないけど、6502かなって思ってたりもする

667 :ナイコンさん:2016/07/09(土) 03:41:07.03 .net
6502はゼロページいじってる分にはメモリ効率良いけど、16ビット
リニアアドレスとか扱い始めると途端にコードサイズがでかくなる。

結論: 条件に拠る

668 :ナイコンさん:2016/07/09(土) 05:46:23.86 .net
結論 6502 はゲーム機用。PCに採用したアップルは馬鹿。

669 :ナイコンさん:2016/07/09(土) 05:58:46.10 .net
FCに64KBの縛りがないからなぁ。ROMカセットってバンク切り替えだろ。1MBのカセットもあったらしいし。
マップやメッセージのバイト数なんて簡単に計算できるし、コードが締める割合なんて微々たるものだろ。

670 :ナイコンさん:2016/07/09(土) 06:21:02.56 .net
RPGかADVかシューティングかパズルかオセロや将棋、チェス、碁か。
そうやって考えていくと幅広いからなんとも・・・

個人的には碁は無理だろうと思う。

671 :ナイコンさん:2016/07/09(土) 07:26:34.53 .net
>>669
今世紀最高にワラタ

672 :ナイコンさん:2016/07/09(土) 09:49:10.99 .net
>>666
コード効率は6809が一番良いと思う。
バンクメモリであっても、1バンク内により多くのコードを入れられるメリットは大きい、
バンクまたがりのコール、ジャンプは手間がかかる上に、1バンク32KB程度の空間は結構窮屈。

673 :ナイコンさん:2016/07/09(土) 10:02:57.10 .net
窮屈と思うならFCではなくSFCで開発すればいい。

674 :ナイコンさん:2016/07/09(土) 10:46:56.76 .net
どうせならMDの方がいいんじゃね?

675 :ナイコンさん:2016/07/09(土) 11:48:58.23 .net
>>667,668
う〜ん、そうなのか

>>669,672
さすがにバンク切り替えとかはなしで
64KBオンメモリでどこまで詰め込めるか

データを入れたのは圧縮率と展開速度のバランスを取ったコードを書けることもコード効率にいれたかったから

6809かー
機能が多そう(妄想)だからあんまりよさそうには見えなかったんだよねぇ

>>670
おっしゃるとおりで

……もう常識的な展開速度でより圧縮率の高い圧縮方法を採用できるCPUでいいきがしてきた
対象データはRPGの絵と音以外かなぁ

676 :ナイコンさん:2016/07/09(土) 12:06:26.49 .net
6502のゲーム機、PCで64KBメモリなんてまず積んでないけど。

677 :ナイコンさん:2016/07/09(土) 13:47:24.84 .net
テープ全盛時代だから64KB積んでもロードに30分以上かかるぞw

678 :ナイコンさん:2016/07/09(土) 14:48:07.53 .net
>>676
コモドール64とかは?

679 :ナイコンさん:2016/07/09(土) 21:01:13.48 .net
>676
IIe以降のアップルとかは?

680 :ナイコンさん:2016/07/09(土) 21:09:56.05 .net
>>676
BBC Microの後期製品とかは?

681 :ナイコンさん:2016/07/09(土) 21:12:18.80 .net
>>676
アタリLynxは?

682 :ナイコンさん:2016/07/09(土) 21:34:41.89 .net
どれも6502じゃねーじゃん、無能め。

683 :ナイコンさん:2016/07/09(土) 22:18:20.89 .net
XYレジスタもSレジスタも8bitだからな。元々大容量メモリでの処理を想定していない格安低スペック向けMPU。

684 :ナイコンさん:2016/07/09(土) 22:34:55.17 .net
今でいう激安ライセンスのARMみたいなものか。

685 :ナイコンさん:2016/07/09(土) 23:27:56.43 .net
メモリマップドI/O方式を採用しているから、70年代当時は
メモリだけで64KBの空間すべて使うとは考えて無かったのかもな。

686 :ナイコンさん:2016/07/10(日) 02:26:48.61 .net
>>682

687 :ナイコンさん:2016/07/10(日) 03:44:47.95 .net
youtube見てると6502はスプライトとかハード支援ないと恐ろしいほどショボイゲームばかりだな。
ゲーム機としては手頃だけどPCとしてはなんか残念な構成だな。日本の8bitPCでは採用されなかった理由はその辺りかな。

688 :ナイコンさん:2016/07/10(日) 03:53:12.15 .net
インデクスレジスタが2本ないCPUはゴミ
シューティングゲーム作ると6502の優秀さとZ80のゴミさがよくわかる

689 :ナイコンさん:2016/07/10(日) 04:19:09.95 .net
Z80にインデックスレジスタにつかえるのは2本以上あるだろwww
ある無いだけでいうならゴミでは無いぞwww

690 :名無しさん@そうだ選挙に行こう! Go to vote!:2016/07/10(日) 09:03:08.77 .net
Z80採用のTandy TRS-80 は米国本国のユーザからでさえ、trash 80 と呼ばれていたけどな。

ゴミ。

691 :名無しさん@そうだ選挙に行こう! Go to vote!:2016/07/10(日) 09:24:39.51 .net
CP/M使うために、Z80ボードなんてもの指してたゴミPCのくせに。

692 :名無しさん@そうだ選挙に行こう! Go to vote!:2016/07/10(日) 09:29:47.99 .net
TRS-80がゴミ扱いされる理由が「インデックスレジスタの本数」なのか、へぇ〜(嘲笑

おれはてっきり全体的にお粗末過ぎるハードやOSのせいだと思ってたぜ。

693 :名無しさん@そうだ選挙に行こう! Go to vote!:2016/07/10(日) 11:28:57.62 .net
ただのダジャレだろw

694 :名無しさん@そうだ選挙に行こう! Go to vote!:2016/07/10(日) 12:03:06.88 .net
同じインデックスレジスタでも
Z80だと
LD IX,TABLE
LD A,(IX+1)

6502だと
LDX #1
LDA TABLE,X

である意味正反対の別物なんだよな。

6809だと16ビットレジスタ+5,8,16ビットオフセットなので
LDX #TABLE
LDA 1,X

LDX #1
LDA TABLE,X
のどっちも行けるけど、普通は
LEAX TABLE,PCR
LDA 1,X
と書くかな。

695 :名無しさん@そうだ選挙に行こう! Go to vote!:2016/07/10(日) 13:47:37.89 .net
ゴミ-80は駄洒落だけど、モデルIのデキが酷かったってのもあるだろ。

696 :名無しさん@そうだ選挙に行こう! Go to vote!:2016/07/10(日) 13:48:35.68 .net
可哀相なキチガイには、駄洒落はまったく理解できないんだよwww

697 :名無しさん@そうだ選挙に行こう! Go to vote!:2016/07/10(日) 17:43:28.20 .net
シミュレーション系は6502よりZ80のほうが向いてんじゃね?

698 :名無しさん@そうだ選挙に行こう! Go to vote!:2016/07/10(日) 17:57:38.95 .net
6809人気ねーな。

699 :名無しさん@そうだ選挙に行こう! Go to vote!:2016/07/10(日) 18:36:07.29 .net
>>698
86 もそうだけど工夫しがいがないからな

700 :ナイコンさん:2016/07/10(日) 21:34:08.14 .net
工夫し甲斐がないというか、6809だしたらそれで他のCPUの出番が無いからだろ。

701 :ナイコンさん:2016/07/11(月) 00:41:08.23 .net
>>683
6800の子孫HCS08も6809の子孫STM8もインデックスレジスタは8bitだから8bitが正解
16bitレジスタ持っていてもメモリにアドレス入れる6502より圧倒的に遅い6800はいらない子

702 :ナイコンさん:2016/07/11(月) 02:16:56.11 .net
> 6800の子孫HCS08も6809の子孫STM8もインデックスレジスタは8bitだから8bitが正解

ニワカw

703 :ナイコンさん:2016/07/11(月) 03:26:53.08 .net
http://www.nxp.com/files/microcontrollers/doc/ref_manual/HCS08RMV1.pdf
> 6.2.2 Index Register (H:X)
> This 16-bit index register is actually two separate 8-bit registers
> (H and X). The indexed addressing modes use H:X as a 16-bit base
> reference pointer and variations of indexed addressing allow an
> instruction-supplied 16-bit offset, 8-bit offset, or no offset.
> Other variations of indexed addressing automatically increment
> the 16-bit index register after the index is used to access a
> memory operand.

https://en.wikipedia.org/wiki/Freescale_68HC08
> HC08's are fully code-compatible with their predecessors,
> the Motorola 68HC05. Like all Motorola processors that share
> lineage from the 6800, they use the von Neumann architecture
> as well as memory-mapped I/O. This family has five CPU registers
> that are not part of the memory. One 8-bit accumulator A,
> a 16-bit index register H:X, a 16-bit stack pointer SP,
> a 16-bit program counter PC, and an 8-bit condition code register
> CCR. Some instructions refer to the different bytes in the
> H:X index register independently.

704 :ナイコンさん:2016/07/11(月) 03:32:26.37 .net
http://www.st.com/content/ccc/resource/technical/document/programming_manual/43/24/13/9a/89/df/45/ed/CD00161709.pdf/files/CD00161709.pdf/jcr:content/translations/en.CD00161709.pdf
> Index registers (X and Y)
> These 16-bit registers are used to create effective addresses
> or as temporary storage area for data manipulations.
> In most of the cases, the cross assembler generates a PRECODE
> instruction (PRE) to indicate that the following instruction
> refers to the Y register. Both X and Y are automatically
> saved on interrupt routine branch.

https://en.wikipedia.org/wiki/STM8
> Architecture
> The STM8 has some similarities to the earlier ST7, but is
> better suited as a target for C due to its stack pointer-relative
> addressing mode. There is an 8-bit accumulator A and
> 16-bit registers X and Y, which are mostly used as index registers.

705 :ナイコンさん:2016/07/11(月) 07:02:52.53 .net
>>694
> LD IX,TABLE
> LD A,(IX+1)

> LDX #TABLE
> LDA 1,X

インデックスと言うよりベースレジスタとかポインターだな

706 :ナイコンさん:2016/07/11(月) 10:43:00.55 .net
IX/IYはあんま使わなかったな
たいがい裏レジスタでどうにかなったし

707 :ナイコンさん:2016/07/11(月) 11:21:14.75 .net
とりあいず裏って言っとけばカッコいいと思ってる小学生

708 :ナイコンさん:2016/07/11(月) 12:05:27.11 .net
レジスタ足りなくなってどうしてもって時でもなければIX/IY使わないっしょ。

709 :ナイコンさん:2016/07/11(月) 13:45:12.99 .net
> レジスタ足りなくなってどうしてもって時でもなければIX/IY使わないっしょ。

「データ構造」という概念を理解してない奴が言いそう↑

710 :ナイコンさん:2016/07/11(月) 14:40:47.81 .net
IX/IYは使いこなすのが難しいよね、
大抵は使わないほうが速い、さらには小さいコードになったりするから…

711 :ナイコンさん:2016/07/11(月) 16:58:19.65 .net
LD IX, DATATOP ; 4byte 14clk
LD A, (IX + DATA1) ; 3byte 19clk

LD A,(DATATOP + DATA1) ;3byte 13clk

うーむ……

712 :ナイコンさん:2016/07/11(月) 17:11:08.25 .net
IX/IY使うのはバカ。
根拠なく言われてないよね。

713 :ナイコンさん:2016/07/11(月) 17:52:51.83 .net
LD IX, DATATOP
LD DE, DATASIZE
LD B, 100
LOOP: PUSH BC
LD A, (IX + DATA1)
LD B, (IX + DATA2)
LD C, (IX + DATA3)
CALL HOGERA
ADD IX, DE
POP BC
DJNZ LOOP

LD HL, DATATOP
LD B, 100
LOOP: PUSH BC
LD DE, DATA1
ADD HL, DE
LD A, (HL)
LD DE, DATA2 - DATA1
ADD HL, DE
LD B, (HL)
LD DE, DATA3 - DATA2
ADD HL, DE
LD C, (HL)
CALL HOGERA
LD DE, DATASIZE - DATA3
ADD HL, DE
POP BC
DJNZ LOOP

714 :ナイコンさん:2016/07/11(月) 18:22:56.33 .net
トップアドレスがころころ変わるor複数点在する&データサイズすら可変&でもデータ位置が飛び飛び&それでもデータの相対位置は固定
設計悪すぎじゃね?

715 :ナイコンさん:2016/07/11(月) 18:44:17.08 .net
挙げられた例がプログラム全体とも限らないのに変な決めつけをしてでもなんか言いたいというのはわかったw

716 :ナイコンさん:2016/07/11(月) 19:06:12.45 .net
IX馬鹿にゃ分からんのかもな
お前のことはHと読んでやろう
○の中に9で、読み方は

717 :ナイコンさん:2016/07/11(月) 19:16:24.76 .net
8ビットに限らんが、アッセンブラ前提なら変な構造化したデータなんぞメモリにおかないしね。
単純に複数のテーブルに展開しておく。
そのほうがロジック見通し良くなるし、速度も速くなる。

718 :ナイコンさん:2016/07/11(月) 19:21:09.37 .net
> 8ビットに限らんが、アッセンブラ前提なら変な構造化したデータなんぞメモリにおかないしね。

アセンブラで書くことが目的になってる素人の発想だね。

719 :ナイコンさん:2016/07/11(月) 19:27:51.64 .net
> そのほうがロジック見通し良くなるし、速度も速くなる。

プログラムの部分部分による処理時間の評価ができない馬鹿は近視眼的な
最適化に拘る傾向があるな。

720 :ナイコンさん:2016/07/11(月) 19:28:25.98 .net
自称玄人乙。
無駄に複雑で遅くてバグリーなコード書いて俺すげーしててね。

721 :ナイコンさん:2016/07/11(月) 19:29:37.42 .net
>>717
じゃあそういう前提で>>713のプログラム書き直してみ?

722 :ナイコンさん:2016/07/11(月) 19:30:27.62 .net
そもそもIX/IYに拘る辺りに既に馬鹿丸出しでございますからw

723 :ナイコンさん:2016/07/11(月) 19:30:56.26 .net
実務経験ないんだろうね。

724 :ナイコンさん:2016/07/11(月) 19:33:24.71 .net
>>720
有益に単純で速くて信頼性の高いコードの例はやく書いて見せてちょw

725 :ナイコンさん:2016/07/11(月) 19:36:21.72 .net
具体的な例挙げてる人に喚いてるだけの人が絡んでる格好w

726 :ナイコンさん:2016/07/11(月) 19:38:09.87 .net
>喚いてるだけの人が絡んでる格好

プログラム書ける人に対してなんか変なコンプレクスでもあるんだろう。

727 :ナイコンさん:2016/07/11(月) 19:42:38.65 .net
まぁCでも使ってればいいんじゃない?
効率も速度も度外視で目的の動作を実現出来ればいいだけの実務さんはw

728 :ナイコンさん:2016/07/11(月) 19:45:54.08 .net
IXを使ったほうがソースが読みやすくなる
しかし使うか使わないかで明らかにスピードに差がある

最初は「たかが数クロックの違いだろー」と思ってたが
わずかなスピード差が気になる「ゲーム」って特殊なシステムだと
使った場合、使ってない場合、両方でプログラム組んで比べると
「IXを使っている方が明らかに遅い」って体感できるくらいなんだよな

729 :ナイコンさん:2016/07/11(月) 19:47:29.89 .net
処理の大半はCで、負荷の大きい部分はアセンブラでというのは
開発効率と実行効率の両方のバランスを考えれば普通に出てくる
発想だが、実務経験のない奴はその辺のトレードオフとか理解の
外なのかも。

730 :ナイコンさん:2016/07/11(月) 19:48:05.03 .net
昔の知識のまま固まってる爺だろ
https://msdn.microsoft.com/ja-jp/library/tydf8khh.aspx

731 :ナイコンさん:2016/07/11(月) 19:49:40.01 .net
>>728
>>719で既に言われてるよ。

732 :ナイコンさん:2016/07/11(月) 19:52:27.51 .net
実務経験のない奴は「要求仕様」という概念がないから
「速ければ速いほど良い」みたいな馬鹿な発想をするのだろう。

733 :ナイコンさん:2016/07/11(月) 19:54:41.06 .net
IX/IYは使わない派による>>713への具体的な反論が見たいw

つかそれがない限りは口だけ番長だわ。

734 :ナイコンさん:2016/07/11(月) 20:02:39.22 .net
z80アセンブラ書いてた頃はまだ中一でした。実務経験ある方はもう70過ぎてんじゃないでしょうか。

735 :ナイコンさん:2016/07/11(月) 20:31:54.49 .net
>>711
これはいくらなんでも例が悪すぎw インデックスドアドレッシングはローカル変数のアクセスとか、
動的に確保したデータ領域へのアクセスとか、大抵そういうときに使うもんじゃないかと。

何にせよ、Z80でインデックスドアドレッシングは辛いわな
LD r,(IX+d) 4CLKx2+3CLK+5CLK+3CLK=19CLK
2バイトコードだから4CLKも食うM1サイクルを2回、ディスプレースメントを読み込むのに3CLK、
次いでアドレス計算(16bit加算)に5CLKw、やっとこさ最後にデータ読み込み3CLK。
命令のフェッチですでに相当酷いことになってる上に、4bitALUがトドメを刺すというね。

736 :ナイコンさん:2016/07/11(月) 20:57:38.30 .net
>>734
まだ現役で使ってて新規開発もある業界もあるみたいだし年齢なんてわからんだろ

737 :ナイコンさん:2016/07/11(月) 21:01:25.08 .net
ケチつけるだけで、自身が理想とする模範解答たるべきソースコードは絶対に出さないよなwww

738 :ナイコンさん:2016/07/11(月) 21:24:23.69 .net
Z80の新規案件ってパチ屋が圧倒的(偏見)だろwww
現役を御勇退あそばされて天下りしました、な元公務員のわからんちんを相手にするオシゴトwww

下っ端のプログラマがあいてにすることはまず無いけどさwww

739 :ナイコンさん:2016/07/11(月) 21:24:45.60 .net
>>737
教条的に「IX/IYは遅い」と妄信してるだけだからだろwww

740 :ナイコンさん:2016/07/11(月) 21:25:20.60 .net
>>737
毎度のことだろ。

741 :ナイコンさん:2016/07/11(月) 21:25:41.32 .net
ぶっちゃけZ80にIX/IYは要らない。

742 :ナイコンさん:2016/07/11(月) 21:26:28.68 .net
>>713
無駄すぎて何をしたいのかわからない

743 :ナイコンさん:2016/07/11(月) 21:28:09.70 .net
>>738
> 下っ端のプログラマがあいてにすることはまず無いけどさwww

ツイッターで検索すると新人(=下っ端)にZ80てのは現代でもあるみたいだぞ。
https://twitter.com/search?q=z80%20%E6%96%B0%E4%BA%BA&src=typd

もちろんパチ屋も含まれてはいるだろうがそれだけではないようだ。

744 :ナイコンさん:2016/07/11(月) 21:28:58.65 .net
>>742
はいはい馬鹿はひっこんでてね

745 :ナイコンさん:2016/07/11(月) 21:30:05.48 .net
よっぽど馬鹿がコード書けば別だけど、普通はIX/IYは使わんよなぁ。
クロック浪費がすくなきゃ使ってもいいけど、使っただけで足引っ張るし。

746 :ナイコンさん:2016/07/11(月) 21:31:29.49 .net
「何をしたいのかわからない」くせに「無駄すぎ」と言える不思議w

747 :ナイコンさん:2016/07/11(月) 21:32:42.52 .net
> よっぽど馬鹿がコード書けば別だけど、普通はIX/IYは使わんよなぁ。
> クロック浪費がすくなきゃ使ってもいいけど、使っただけで足引っ張るし。

プログラム組んだことないことは分かったw

748 :ナイコンさん:2016/07/11(月) 21:49:10.98 .net
>>713
まずCALL HOGERAが無駄

749 :ナイコンさん:2016/07/11(月) 21:52:59.40 .net
> まずCALL HOGERAが無駄

展開しろとでも言うんだろうか?
HOGERA の内容もわからんところで「無駄」と言い切れる辺りそうとうの馬鹿と見た。

750 :ナイコンさん:2016/07/11(月) 21:55:21.93 .net
> まずCALL HOGERAが無駄

これだけでコイツに実務経験がないのは想像がつく。
他所が作成したモジュールでサブルーチン呼び出しせざるを得ない場合なんて当たり前にあるのにね。

751 :ナイコンさん:2016/07/11(月) 21:57:40.20 .net
実際のコードだと使うデータが順番に並んでいて直前に読み出したアドレスに書き戻すことが多いから
(HL)でアクセスしてINCやEXXでちまちまやる方が速いんだよな

752 :ナイコンさん:2016/07/11(月) 21:57:43.93 .net
>>748
> まずCALL HOGERAが無駄

えっ!どうして?!

753 :ナイコンさん:2016/07/11(月) 21:59:15.92 .net
>実際のコードだと使うデータが順番に並んでいて直前に読み出したアドレスに書き戻すことが多いから

簡単なプログラムしか組んだことない奴のセリフだなあ。

754 :ナイコンさん:2016/07/11(月) 22:00:58.54 .net
HOGERA:
RET

755 :ナイコンさん:2016/07/11(月) 22:23:01.43 .net
DATA1,DATA2,DATA3を連続して配置すれば
LD HL, DATATOP

LD DE, DATA1
ADD HL, DE
LD DE, DATASIZE-2
LD B,100
LOOP: PUSH BC
LD A,(HL)
INC HL
LD B,(HL)
INC HL
LD C,(HL)
CALL HOGERA
ADD HL,DE
POP BC
DJNZ LOOP
で行けるんじゃね?

756 :ナイコンさん:2016/07/11(月) 22:28:00.04 .net
>>745
それなりに便利だぞ
HLが空くしコードも読み易いし遅いといっても大してかわらん

757 :ナイコンさん:2016/07/11(月) 22:34:06.96 .net
>>755
仕様変更が入ったんで対応宜しく。HOGERA が Z 返したら PIYOPIYO 呼べだって。

LD IX, DATATOP
LD DE, DATASIZE
LD B, 100
LOOP: PUSH BC
LD A, (IX + DATA1)
LD B, (IX + DATA2)
LD C, (IX + DATA3)
CALL HOGERA
JR NZ, SKIP
LD A, (IX + DATA1)
LD C, (IX + WDATA4+0)
LD B, (IX + WDATA4+1)
CALL PIYOPIYO
SKIP:ADD IX, DE
POP BC
DJNZ LOOP

758 :ナイコンさん:2016/07/11(月) 22:36:12.75 .net
>>755
> DATA1,DATA2,DATA3を連続して配置すれば

ROMに配置されてるから変更できないんだ。アクセスの際にはオフセットで宜しく。

759 :ナイコンさん:2016/07/11(月) 22:40:34.13 .net
> DATA1,DATA2,DATA3を連続して配置すれば

こういう保守性悪いプログラムは却下。お前が一生担当するつもりか?

760 :ナイコンさん:2016/07/11(月) 22:48:47.29 .net
DATA1,DATA2,DATA3,WDATA4を連続して配置
HOGERAはH,Lの他にA,D,Eレジも保存
PIYOPIYOへの引数はA,D,Eレジ渡しで

LD DE, DATA1
ADD HL, DE
LD B,100
LOOP: PUSH BC
LD A,(HL)
INC HL
LD B,(HL)
INC HL
LD C,(HL)
INC HL
LD E,(HL)
INC HL
LD D,(HL)
CALL HOGERA
CALL Z,PIYOPIYO
LD DE, DATASIZE-4
ADD HL,DE
POP BC
DJNZ LOOP
でいいんじゃね?

761 :ナイコンさん:2016/07/11(月) 22:51:14.38 .net
>>758
はじめから連続配置して焼けマヌケ

762 :ナイコンさん:2016/07/11(月) 22:56:28.90 .net
> DATA1,DATA2,DATA3を連続して配置すれば

> DATA1,DATA2,DATA3,WDATA4を連続して配置
> HOGERAはH,Lの他にA,D,Eレジも保存
> PIYOPIYOへの引数はA,D,Eレジ渡しで

なんか都合よく条件を書き換えて最適化とか抜かしてるのは分かったw

763 :ナイコンさん:2016/07/11(月) 22:58:39.05 .net
都合悪く書き換える最適化なんて無いからなあ

764 :ナイコンさん:2016/07/11(月) 22:58:43.40 .net
>>760
HOGERAがZ返さなかった場合、PIYOPIYOの引数予め読んでおくのって無駄じゃね?

765 :ナイコンさん:2016/07/11(月) 23:01:08.05 .net
プログラムの構造がデータ構造にべったり沿ってるのってやっぱ保守性が悪いという結論にしかならんな

766 :ナイコンさん:2016/07/11(月) 23:09:15.07 .net
> HOGERAはH,Lの他にA,D,Eレジも保存
> PIYOPIYOへの引数はA,D,Eレジ渡しで

↑を実現するために↓みたいなの書いて、HOGERAとPIYOPIYOの代わりに呼び出すとかだったらなんかもう本末転倒な感じね。

_HOGERA:
PUSH AF
PUSH DE
CALL HOGERA
POP DE
POP AF
RET

_PIYOPIYO:
LD C, E
LD B, D
JP PIYOPIYO

767 :ナイコンさん:2016/07/11(月) 23:11:20.98 .net
むしろデータ構造自体に他からアクセスできるほうが保守性は悪いよ、
用意されたコードを介したアクセスで隠蔽できた方が良い、オブジェクト指向のアクセサみたいな。

768 :ナイコンさん:2016/07/11(月) 23:14:01.91 .net
>>766
POP AF
でZフラグの情報が消えちゃうんでバグりますね。

769 :ナイコンさん:2016/07/11(月) 23:16:07.79 .net
>>767
具体的なコードPLZ

770 :ナイコンさん:2016/07/11(月) 23:17:34.95 .net
>>769
メンドクサイggrks

771 :ナイコンさん:2016/07/11(月) 23:22:57.83 .net
>>768
ご指摘感謝。

_HOGERA:
PUSH AF
PUSH DE
CALL HOGERA
POP DE
INC SP
LD A, (SP)
INC SP
RET

772 :ナイコンさん:2016/07/11(月) 23:23:49.59 .net
> メンドクサイggrks

皆がコード書いてるのに何このカス

773 :ナイコンさん:2016/07/11(月) 23:25:14.45 .net
>>772
というか、
「オブジェクト指向のアクセサみたいな」
をこのスレで解説するのはあきらかにスレ違いだろ?

774 :ナイコンさん:2016/07/11(月) 23:26:26.58 .net
ありゃ、

LD A, (SP)

Z80 でこんな命令はなかったか。

775 :ナイコンさん:2016/07/11(月) 23:27:00.58 .net
>>773
なんで???

776 :ナイコンさん:2016/07/11(月) 23:30:03.46 .net
>>771
LD A, (SP)
なんて命令は無いんじゃね?w

777 :ナイコンさん:2016/07/11(月) 23:30:30.91 .net
再訂正:

_HOGERA:
PUSH DE
LD D, A
PUSH DE
CALL HOGERA
POP DE
LD A, D
POP DE
RET

778 :ナイコンさん:2016/07/11(月) 23:33:03.99 .net
> 「オブジェクト指向のアクセサみたいな」
> をこのスレで解説するのはあきらかにスレ違いだろ?

それお前どうコーディングすんの?って話を「オブジェクト指向のアクセサの解説」と歪曲してスレ違いということにしたいのかな?

779 :ナイコンさん:2016/07/11(月) 23:39:09.27 .net
> むしろデータ構造自体に他からアクセスできるほうが保守性は悪いよ、
> 用意されたコードを介したアクセスで隠蔽できた方が良い、オブジェクト指向のアクセサみたいな。

アセンブラでC++のprivateメンバみたいのを実現できるのか。どういう書き方するのか興味深いわ。

780 :ナイコンさん:2016/07/11(月) 23:45:10.35 .net
アポロ11号が月面着陸時に使用した誘導プログラムのソースコード公開 やっぱり月に行ったってマジなの
http://hayabusa8.2ch.net/test/read.cgi/news/1468240514/

1 :[Φ|(|´|Д|`|)|🌀] BBxed!! ジャーマンスープレックス(dion軍)@無断転載は禁止2016/07/11(月) 21:35:14.84 ID:iZ/WXXkP0● BE:614796825-PLT(17667) ポイント特典

http://japanese.engadget.com/2016/07/11/github-11-13/#continued


アポロ11号が月面着陸時に使用した誘導プログラムのソースコードが、GitHubで公開されました。誰でも人類初の偉業を成し遂げるのに
貢献したソフトウェアをのぞき見ることができます。

NASAのインターンだったクリス・ギャリー氏が公開したこのアポロ誘導コンピューター(Apllo Guidance Computer : AGC)のソースコードは2009年にGoogleも公開しており、
このときはエミュレーター上で実行できるようにしていました。今回はGitHubでの公開ということもあり、どこで走らせるかは別としてユーザーが自分で編集することも可能です。

海外掲示板サイトRedditのユーザーは、さっそく数千行におよぶソースコードの中にある当時のプログラマーのユーモアを指摘しています。
たとえば月面着陸ルーチンの666行めにある"NUMERO MYSTERIOSO(神秘の数字)"という言葉や、スラスター点火処理の部分に
黒人DJマグニフィセント・モンタギューの「Burn, Baby! Burn!」という名フレーズが発見されるなど、1960年代に思いを馳せつつ2009年のときと同じ話題で盛り上がっているようです。

なお、今回はGitHubでソースコードが公開されたため、だれでも入手し改変することができます。
また、Issuesタブにはアポロ13号で発生した電気回路の問題による酸素タンクの故障と再現方法を報告する輩が現れたり、
「マット・デイモンを助けに行くための拡張パック」が提案されるといったお遊びも展開されています。

781 :ナイコンさん:2016/07/12(火) 00:00:47.16 .net
52 :ジャーマンスープレックス(新疆ウイグル自治区)@無断転載は禁止 2016/07/11(月) 22:59:47.01 ID:JNXalgMA0
https://github.com/chrislgarry/Apollo-11/

これだな

782 :ナイコンさん:2016/07/12(火) 00:08:36.75 .net
>>778
いやもっとも単純なコードだけなら

LD IX,DATATOP
CALL GETDATA1

GETDATA1:
LD A,(IX+DATA1)
RET
とかになるのはほぼ自明なんだけど、こんなものさらしても何の意味もなかろう?

アクセサは構造体の内部構造を外部に対して非公開にすることで、
構造体の内部構造が(物理的にも論理的にも)変化しても外部のプログラムに影響が出ないようにする仕組み。
例えばDATA1が内部の仕様変更でDATA1_1、DATA1_2と二つの値に分割され、
従来のDATA1はDATA1_1+DATA1_2に相当する場合。

GETDATA1:
LD A,(IX+DATA1_1)
ADD A,(IX+DATA1_2)
RET
とすることで、呼び出し側のプログラムに影響を与えずに済むようになる。

783 :ナイコンさん:2016/07/12(火) 00:12:32.06 .net
そもそもこんなサブルーチンは必要なかった

784 :ナイコンさん:2016/07/12(火) 00:18:40.78 .net
>>779
単純にシンボルのスコープの問題じゃね?
外部プログラムがインクルードするヘッダファイルにシンボル(構造体の定義)を入れなきゃ
privateになるし、そこに書いとけば外部からアクセス可能になるだけかと。

785 :ナイコンさん:2016/07/12(火) 00:33:16.71 .net
>>782
LD A,(DATATOP+DATA1) でアクセスできるんだし隠蔽も何もなっとらんだろ

786 :ナイコンさん:2016/07/12(火) 07:04:21.73 .net
>>784
private メンバー
よく知らないならしゃしゃり出てくんなよ

787 :ナイコンさん:2016/07/12(火) 07:14:43.64 .net
昨日パーツ屋行ったんですが確かにまだZ80売ってましたけど、
今でもZ80現役って今でもCではなくアセンブラで書いてるのですか?

788 :ナイコンさん:2016/07/12(火) 07:33:54.43 .net
ファイルスコープで分離すれば確かに擬似的にprivateメンバに似たものは作れる。
作れるが、アセンブラでアクセス制御なんて「プログラマの責任において」実現できるだけ。
OOP的な言語使わない限りは「俺、データ構造しらんよ。呼んでるプロシージャが知ってりゃいいだけだし」って呼ぶ側が言ってる以上のものにはならん。

789 :ナイコンさん:2016/07/12(火) 07:42:18.69 .net
ああそれね修理用だから誰もコードなんか書いてないよ

790 :ナイコンさん:2016/07/12(火) 08:00:47.71 .net
>>787
http://www.careerjet.jp/search/jobs?s=Z80

791 :ナイコンさん:2016/07/12(火) 08:28:13.23 .net
だからCつかってろよ、実務君はw

792 :ナイコンさん:2016/07/12(火) 08:35:23.91 .net
他人に絡むことしかできない奴って哀れだなw

793 :ナイコンさん:2016/07/12(火) 13:12:39.43 .net
>>788
> アセンブラでアクセス制御なんて「プログラマの責任において」実現できるだけ。
の意味がわからないな。
シンボルで参照できるかどうかが全てで、それをスコープ制御できればそれで良いんじゃないの?

内部では
DATA1 equ 0
DATA2 equ 1
DATA3 equ 2

外部では
DATA1 equ 0
DATA2 equ 1

の定義を使えばDATA3は外部からアクセス出来ないprivateメンバになる。
もちろんリテラル値2を使って無理矢理アクセスすることは簡単だが、
それはC++でキャストして無理矢理アクセスしても同じことだろう?

794 :ナイコンさん:2016/07/12(火) 14:46:25.19 .net
OOPの入門書読んできなさい。
シンボルのスコープ制御が理解できてないよ。

795 :ナイコンさん:2016/07/12(火) 16:18:43.14 .net
スコープ自体は非OOPな言語にも普通にあるからOOPとは直接関係無い。
そもそも「シンボルのスコープ制御」って文字通りの意味だし、
それ以上なにを理解しろと?

796 :ナイコンさん:2016/07/12(火) 16:38:56.42 .net
>>794
793でDATA3に対するアクセス制御は十分に出来てると思うんだけど、
どこがダメなんだ?

797 :ナイコンさん:2016/07/13(水) 01:04:18.01 .net
今の知識で過去を語って猛者気取り
にわかの討論ウザイ

798 :ナイコンさん:2016/07/13(水) 01:06:42.88 .net
話についていけないおじいちゃんが癇癪起こしてるの藁えるw

799 :ナイコンさん:2016/07/13(水) 02:47:29.95 .net
そういう突っ込みは不要

800 :ナイコンさん:2016/07/13(水) 03:45:36.28 .net
おじいちゃん余裕ないカンジw

801 :ナイコンさん:2016/07/13(水) 05:03:32.73 .net
Z80採用するようなシステムで動的に領域確保するほどメモリ積んだりするかね?
あと、退避するコスト増やしてまでレジスタ渡しするくらいなら
はじめからパラメータをスタックに積んどけって思うんだが

802 :ナイコンさん:2016/07/13(水) 07:57:15.03 .net
>>801
お前さんにいい言葉を授けよう...

ケ ー ス バ イ ケ ー ス

803 :ナイコンさん:2016/07/13(水) 08:18:38.42 .net
そもそもC使わないしな。

804 :ナイコンさん:2016/07/13(水) 09:35:39.83 .net
Does HI-TECH C support the use of the malloc-style functions?

HI-TECH C compilers for 16- and 32-bit devices support dynamic memory
allocation functions like malloc etc.

8-bit compilers do not support these functions. As these devices have small
amounts of RAM and this memory is banked, it is totally inappropriate to implement
dynamic memory allocation on these devices.

http://www.htsoft.com/support/faqs.php#faq511
----------
だとよ。

805 :ナイコンさん:2016/07/13(水) 11:40:43.76 .net
mallocの実装自体がメモリ圧迫しすぎるんだな。

806 :ナイコンさん:2016/07/13(水) 12:52:28.69 .net
http://www.lsi-j.co.jp/products/other/lsic80.html
> alloc
> calloc
> free
> malloc
> realloc

807 :ナイコンさん:2016/07/13(水) 12:56:57.92 .net
http://www.bdsoft.com/dist/bdsc-guide.pdf
> char *alloc(n)
> Returns a pointer to a free block of memory n bytes in length, or 0
> if n bytes of memory are not available. This is roughly the storage
> allocation function from chapter 8 of Kernighan & Ritchie, simplified
> due to the lack of type-alignment restrictions. See the book for
> details.
> The standard header file STDIO.H must be #included in all files of a
> program that uses alloc and free pair, since external data used by
> alloc and free is declared therein.
> The external variable _allocp, defined in STDIO.H, may be set to
> NULL in order to reset the alloc/free storage allocation mechanism.
> In order to fully re-initialize system storage allocation, though,
> it is also necessary to reset the low-level sequential storage
> allocator;
> this is accomplished by calling the sbrk function with an argument
> of ?1.
> See the sbrk section below.

808 :ナイコンさん:2016/07/13(水) 13:01:02.06 .net
設計上、どうせメモリカツカツだし、速度も遅いからメモリマップ決めるのが普通かな。

809 :ナイコンさん:2016/07/13(水) 13:49:17.22 .net
内蔵RAM数kBの組み込みマイコンでもmalloc()とか使えてたり前なのに何言ってんだかね?

810 :ナイコンさん:2016/07/13(水) 16:51:59.85 .net
さっきから一人でいつの時代の話をしてるんだ。

811 :ナイコンさん:2016/07/13(水) 17:18:50.01 .net
>いつの時代の話をしてるんだ。

bds-cは80年代前の方、「内蔵RAM数kBの組み込みマイコンでもmalloc()」は
現代でも通じる話ですね。

812 :ナイコンさん:2016/07/13(水) 19:20:08.07 .net
>>804
HI-TECH Z80 CP/M C compiler V3.09 で確認したが malloc() 普通に動作するんだが。

#include <stdlib.h>

int main(void)
{
  char* p;
  size_t s = 1000;
  for (;;) {
    p = malloc(s);
    printf("malloc(%u): %s\n", s, p ? "succeeded" : "failed");
    if (p == NULL) {
      break;
    }
    free(p);
    s += 1000;
  }
  return 0;
}

そこに書かれてる 8-bit compilers って PIC 用の話だろ。http://www.htsoft.com/

813 :ナイコンさん:2016/07/13(水) 20:03:09.64 .net
>>804
恥ずかしい奴w

814 :ナイコンさん:2016/07/13(水) 20:13:41.10 .net
C言語使わない、で突っ込まれたら8ビットでmallocは使いません!!か。
よく、デタラメほざくの飽きないな。

815 :ナイコンさん:2016/07/13(水) 20:15:43.45 .net
実務経験ない素人が想像で書いてるんだろう。

816 :ナイコンさん:2016/07/13(水) 20:38:05.14 .net
>>804
アレ?
Z80版は*alloc使えるじゃん?
つまりPIC版が(ry

817 :ナイコンさん:2016/07/13(水) 21:11:45.39 .net
PICのメモリって例えばこんなんだからな、
http://www.microchip.com/stellent/groups/picmicro_sg/documents/devicedoc/jp566271.pdf ※22〜23頁参照


連続するRAMが最大で80バイトしかないからmalloc()の使用はだいぶ無理がある。

818 :ナイコンさん:2016/07/13(水) 21:14:28.10 .net
>>804
> As these devices have small amounts of RAM and this memory is banked,

↑読んで「Z80採用するようなシステム」の話としておかしいと思わなかったのか?

819 :ナイコンさん:2016/07/14(木) 00:38:29.04 .net
> Does HI-TECH C support the use of the malloc-style functions?
>
> HI-TECH C compilers for 16- and 32-bit devices support dynamic memory
> allocation functions like malloc etc.
>
> 8-bit compilers do not support these functions. As these devices have small
> amounts of RAM and this memory is banked, it is totally inappropriate to implement
> dynamic memory allocation on these devices.
>
> http://www.htsoft.com/support/faqs.php#faq511
> ----------
> だとよ。

だ・と・よ。w
意味も分からないでコピペしてるバカが「だ・と・よ。」www

820 :ナイコンさん:2016/07/14(木) 01:18:22.23 .net
>>811
現代の話は板違い。

821 :ナイコンさん:2016/07/14(木) 04:59:01.02 .net
過去の話は現代でも通じるのに何言いたいんだかね?

822 :ナイコンさん:2016/07/14(木) 05:02:20.99 .net
>>821
頭の悪い奴だな。板違いと断言してるだろ。

823 :ナイコンさん:2016/07/14(木) 05:04:02.01 .net
ググって頓珍漢なにわか知識を披露してドヤ顔する実務くん
……どこのスレにも出没する典型的なky

824 :ナイコンさん:2016/07/14(木) 05:07:53.30 .net
自慢気にARMやPIC、AVRを持ち出してきても困るんですよ。板違いです。
電気・電子板でやってください。向こうで論破されたからってこっちなら勝てると思ったら大間違いです。住人は被ってますから。

825 :ナイコンさん:2016/07/14(木) 05:16:24.32 .net
>>824
バカw

826 :ナイコンさん:2016/07/14(木) 08:00:22.10 .net
なんか見えない敵と戦ってる人いるのな
盲撃ちしてんのに特定の相手を攻撃してる気になってるっつうか

827 :ナイコンさん:2016/07/14(木) 09:24:26.73 .net
>>817
Z80は初期のPIC と同レベルって言いたいんだろ。

828 :ナイコンさん:2016/07/14(木) 11:07:15.31 .net
ほんと馬鹿だよな。Z80でmallocって馬鹿かおまえってかんじ。

829 :ナイコンさん:2016/07/14(木) 12:48:35.57 .net
つまり、こーゆー事
http://m-ochiai.net/cowards-2/

830 :ナイコンさん:2016/07/14(木) 12:59:43.64 .net
malloc 使うかどうかなんてCPU関係ないやろ?
どんなコード書くかやんけ。
正にケースバイケースやで。
仕事もしとらへんでだらだらしとる引き籠もりでもなきゃ、常識やろ。

831 :ナイコンさん:2016/07/14(木) 14:13:16.01 .net
何がケースバイケースや。あほちゃうか。
8bitCPUでmalloc使うなんてそんなアホなケースはほぼ皆無って話やで。
ほんまゆとりって馬鹿やなぁ。常識ってもんがないんか?

832 :ナイコンさん:2016/07/14(木) 15:05:56.05 .net
>>827
もし仮にそう言いたいんだとしたらキチガイの妄想だなあ

833 :ナイコンさん:2016/07/14(木) 15:20:21.63 .net
>>827
「初期のPIC」ってどういうのだか知らんお前が他人の考えを代弁するかなあ?

834 :ナイコンさん:2016/07/14(木) 15:30:43.22 .net
「初期のPIC」ってこういうのだな。
http://www.icpdf.com/icpdf_datasheet_5_datasheet/PIC1650-517_pdf_1419412/
> 32 8-Bit RAM Registers

>>817のはずいぶん最近のやつでバンクを利用してRAMも多い。

835 :ナイコンさん:2016/07/14(木) 17:15:00.73 .net
そうだねー、8ビットでmalloc使わないよねー。
良かったねー。
だからあっちで独りで壁に向かってmallo 使わないんだーって言っててね。

836 :ナイコンさん:2016/07/14(木) 17:25:52.00 .net
>>834
PICってファイルレジスタみたいなのだけかと思ってたら結構進化してんだな

837 :ナイコンさん:2016/07/14(木) 17:42:53.30 .net
麻呂は使わないでおじゃる

838 :ナイコンさん:2016/07/14(木) 18:41:33.71 .net
8bitCPUでmalloc()? ないないw メモリ管理にリソース食ってどうするw

839 :ナイコンさん:2016/07/14(木) 18:49:36.95 .net
printf系使えないとか、可哀相ね。

840 :ナイコンさん:2016/07/14(木) 19:16:52.62 .net
malloc使う「事もある」が理解出来ない奴がマトモなコード書けるとかありえないな。
ヤッパリ脳内妄想な世界でクローズしてんのね。
医者や介護してる家族は大変だな。

841 :ナイコンさん:2016/07/14(木) 19:34:32.15 .net
malloc というかC言語自体がフラット
メモリモデル前提の言語だからなあ
バンクメモリとかには使えないし
設計時にワークエリアサイズ決めとくわ

842 :ナイコンさん:2016/07/14(木) 19:55:11.99 .net
N-BASIC なんか文字列領域のGCまでやってると言うのに...

843 :ナイコンさん:2016/07/14(木) 20:48:54.33 .net
フラットメモリは基礎にして基本だろ。
Cは基本だけは抑えた言語なんだろうさ。

844 :ナイコンさん:2016/07/14(木) 21:04:32.57 .net
>>843
実務経験ないド素人が想像で書いてるんだろう。

845 :ナイコンさん:2016/07/14(木) 21:11:01.62 .net
馬鹿晒した>>804がいまだに暴れてるのかな

846 :ナイコンさん:2016/07/14(木) 21:42:01.49 .net
>>839
printfなんてないからw

847 :ナイコンさん:2016/07/14(木) 22:02:56.55 .net
>>843
mallocはただのライブラリで、C言語とは、直接関係無いしな。

848 :ナイコンさん:2016/07/15(金) 00:23:18.03 .net
>>840
ない。馬鹿はもう黙ってたほうがいい。

849 :ナイコンさん:2016/07/15(金) 01:48:40.62 .net
アセンブラで書くことが当たり前の時代にCでmalloc()って時代錯誤すぎ。

850 :ナイコンさん:2016/07/15(金) 04:31:28.01 .net
>アセンブラで書くことが当たり前の時代に

視野の狭い奴はそれを普通だと思うことに何の疑問も懐かないんだよなあ。

851 :ナイコンさん:2016/07/15(金) 05:18:27.38 .net
>>847
「標準ライブラリ」なんて用語も聞いたことがないくらいの素人かな?
http://www.open-std.org/JTC1/SC22/WG14/www/docs/n1124.pdf

852 :ナイコンさん:2016/07/15(金) 05:54:25.30 .net
>>849
Z80搭載のPC-8001で大騒ぎしていた79年ぐらいだとアセンブリ言語の使用がふつうだったね。
C言語が技術者の間でブームになるのは9801が出たずっと後の話。ライフボートがlatticeとか。

853 :ナイコンさん:2016/07/15(金) 05:55:19.00 .net
>>851
それ、2005年のドラフトじゃない?

854 :ナイコンさん:2016/07/15(金) 05:56:21.83 .net
6809やZ80あたりの汎用CPUなら主流とは行かないが普通にC言語使って開発してるけどなぁ。
C言語もないようなド・マイナーなCPUとか持ち出して「どやぁ!」とかしたいだけだろ。

855 :ナイコンさん:2016/07/15(金) 06:26:08.58 .net
どひゃぁ!

856 :ナイコンさん:2016/07/15(金) 06:28:26.93 .net
>>854
1978年の普通と1985年の普通、2005年の普通とでは随分違う。
6809用のc言語って何? いつ頃の話?

857 :ナイコンさん:2016/07/15(金) 06:37:37.61 .net
>Z80搭載のPC-8001で大騒ぎしていた79年ぐらいだとアセンブリ言語の使用がふつうだったね。

8080で動作するBDS-CやSmall-Cが80年とかそんなんだからなあ、自分の「ふつう」が他人にとってもそうとは思わないほういいよ。

858 :ナイコンさん:2016/07/15(金) 07:03:56.83 .net
>>857
はあ?

859 :ナイコンさん:2016/07/15(金) 07:09:51.20 .net
共立の『プログラミング言語C』の初版が81年でそれより早いか遅いかの頃にアスキーが記事でC言語取り上げたりしてた気がするしなあ、C言語ブームのはしりの頃かな。

860 :ナイコンさん:2016/07/15(金) 07:10:11.89 .net
>>857
BDS-Cってフルバージョンは全世界で25000本売れたくらいだが、
サブセット廉価版で教育用途のお遊び版として売られたアルファCは
日本国内で5万本売れたらしいね。

861 :ナイコンさん:2016/07/15(金) 07:12:33.97 .net
インターフェース誌84年6月号の特集が『Cのすべて』、その次の7月号が『続・Cのすべて』だったのでこの頃は既に処理系の入手も利用も現実的だったことは確か。

862 :ナイコンさん:2016/07/15(金) 08:21:47.19 .net
ただでさえウェイトかかる設計のマシンが多いせいで「Z80はクソ遅い」と思われてたのに
C言語みたいに無駄が多すぎると、遅くても許される用途でしか使い道がないよね

というか、マクロアセンブラで十分過ぎた
どうせグラフィック周りは機種依存激しいし

863 :ナイコンさん:2016/07/15(金) 09:48:26.90 .net
>>854
もうそういう知ったか止めとけって。みっともないよ。当時おまえマイコンなんて触ってなかっただろ。

864 :ナイコンさん:2016/07/15(金) 09:57:39.69 .net
C MAGAZINEが1889年創刊。既に386マシンが売ってた時代。
Z80で普通にC言語使って開発してたとかなぜすぐバレる嘘を言う。1990年代にZ80で流行のC使ってみました程度だろう。

865 :ナイコンさん:2016/07/15(金) 10:09:11.55 .net
>>851
stdlibが使えるとは限らない

866 :ナイコンさん:2016/07/15(金) 10:13:14.31 .net
いや1989年創刊。C89で標準化されたし。8bitCPU向けコンパイラなんてなんちゃってC言語でサブセットみたいなもの。

867 :ナイコンさん:2016/07/15(金) 10:25:10.33 .net
>>865

>>851のマヌケ禿げが燦然と光り輝いている

868 :ナイコンさん:2016/07/15(金) 11:57:50.87 .net
1889年 大日本帝国憲法が公布された年と同じか。

869 :ナイコンさん:2016/07/15(金) 12:21:07.65 .net
CP/MだとTurbo Pascal、PL/M、Fortran80、Basic Compiler、
CP/MじゃなくてもGAME、TL/1、WICS等8ビットでもコンパイラ言語は良く使われてた。
それらに比べるとC言語はまだマイナーだった(記号多目のソースコードにも違和感あったしw)けど、
使い物になる/ならないで言えば大差はないんじゃないかと。

870 :ナイコンさん:2016/07/15(金) 12:49:33.43 .net
80年代でアセンブラとかw
パスカルだろ、パスカル!!

実際、インタプリタ載せられるならそっちのが良かったよな。
変なバグ作り込まれて納期守れないとかあるぐらあなら。

871 :ナイコンさん:2016/07/15(金) 13:03:13.89 .net
>>869
CP/M版のPL/Mなんて無いよ。

872 :ナイコンさん:2016/07/15(金) 13:30:29.04 .net
>>865
「mallocはただのライブラリで、C言語とは、直接関係無いしな。」に
対するレスにお前何トンチンカンなこと言ってんの??

873 :ナイコンさん:2016/07/15(金) 13:33:58.38 .net
>>872
???
日本語で頼む

874 :ナイコンさん:2016/07/15(金) 14:03:07.59 .net
>>871
応用CP/MでCP/M版のPL/MコンパイラとしてPLMXが紹介されてる。

875 :ナイコンさん:2016/07/15(金) 14:21:05.58 .net
>>864
https://twitter.com/DAIVA_ASW/status/633286747166674944
> おそらく日本初のマルチプラットフォーム対応のPCゲームだった
> ディーヴァのシミュレーションパートの開発はC言語で進められました。
> Z80搭載機種ではHI-TECH C、6809搭載機種ではMicrowave C(って
> 商品名だったと思います)で同じソースコードを使って開発されました。

https://ja.wikipedia.org/wiki/DAIVA
> 『DAIVA(ディーヴァ)』は、T&E SOFTが1986年から1987年にかけて
> 発表した一連のコンピュータゲームシリーズ。

876 :ナイコンさん:2016/07/15(金) 14:47:09.05 .net
>>862
遅くても許される用途に使い道があったとして何か問題?

877 :ナイコンさん:2016/07/15(金) 15:03:08.62 .net
> mallocはただのライブラリで、C言語とは、直接関係無いしな。

C言語の規格にライブラリも含まれること知らんのかな?

878 :ナイコンさん:2016/07/15(金) 15:26:27.93 .net
>>864
雑誌の創刊時期がなんかの証明や根拠になるという主張?

https://en.wikipedia.org/wiki/C/C%2B%2B_Users_Journal

879 :ナイコンさん:2016/07/15(金) 15:44:46.95 .net
標準関数は規格で「コレコレの機能を実装しなさい。中身はコンパイラメーカーに一任します」だからねえ。 
従わずに「準拠」とうたえば、文句つけられないし。

8ビットばかりでなく16ビットでも「準拠」のコンパイラはあったもんね。

880 :ナイコンさん:2016/07/15(金) 16:03:51.56 .net
>>875
>シミュレーションパートの開発はC言語で進められました。

C使って四苦八苦って感じだなw 楽できると思ってC使って見ましたが
挫折してハードに依存しない一部のシミュレーション部分しか書けませんでしたみたいな。


> CPUが80286以上の機種では動作が保証されず、オープニング後にフリーズする

> PC-9801版とFC版を除き、惑星戦のアクションゲームパートと星系開発及び艦隊戦のウォーシミュレーションパートを内包しており、

> なお、PC-9801版は惑星戦もシミュレーションパートの一部になり、アクションゲームパートはない。

> FC版はシミュレーションパートが簡略化され、開発は行えず、艦隊戦と惑星戦のみになっている。

881 :ナイコンさん:2016/07/15(金) 16:30:27.32 .net
>>880
機種ごとに違う内容で全機種を遊ぶと壮大なストーリーが明らかになるというのを
売りにしてたゲームなんだけど何言ってんの?

882 :ナイコンさん:2016/07/15(金) 16:35:15.89 .net
その壮大なストーリーを楽しむためには全機種ハード買わないと遊べないのか。

考えた奴は馬鹿じゃないのか。どっかのアニメで押井守のループネタやろうとして、
毎週同じ話を放送した馬鹿アニメの監督と同じ臭いがする。自分に酔ってんだろうな。

883 :ナイコンさん:2016/07/15(金) 16:40:33.71 .net
>>881
知らんがな。同じソースコードを使ってると言い出したのはおれじゃない。 こいつ。 >>875
なのにwikip見たら同じじゃない機種があると書いてある。アホな突っ込みするなら相手はこいつ。 >>875

884 :ナイコンさん:2016/07/15(金) 16:42:13.01 .net
当時の8bit CPUでのC言語の利用について必死にトンチンカンなこと
書き込んでるのがいるけど、恐らくは当時を知らないゲハのニワカが
紛れ込んでるんだろうな。

68k v.s. x86 Round 3
http://hanabi.2ch.net/test/read.cgi/i4004/1458450955/467
> キミは歴史を勉強する気があるのかないのかどっちだ? ないなら出て行け。

雑誌かネットから得た偏ったゲームプログラミングの知識しかなくて
業務としての開発の経験がないから開発効率なんてのも想像もできず
実行効率の話しかできないのだろう。ゲーム作るにしろ社内用に
開発ツールをちゃちゃっとこさえて利用する、なんて用途は当たり前に
あるんだけども、製品としてのゲームしか見たことないからそんなのも
想像できないのだろうな。

885 :ナイコンさん:2016/07/15(金) 16:43:23.05 .net
>その壮大なストーリーを楽しむためには全機種ハード買わないと遊べないのか。

えっお前友達の一人もいないの?

886 :ナイコンさん:2016/07/15(金) 16:46:39.86 .net
> 知らんがな。同じソースコードを使ってると言い出したのはおれじゃない。 こいつ。 >>875

Z80搭載機種と6809搭載機種にしか言及されてないけどそれらと関係ない98やFCがどうのと言ってる馬鹿が>>880

887 :ナイコンさん:2016/07/15(金) 16:47:52.92 .net
>>885
ほんとの友達なら機種もみな同じになるだろう。
悪い友達というのは、マイナー機種やMacを薦めたりするだろう。

おまえにはほんとの友達がいなかったんだな。

888 :ナイコンさん:2016/07/15(金) 16:49:13.84 .net
>ほんとの友達なら機種もみな同じになるだろう。

えっ何で??

889 :ナイコンさん:2016/07/15(金) 16:55:17.19 .net
>>888
ゲームの貸し借りするから。おまえほんと友達いなかったんだなw

890 :ナイコンさん:2016/07/15(金) 16:56:50.31 .net
友達いない奴にはわからんだろうなw

891 :ナイコンさん:2016/07/15(金) 17:03:53.56 .net
>>851
C言語自体がサポートしてる訳ではないだろ。

892 :ナイコンさん:2016/07/15(金) 17:07:01.21 .net
V30で初めてC使ったときは糞遅くて使えないと思ってたのにZ80でC開発とかユーザ馬鹿にしすぎだろ。
馬鹿売れしたVzだってオールアセンブラなのに。

893 :ナイコンさん:2016/07/15(金) 17:08:23.69 .net
>ゲームの貸し借りするから。

「ほんとの友達」の条件がこれとは寂し過ぎるw

894 :ナイコンさん:2016/07/15(金) 17:09:17.20 .net
>馬鹿売れしたVzだってオールアセンブラなのに。

MIFESもFINALもCじゃないかな?

895 :ナイコンさん:2016/07/15(金) 17:11:07.62 .net
>>891
残念、ライブラリもC言語自体の規格の一部なんだ。

896 :ナイコンさん:2016/07/15(金) 17:15:41.67 .net
プアな環境ならサブセット実装だろうな。

897 :ナイコンさん:2016/07/15(金) 17:17:48.39 .net
当時はCよりまだBASIC+マシン語が多かった気がするなぁ。A列車とか大戦略とか。

898 :ナイコンさん:2016/07/15(金) 17:18:12.17 .net
>>896
標準規格を満たしていない処理系は当たり前に存在するけどそれが何か?

899 :ナイコンさん:2016/07/15(金) 17:24:58.41 .net
むしろ完全準拠した処理系は存在しない。

900 :ナイコンさん:2016/07/15(金) 17:27:19.48 .net
> mallocはただのライブラリで、C言語とは、直接関係無いしな。

馬鹿丸出しw

901 :ナイコンさん:2016/07/15(金) 17:28:46.23 .net
>>893
キミは全機種クリアしたの?

902 :ナイコンさん:2016/07/15(金) 17:28:59.19 .net
>>892
さすがにオールCとかは無いと思うよ。
C(の標準ライブラリの使用も含めた標準的なC環境)+アセンブラもあんまり無くて、
アセンブラ+C(×÷ルーチンなど最小限のランタイムライブラリのみ使用、
スタートアップコードも未使用〜最低限のものにカスタム)のケースがほとんどかと。

903 :ナイコンさん:2016/07/15(金) 17:50:16.40 .net
そうだねー、8ビットのCPUでC言語なんて使わないよねー。
もっと重くて遅いBASIC使うよネー。

あっちでお薬のんで壁相手にしててね、お爺ちゃん。

904 :ナイコンさん:2016/07/15(金) 17:55:54.90 .net
>>903
当時、ベーマガはあったがCマガはない。

905 :ナイコンさん:2016/07/15(金) 18:01:15.89 .net
アセンブラで時間かけて書くより、Cでサクッと書いたのが良いケースの方が圧倒的に多い。
前提として、それなりにまともなコード吐くコンパイラがあってだけど。

8ビットのセルフ開発だと前提になるコンパイラが…

906 :ナイコンさん:2016/07/15(金) 18:02:41.34 .net
8bitCPU処理系では、intは8bitなのかい?

907 :ナイコンさん:2016/07/15(金) 18:03:24.42 .net
>>904
そこはザベだるぉ!?

なんでザベはあんな内容だったんかねー

908 :ナイコンさん:2016/07/15(金) 18:07:24.45 .net
>>906
それだとshortも8ビットにならんか?

909 :ナイコンさん:2016/07/15(金) 18:23:39.38 .net
安易にintで掛け算割り算しようものならすげー遅かったんだろうなぁ。

910 :ナイコンさん:2016/07/15(金) 18:40:05.52 .net
> 安易にintで掛け算割り算しようものならすげー遅かったんだろうなぁ。

こういう奴って A×B の計算を「AをBの数だけ足す」とか思ってそうw

911 :ナイコンさん:2016/07/15(金) 18:41:58.53 .net
割り算、が読めないのか。

912 :ナイコンさん:2016/07/15(金) 18:42:24.56 .net
A÷Bを「Aから引けなくなるまでBを引いた回数」とか思ってそうww

913 :ナイコンさん:2016/07/15(金) 18:43:06.09 .net
>>911-912
ワロタw

914 :ナイコンさん:2016/07/15(金) 18:44:02.48 .net
>>910
馬鹿にするのは勝手だが九九ぐらい知っとるわ。

915 :ナイコンさん:2016/07/15(金) 18:45:23.02 .net
> 馬鹿にするのは勝手だが九九ぐらい知っとるわ。

こういう奴って「掛け算にはでっかい表が要る」とか思ってそうw

916 :ナイコンさん:2016/07/15(金) 18:48:31.68 .net
NDPの実装知らないで、ドヤしてるのか。
バカすぎだわ。

917 :ナイコンさん:2016/07/15(金) 18:52:04.00 .net
>>915
乗算アルゴリズムについて詳しく!!

918 :ナイコンさん:2016/07/15(金) 18:52:08.26 .net
バグ付きペンティアムのバグの原因がデータテーブルの設定ミスだったなー。

919 :ナイコンさん:2016/07/15(金) 18:52:28.54 .net
> 安易にintで掛け算割り算しようものならすげー遅かったんだろうなぁ。

って話にNDPの実装がどうこう言いだす奴って激しく頭悪そうw

920 :ナイコンさん:2016/07/15(金) 18:53:16.64 .net
>>917
むりむり、分かってないで貶してるだけだからw

921 :ナイコンさん:2016/07/15(金) 18:58:04.28 .net
ゲハのニワカは煽ったら教えてもらえると思ってるのかな?

922 :ナイコンさん:2016/07/15(金) 18:59:18.25 .net
知ったかの決まり文句頂きました。

923 :ナイコンさん:2016/07/15(金) 19:09:12.07 .net
>>879
「準拠」にcomply以外の意味があるのかよ。

924 :ナイコンさん:2016/07/15(金) 19:10:09.76 .net
頭の中身が30年前でとまってるバカがドヤゃ!!してもナー。
コメディアンに成れるよ。

925 :ナイコンさん:2016/07/15(金) 19:14:55.57 .net
まぁ実務君はC使って開発効率がどうのこうの言ってるのに、
アセンブラでIX/IYを使ってドヤ顔する変な人ですw

926 :ナイコンさん:2016/07/15(金) 19:15:50.88 .net
> 頭の中身が30年前でとまってるバカがドヤゃ!!してもナー。

知らないでデタラメほざいてるキチガイに対してはドヤ顔も致し方ない

927 :ナイコンさん:2016/07/15(金) 19:17:04.74 .net
> まぁ実務君はC使って開発効率がどうのこうの言ってるのに、
> アセンブラでIX/IYを使ってドヤ顔する変な人ですw

↑要所要所での使い分けってのが理解できないんだなあ、ゲハのニワカだから
仕方ないのかもしれないが。

928 :ナイコンさん:2016/07/15(金) 19:19:55.18 .net
>>909
使い捨てのテストコードとかで、とりあえず動けば良いって場合はそんなの気にしないけど、
普通は「安易」に使ったりはしない、
「安易」ではなく、どうしても16x16の掛け算割り算が必要な状況なら
結局アセンブラで書いても同じことだから遅いのはもうどうしようもない。

929 :ナイコンさん:2016/07/15(金) 19:20:50.10 .net
> まぁ実務君はC使って開発効率がどうのこうの言ってるのに、
> アセンブラでIX/IYを使ってドヤ顔する変な人ですw

C使うのとIX/IY使って保守性の高いプログラムを組むのとでなんか矛盾があるかな?
どっちも開発効率重視の話だと思うんだが。

930 :ナイコンさん:2016/07/15(金) 19:26:18.03 .net
「8ビットマイコンは遅い分高速に動作することを重視してプログラムを組まなくてはならない」

みたいな変な教条主義に陥ってる素人は見ていて微笑ましいw

931 :ナイコンさん:2016/07/15(金) 19:29:37.03 .net
8bit処理系で普通にC使ってたと言ってる人はいつもcharばかり使って計算してたんだろうなぁ

932 :ナイコンさん:2016/07/15(金) 19:32:18.50 .net
当時の8ビットがとても遅かったのは間違いないことなので、速度無視ってわけにも行かないんだよな、
当たり前だけどバランスが一番大切だと思う。

933 :ナイコンさん:2016/07/15(金) 19:33:06.33 .net
https://twitter.com/DAIVA_ASW/status/633288714270044160
> HI-TECH Cは、当時の8bitマイコン向けのC言語としては、ANSI Cに
> 限りなく近くコンパイル後のコードもキレイだったので、逆コン
> パイルしたら元のソースコードが再現されるかもしれませんね。

https://twitter.com/DAIVA_ASW/status/633321821471793152
> 同じ8bit CコンパイラであるBSD Cがintとshortしか対応して
> なかった時に、ちゃんとlongあったことも選択の決め手になりました。

934 :ナイコンさん:2016/07/15(金) 19:37:44.05 .net
昔のソフトの広告は、いかに高速か、これはアセンブラで書いたぜ的な売り文句が多かったよな。
これはCで書いたぜは売り文句ではなかった。

935 :ナイコンさん:2016/07/15(金) 19:42:22.58 .net
立体版遊撃王はLattice-Cで書いてるのを売りにしてたぞ

936 :ナイコンさん:2016/07/15(金) 19:45:11.30 .net
>>931
処理系によるんだろうが、
LSIC80だと特に16ビットである必用が無い整数(ループカウンタとか)にはunsigned charを使うのが普通だな。

937 :ナイコンさん:2016/07/15(金) 19:46:18.30 .net
大戦略III グレートコマンダー
https://ja.wikipedia.org/wiki/%E5%A4%A7%E6%88%A6%E7%95%A5III_%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%88%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%80%E3%83%BC
> グレートコマンダーは画期的なゲームであったが、BASICで作成されていた
> こともあり、当時のパーソナルコンピューターのマシンパワー(全体的な処理
> 能力)では荷が重かった。 神崎祥生が『マイコンBASICマガジン』誌上で行った
> レビューによれば、80286(10MHz)CPUを搭載したPC-286V(PC-9801シリーズ
> 互換機)でグレートコマンダーを動作させたところ、ゲームの仕様上は
> プレイヤーは126部隊まで運用できるところ、50-60部隊を出すと最早
> リアルタイムゲームであるとは思えないほど低速になる、ほとんど絶え間
> なくフロッピーディスクドライブをアクセスしている、1ターン(100カ
> ウント)進めるのに1時間ほどかかるなどと言った状態で、後年の
> 『システムソフトのエンスー学館』でも、夜に命令を与えたものが
> 朝までに決着が付かない、プログラマーがN88-BASICの限界を知った、
> などと紹介されていた。
> '90ではプログラムはC言語で作成され、MS-DOS上で動作する仕様に
> 改められた。これにより動作速度が格段に向上した。

938 :ナイコンさん:2016/07/15(金) 19:50:17.78 .net
>>933
当時、8bitPCのゲーム開発にC言語を採用することはかなりのチャレンジだったことが読み取れるな。
longがあるかないかが決め手だなんて。struct long{int,int} + 自前演算ルーチンでいいじゃんと思えるのに。

939 :ナイコンさん:2016/07/15(金) 19:58:01.39 .net
>>937
この通りCが普及しだしたのは90年代からだな。8bitPCの時代は終わってた。

940 :ナイコンさん:2016/07/15(金) 20:01:07.81 .net
そもそもカウンタレジスタが8ビット。

941 :ナイコンさん:2016/07/15(金) 20:06:15.26 .net
>>939
同じシステムソフトから『立体版遊撃王』と『現代大戦略』が同じ年に出てて、
片やC言語、片やBASIC+一部機械語で作成されててなんても言えないのよね。
どっから「この通りCが普及しだしたのは90年代から」なんて妄想が出てきた
のやらw

942 :ナイコンさん:2016/07/15(金) 20:07:30.85 .net
> この通りCが普及しだしたのは90年代からだな。

Cマガ創刊がどうこう抜かしてた馬鹿かな?

943 :ナイコンさん:2016/07/15(金) 20:09:42.48 .net
8bitCPUでlong型サポート!ってのは「こんなにスゲーんだぜ!」ってことだろ。
他のとの区別化にひとつでもネタが欲しいって感じでひっぱりだしたようなものだろうけど。

68kで256ビット演算するよりは面倒だから。

944 :ナイコンさん:2016/07/15(金) 20:14:49.02 .net
>>938
単純に、
6809のコンパイラがlongが使えた→Z80でもlongを使えるコンパイラの方が良い
ってだけじゃないか?

逆に6809のコンパイラでlongが使えず、どのみちstruct long{int,int}でやらなきゃならないなら、
Z80のコンパイラでlongが使えるかどうかはどうでも良いことのような気がする。

基本的にマルチプラットフォームが大前提の話だろ。
Cで書かれたというシミュレーション部分にしても、
それぞれをZ80、6809のアセンブラで同時開発(バランス調整や仕様変更に両チームがそれぞれ対応)
とか、デバッグまで考えるとちょっとありえない手間になりそうだし、
Cで書いて共通化するというのは妥当な考えだと思う。

945 :ナイコンさん:2016/07/15(金) 20:19:38.06 .net
> 8bitCPUでlong型サポート!ってのは「こんなにスゲーんだぜ!」ってことだろ。

手持ちの CP/M のCコンパイラを確認したらさほど珍しいものではないようだが?


HiSoft-C
Hitech-C
Manx-C
aztec-c
c80
mix-c
White Smith C

この辺はlongサポートしてる。つーかlongサポートしてないコンパイラの方が少ない。

946 :ナイコンさん:2016/07/15(金) 20:21:29.85 .net
>>941
妄想も何もその時代を生きてきた。Cは89年にANSI標準化されて一気に普及した。
89年にANSI準拠のプログラミング言語C 第2版が出版され、Cマガも創刊。90年代はほんとC言語ブームだったよ。なつかしいなぁ。

947 :ナイコンさん:2016/07/15(金) 20:21:36.70 .net
C言語普及が90年すぎてからって言ってる奴は16ビット以降しか知らないんじゃねーかね。

948 :ナイコンさん:2016/07/15(金) 20:24:18.57 .net
>>945
後でサポートしましたって自慢にもならん。後発のコンパイラも。実装するかしないかだけの話なんだから。

949 :ナイコンさん:2016/07/15(金) 20:24:26.04 .net
C言語普及が90年すぎてからって言ってる馬鹿は90年代以降しか知らないんだろーね。

950 :ナイコンさん:2016/07/15(金) 20:26:18.90 .net
>>948
Hitech-cがCP/M用のCコンパイラとしてはかなり後発の製品であることをご存じないようでw

951 :ナイコンさん:2016/07/15(金) 20:27:41.97 .net
>>947
8ビットPC時代にCの開発が普通という世界はほんと知らん。何度も聞いてるが答えてくれん。
おまえに聞く。正確に答えてくれよ。その8ビットPC時代にCでの開発が普通だった時代は19XX〜19XX年のことだよ?

952 :ナイコンさん:2016/07/15(金) 20:29:03.79 .net
> 妄想も何もその時代を生きてきた。Cは89年にANSI標準化されて一気に普及した。
> 89年にANSI準拠のプログラミング言語C 第2版が出版され、Cマガも創刊。90年代はほんとC言語ブームだったよ。

こんなニワカ知識だとANSI策定以前に「ANSI準拠」を謳った処理系が複数出ていたこととか知らなそうだなw

953 :ナイコンさん:2016/07/15(金) 20:29:20.28 .net
LSI-Cで満足してた俺勝ち組www

954 :ナイコンさん:2016/07/15(金) 20:31:29.28 .net
> 8ビットPC時代にCの開発が普通という世界はほんと知らん。何度も聞いてるが答えてくれん。

同じ会社でも>>941みたいな例が実際あるのに頑固に聞く耳持たないからだしょ

955 :ナイコンさん:2016/07/15(金) 20:32:05.30 .net
>>952
詳しく。その処理系一覧とANSIが策定すらされてないのに、なぜANSI準拠と謳えたのか。

956 :ナイコンさん:2016/07/15(金) 20:34:31.85 .net
>>955
規格は制定された瞬間に公開されるわけじゃないからな

957 :ナイコンさん:2016/07/15(金) 20:34:56.32 .net
90年だとTurboC++がリリースされてC++時代が本格的に始まった頃。

その頃に猫も杓子も底辺プログラマもCの時代になったから、
それを普及期と言うのもある意味間違いではないけどな。

958 :ナイコンさん:2016/07/15(金) 20:35:31.38 .net
>>954
だから何年に8bitPCでC言語が普及したんだよ? 何度も聞いてるのに聞く耳持たないって意味不明。むしろおまえが言う口を持たないだろ。

959 :ナイコンさん:2016/07/15(金) 20:37:02.02 .net
>>956
だから詳しく。ソースもなくそんなこと言われてもね。

何一つ質問には答えないよね。8bitPCでC言語普及してた世界に住んでた人は。

960 :ナイコンさん:2016/07/15(金) 20:37:02.80 .net
> 詳しく。その処理系一覧とANSIが策定すらされてないのに、なぜANSI準拠と謳えたのか。

www

961 :ナイコンさん:2016/07/15(金) 20:39:23.12 .net
>>959
国会図書館でも行ってbitの80年代後半くらいの号読み漁ればわかるぞ。

# オレって親切だなあ。

962 :ナイコンさん:2016/07/15(金) 20:41:04.51 .net
制定は「これで締め切り!」ってだけでそれ以前にだんだんとFixしていくからなぁ。

ANSI準拠って謳ってたコンパイラは、それだけに限らないけど、ユーザ登録しておけば修正版を送ってきたもんだし。
中にはフライングして、コンパイラ作った後で変わったような項目もあったりするから。

「コンパイラのバグ」が在った時代だよ。

963 :ナイコンさん:2016/07/15(金) 20:42:57.03 .net
> 何一つ質問には答えないよね。8bitPCでC言語普及してた世界に住んでた人は。

やっと探してきたソースがtwitterだけだからなw >>933
産経新聞並みの裏取り。

964 :ナイコンさん:2016/07/15(金) 20:47:32.02 .net
>>962
コンパイラのバグなんて今でもあるよw

965 :ナイコンさん:2016/07/15(金) 20:53:06.18 .net
>>964
新しいコードを書けばバグは必ず生まれる。
でも最近のコンパイラのバグは致命的なのは聞かないねぇ。
ニュースにならないだけかもしれないけど。

966 :ナイコンさん:2016/07/15(金) 20:54:27.62 .net
何を持って普及してた/してなかったと言ってるのかわからんが、
8ビットPC自体が世間的に全く普及してなかったのに、それ用のC言語が普及してるはずが無い
と言う考え方もまぁ無くは無いわなw

967 :ナイコンさん:2016/07/15(金) 20:57:36.58 .net
> でも最近のコンパイラのバグは致命的なのは聞かないねぇ。

現場知らないからだろw

968 :ナイコンさん:2016/07/15(金) 21:02:59.14 .net
> 何一つ質問には答えないよね。

ゲハのニワカは図々しいなw 教えを乞う態度ってもんがあるだろうになあ。

969 :ナイコンさん:2016/07/15(金) 21:03:56.61 .net
コンパイラのバグは
アプリプログラマが自分が書いたコードが動かないため原因を調査
→結果コンパイラのバグを発見
→気が向いたらコンパイラ開発元に報告
→原因がわかったので回避コードを書いたり、コンパイルオプションを調節して問題解決、自分の仕事に戻る。
って感じで、そもそもあまりニュースになる要素はないんじゃないかと…

970 :ナイコンさん:2016/07/15(金) 21:06:18.76 .net
Linus Torvalds、GCCのバグに強烈なダメ出し
http://linux.srad.jp/story/14/07/28/0945215/

971 :ナイコンさん:2016/07/15(金) 21:16:43.34 .net
そーいや、GCCであったっけね。
全然つかわないから記憶に残ってなかったわ。

972 :ナイコンさん:2016/07/15(金) 21:19:50.96 .net
>>961
bit でググってみた。
1985 16ビット・パソコンのCとOSの可能性について(5)--Cによる動的メモリ管理と動的プログラム呼出し(その4)
1986 CのANSI規格化の現状
1987 Cプログラミング入門(1)--RUN/Cインタプリタでスタート
1988 Cの記事が見つからない
1989 Cの記事が見つからない
1990 Cの記事が見つからない
1991 Cの記事が見つからない
1992 Cの記事が見つからない
1993 Cの記事が見つからない
1994 C++準備体操--名前こそ命(1)

結論 : 8bitPCでC言語の記事は見つからない。16bitPCでCの可能性について記事があっただけ。
1987にC入門記事。なぜかインタプリタ。その後、bitからはCの記事が見当たらない。Cマガと差別化か。
とても普及してたってレベルじゃないわな。そりゃ質問から逃げ続けるわけだ。ソースが存在しないのだから。

973 :ナイコンさん:2016/07/15(金) 21:24:26.32 .net
なんだい「8ビットでC言語ありえねー!」が論破wwwされたから「ふきゅうぅ!!」って乗り換えたのか。
そこまでして「おれすげー!」「おれただしー!」やりたいなら鏡にむかって言ってろよwwww

で、BITのほかは?
複数で検索して全部が同じ結果でなければ無意味だぞwww

974 :ナイコンさん:2016/07/15(金) 21:25:43.33 .net
> 結論 : 8bitPCでC言語の記事は見つからない。16bitPCでCの可能性について記事があっただけ。

すげえなコイツw 何の話してたかも理解してないとはww

975 :ナイコンさん:2016/07/15(金) 21:27:09.62 .net
>>972
>>961が何へのレスかも理解してないのかw 馬鹿だコイツwww

976 :ナイコンさん:2016/07/15(金) 21:27:53.70 .net
>>973
もういいよ。おまえの脳内ソースはもう捏造、嘘、妄想だと証明された。どこにもソースがない。

もしあるならおまえが出せばいい。

977 :ナイコンさん:2016/07/15(金) 21:28:24.63 .net
自分に都合のいいデータを見つけたら、それだけを誇張して言うのが正しい方法なのです!

と、そういうことだよ。

978 :ナイコンさん:2016/07/15(金) 21:29:12.66 .net
>>975
能書きはいいからソース出せ、低能。全部嘘だった。

979 :ナイコンさん:2016/07/15(金) 21:31:20.41 .net
Cで遅いところはアセンブラで高速化
でも見やすくIX/IY使って書く俺超有能!

実務君の中途半端なこだわりw

980 :ナイコンさん:2016/07/15(金) 21:32:06.50 .net
> 何を持って普及してた/してなかったと言ってるのかわからんが、

「世界の全人類と、モグラとミミズとオケラ全部がCを使ってた事実がなければ
普及してたとは認めない!」とか言い始めそうな奴だし相手にするべきでない。

981 :ナイコンさん:2016/07/15(金) 21:32:55.22 .net
>>973
完全におまえの負け。そもそもbitの記事ソースも出さなきゃならないのはおまえなんだから。
それを丸投げして返された。結果記事はなかった。でbitの他? 存在するわけないだろう。おまえが出さない=存在しないのだから。

982 :ナイコンさん:2016/07/15(金) 21:32:58.25 .net
>>976
片手落ちだ、と指摘されて逆ぎれかい?
そんな程度でよく行きてられるねぇwww

自分が正しいって言いたいんだろ。
ぐだぐだ言ってないでクロスチェックしろよwww

983 :ナイコンさん:2016/07/15(金) 21:33:45.10 .net
>>978
会話が通じない馬鹿の相手をするのは無駄なことですよ? 分かりますか?

984 :ナイコンさん:2016/07/15(金) 21:33:49.01 .net
>>973
ほかを出すのはおまえだろう。そもそもbitにあると言ってなかった。

985 :ナイコンさん:2016/07/15(金) 21:34:29.69 .net
雑誌I/OにSmallCやDracoCが掲載されたのっていつ頃だっけ?
専門化向けの専門誌ではなく、I/Oのようなホビー向けの雑誌に出てくるくらいなので、
その頃には普及してたと言っても良いんじゃないかと。

986 :ナイコンさん:2016/07/15(金) 21:34:45.82 .net
結論。
「C言語が普及したのは90年以降です!」
ただし、特定少数の人物のみ該当する歴史で。

うん、お前はただしいよ。
よかったねー、お前がただしいってみとめたやったぞwww

987 :ナイコンさん:2016/07/15(金) 21:34:59.33 .net
> 国会図書館でも行ってbitの80年代後半くらいの号読み漁ればわかるぞ。

> 国会図書館でも行ってbitの80年代後半くらいの号読み漁ればわかるぞ。

> 国会図書館でも行ってbitの80年代後半くらいの号読み漁ればわかるぞ。

そんな記事は一つもありませんでした。 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)


988 :ナイコンさん:2016/07/15(金) 21:37:37.17 .net
>>985
その論理が正しいなら6809やOS-9の記事もあったから「6809やOS-9は普及した」が通ることになる。だが通らない。

存在が認知されてただけに過ぎない。普及したのはZ80であり、x86系なのだ。

989 :ナイコンさん:2016/07/15(金) 21:38:13.71 .net
952
> こんなニワカ知識だとANSI策定以前に「ANSI準拠」を謳った処理系が複数出ていたこととか知らなそうだなw

955
> >>952
> 詳しく。その処理系一覧とANSIが策定すらされてないのに、なぜANSI準拠と謳えたのか。

956
> >>955
> 規格は制定された瞬間に公開されるわけじゃないからな

959
> >>956
> だから詳しく。ソースもなくそんなこと言われてもね。

961
> >>959
> 国会図書館でも行ってbitの80年代後半くらいの号読み漁ればわかるぞ。

972
> >>961
> 結論 : 8bitPCでC言語の記事は見つからない。16bitPCでCの可能性について記事があっただけ。


キチガイとしか言いようがない。

990 :ナイコンさん:2016/07/15(金) 21:42:10.31 .net
ググってもbitの記事なんて全くヒットしない。アマゾンのマーケットプレイスにもない。
逆にヒットしないから嘘がばれないと思って、こんなマイナーな雑誌をソースとして指定したんだろうな。汚い。

そして嘘がバレたら「で、BITのほかは?」だもんな。ほんと汚い。腐ってる。

991 :ナイコンさん:2016/07/15(金) 21:45:56.68 .net
> 8ビットPC時代にCでの開発が普通だった時代は19XX〜19XX年のことだよ?

散々暴れたのに本気で答えないんだなw

992 :ナイコンさん:2016/07/15(金) 21:47:57.02 .net
> ググってもbitの記事なんて全くヒットしない

ん? ヒットするじゃん。

「共立出版 bit CのANSI規格化の現状」で検索
https://www.google.co.jp/search?q=%E5%85%B1%E7%AB%8B%E5%87%BA%E7%89%88+bit+C%E3%81%AEANSI%E8%A6%8F%E6%A0%BC%E5%8C%96%E3%81%AE%E7%8F%BE%E7%8A%B6&ie=UTF-8

993 :ナイコンさん:2016/07/15(金) 21:49:55.76 .net
80年代通してホビー用途のプログラミング、8ビットでなんてのはことさら開発ツールの市場になんかならんだろ。
ご家庭ではワープロがぶいぶい言ってて、子供部屋ではファミコンが威張りちらし、パソコンは片隅でひっそりしてた時代だったわけだし。
それでもアスキーのラーニングシリーズの入門C言語はそれなりに売れてたからニーズはあったわけで。


工業系の業界専門誌になら8ビットCPU向けの開発ツールの広告はバンバン入ってたが。
会社で取ってた業界情報誌にはZ80用の数値演算ライブラリ(!)なんてのの広告が載ってたぐらいだし。
たしか84年か85年かそれぐらいだったなぁ。

994 :ナイコンさん:2016/07/15(金) 21:51:41.45 .net
> 80年代通してホビー用途のプログラミング、8ビットでなんてのはことさら開発ツールの市場になんかならんだろ。

ライフボートのα-Cは当時としてはけっこう売れたみたいだけどね。

995 :ナイコンさん:2016/07/15(金) 21:53:24.49 .net
>>992
8bitPCでCが普通に使われてた記事は?

996 :ナイコンさん:2016/07/15(金) 21:55:08.89 .net
>>994

αーCって商利用制限あったヤツだっけ?
個人的にはLSI-Cを手に入れてからそれで満足しちゃったんだよなぁ。

「パソコンでソフト作ってます」とか言うと根暗というレッテル貼られるイヤな時代だったなぁ。

997 :ナイコンさん:2016/07/15(金) 21:57:20.92 .net
>>995
誰かそんなのがbitに載ってると主張していますか?
そういう投稿があったというなら具体的なレス番を示して下さい。

998 :ナイコンさん:2016/07/15(金) 21:59:31.02 .net
>>988
地方都市の電気屋のパソコンコーナーでFMシリーズ用のOS-9が買えちゃう
状況だったわけだから、十分普及してたと言ってもいいと思うけどな。
自分もFM-11AD2+を持ってたし。

999 :ナイコンさん:2016/07/15(金) 22:00:10.79 .net
>>997
質問を質問で返さないんでください。
8ビットPC時代にCでの開発が普通と言ったのはあなたで、それはいつの話ですかって聞いてるのですよ。
ソースがなればあなたの経験でいつだったかぐらい答えれるでしょう?

1000 :ナイコンさん:2016/07/15(金) 22:02:41.82 .net
>>999
>>980

1001 :2ch.net投稿限界:Over 1000 Thread
2ch.netからのレス数が1000に到達しました。

1002 :2ch.net投稿限界:Over 1000 Thread
2ch.netからのレス数が1000に到達しました。

総レス数 1002
237 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200