プログラミング言語Yahoo!検索ランキング(今回2013/03/18、前回2012/03/02)
《一般カテゴリ》
. 1(. 2) HTML...... 約252,7000万件(約252,7000万件) +0.00%
. 2(. 1) PHP.. 約195,6000万件(約252,7000万件). -22.59%
. 3(. 6) CGI 約. 13,7000万件(約 2,2900万件) +498.25%
. 4(. 4) BASIC. 約 3,2600万件(約 3,1900万件) +2.19%
. 5(11) FORTH... 約 2,2400万件(約 7110万件) +215.04%
. 6(. 5) C言語(*1) 約 2,0567万件(約 3,1010万件). -33.67% (*1)C言語、C++、C#の検索件数の合計
. 7(. 3) JAVA .約 1,6800万件(約 .11,0000万件). -84.72%
. 8(. 7) PYTHON 約 1,5800万件(約 2,0600万件). -23.30%
. 9(. 8) PASCAL... 約 1,5400万件(約 1,9800万件). -22.22%
10(. 9) DELPHI.. 約 1,2200万件(約 1,4900万件). -18.12%
11(12) PERL... 約 1,0500万件(約 2920万件) +259.58%
12(10) IL. 約 6498万件(約 7425万件). -12.48% (*2)CILとCLRとMSILの検索件数の合計
13(13) HSP.. 約 2090万件(約 2670万件). -21.72%
14(17) PROLOG......約 1360万件(約 .287万件) +373.86%
15(14) LISP. 約 1340万件(約 2050万件). -34.63%
16(16) FORTRAN.. 約 1300万件(約 1760万件). -26.13%
17(15) COBOL.. 約 1110万件(約 1800万件). -38.33%
- - - - - - -
《BASIC言語カテゴリ》
. 1(--) AGK 約165,640,000件(.-------------.). ------. (*3)AGKとApp Game Kitの検索件数の合計
. 2(. 1) VisualBasic . .約. 74,800,000件(約110,000,000件). -32.00%
. 3(--) Visual C++..... 約. 30,160,000件(.-------------.). ------. [ ※参考 ] (*4)VC++とVisual C++の検索件数の合計
. 4(--) Objective-C. 約. 19,020,000件(.-------------.). ------. [ ※参考 ] (*5)obj-cとobjective-cの検索件数の合計
. 5(. 5) QBASIC. 約 2,030,000件(約 2,860,000件). -29.02%
. 6(10) SmallBasic. 約 882,000件(約 153,000件) +476.47%
. 7(. 3) X-BASIC.. 約 628,000件(約 4,178,000件). -84.96% (*6)XBASIC、PC/AT機用統合開発環境
. 8(--) GLbasic 約 586,000件(.-------------.). ------.
. 9(. 7) DarkBASIC.....約 398,000件(約 556,000件). -28.41%
10(. 8) プチコン. 約 319,500件(約 256,730件). +24.44% (*7)PetitComputerの検索件数含む合計
11(. 6) BasicStudio....約 300,000件(約 958,000件). -68.68%
12(. 9) N88-BASIC....約 125,000件(約 160,000件). -21.87%
13(12) Hu-BASIC... 約. 97,800件(約 .22,900件) +327.07%
14(. 4) MSX-BASIC..約. 89,800件(約 3,300,000件). -97.27%
15(--) BASIC-256. 約. 71,100件(.-------------.). ------.
16(11) 99BASIC. 約. 51,200件(約 130,000件). -60.61%
17(. 2) CBM-BASIC 約. 12,800件(約 4,650,000件). -99.72%
4 :
─☆─ [ X | I.I.T. ] CENTRE DE LOCK ON ◆TXFAX7cidQpG :2013/04/28(日) 12:23:46.70 ID:FmD7Sgmi
《再掲載》 [技術解説] BASICとC言語 - FORTRANとPASCAL - 近未来のコンソールの定義(2010年9月7日(火))
…科学技術計算から一般のハードウェア処理まで行えるのが、FORTANから派生したBASIC、BASICとの違い
を見せるために構造化を意識した関数型手続き言語が、PASCALから派生したC言語と言われる。
どちらも歴史的には同時期に競争を展開している。
BASICにおいてはPCで最も多く使われている開発環境であるコトは言うまでもないが、用途に応じて独自の進
化を形成している。
VisualBASICは、同社のWindows環境の利用に適したプログラム配置、動作条件を形成しており、DarkBASIC
は、主にTVゲームの製作に適した簡素な記述によって生産性を向上するように形成されている。
企業や官公庁向けのソフトウェアの場合は、資産の活用や互換性を重視するために生産性を重視し、処理能
力はそれほど重視しない。
処理能力を重視する場合は、高性能のCPUに置き換えるなどし、ソフトウェア本体に手を加えるコトはほとんど
しない。
他方、TVゲームなど、一般消費市場(コンシューマ)向けのソフトウェアの場合になると、限られたハードウェアの
性能を引き出すために、互換性よりも処理能力の向上を目指すようになり、設計どおりのプログラムが書かれる
コトは少ない。
中には、明らかに手抜きと思われるような製品もあるが、こういったものは市場から見放される。
しかし複雑過ぎるものも敬遠され、消費者のわがままな要求に答えるのは難しいらしい。
さて、言語仕様を考えるときに、簡素な記述で動かせるBASICと、どこまでも複雑に書ける関数手続き型のC言
語と…どちらに軍配が上がるかは一目瞭然である。
人気のないものは市場規模が縮小し、その製品単価は跳ね上がるが、人気の高いものは市場規模が拡大し、
その製品単価はどんどん安くなる。
VisualC系統/VisualBASICとDarkBASICを比べれば一目瞭然だろう。
簡素な記述、APIコールを必要としない、非・関数手続き型のフラットな言語仕様。
これをベースにすれば、OSとハードウェアの設計を一から見直すコトも可能になる。
高速で簡素なハードウェアをベースにした新しいプラットホーム。
複雑になりすぎたPCを構造改革して、近未来のコンソールを作る動きが始まる。
5 :
寄稿:2013/04/28(日) 12:31:57.13 ID:???
・ VIC-1001の思い出
当時PET-2001やMZ-80K、PC-8001が欲しくても、実際には10万円もするような機種は買えなかった。
そこで当時カナダに本社のあるコモドールは、世界中の子供たちに変革を引き起こそうと決心した。
VIC-1001(C20)の登場である。
本体の仕様からパッケージングまで徹底的なコストダウンを図る。
コンセプトは「将来のコンピューターサイエンスを支えるブレーンの創出」。
テキスト表示は横長の22×23行の8色表示と背景16色、サウンドは3和音+1ノイズ、CPUは6502。
メモリは8KBで、BASICで使えるのは5KB。
今考えるとこれはPCとしては果たして使えるのかどうか疑問に思えるが、可能性を広げるものに…標準
でPCG(プログラマブルキャラクタージェネレーター)が搭載されていた。
スプライトもドットグラフィックスもないが、PCGを直接書き換えてスプライトのように、そしてドットグラフィ
ックスのように動かす。
画面に映るものが「結果」で、「からくり」についてまで言及する者はいない。
6502CPUを知らないユーザーのために、製品マニュアルの巻末にはインストラクションセットとステート表
も付いている。
ハンドアセンブルで作ったオブジェクトコードをBASICのDATA文に貼り付けていく。
文献も参考資料も何もないところから出発。
ジャック・トラミエルの試みは世界中で奏功し、現在では世界中のVICユーザーたちが活躍中である。
6 :
─☆─ [ X | I.I.T. ] CENTRE DE LOCK ON ◆TXFAX7cidQpG :2013/04/28(日) 12:49:49.88 ID:FmD7Sgmi
《再掲載》 [技術解説] ” GAME-MZ ” の成功と 「 C言語 」 の失敗 - ビッグサイエンスの光と影(2010年9月14日(火))
GAME86 Compiler for MS-DOS 1.00C
http://www.mztn.org/game86/ …今回は記号記述型言語 『 GAME 』(General Algorithmic Micro Expression)、この中でも成功した移植例、
「 GAME-MZ 」 を例にとって話を進めてみよう。
GAME-MZはMZ-80K(1978年発売)と言う旧式のPCで動く簡素な記号記述型言語で、BASICより簡単に、
BASICより高速に動くと言う触れ込みに影響され、多くのユーザーが一時的にGAME言語習得のために熱狂
的になる。
GAME-MZにはインタープリターとコンパイラが存在し、コンパイラで作成したプログラムはランタイムルーチン
を必要としない機械語に翻訳され、機械語、アセンブラの書けないユーザーでも実行速度の速いプログラムの
作成が可能になった。
BASIC言語との主な違いは、直接計算型GOTO文、配列記述などで…原始的なダイレクトアドレッシングを用
いた記述方法は、そのプログラムの予期しない 「 暴走 」(≒ハングアップ)をしばしば招いた。
GAME言語の原点は簡素な記述と、CPU間の違いによる機械語、アセンブリ言語記述の差異を埋めるために
考案された背景が存在する。
これと同時期に海外ではC言語の記述方式策定が始まる。
当時のメモリの少ないPCでは、膨大なメモリ(≒リソース)を必要とするPASCAL言語の移植は不可能と言われ
ており、これの簡易バージョンに相当する 「 C言語 」 の記述方式策定が議論されていた。
実際の市場ではGAME-MZで作成された多くのソフトウェア、特にゲームソフトで功績を上げ、メーカー配給の
簡易型PASCALインタープリターはその価格が高すぎるコト、一般消費者層には受け入れられなかったコトが起
因して失敗に終わるコトになる。
こうした背景があって、C言語の普及はBASICに比べて10年間以上の遅れをとるコトになり、GAME言語の一時
的なブームがさらに追い討ちを仕掛け、C言語は一般消費者層に受け入れられるコトなく現在に至るコトとなる。
こうした 「 PC文化砂漠 」 の歴史を持つC言語は、その優位性を誇張しなければ自分の居場所を確保するコト
すら難しい現状である。
一方、BASIC言語の本格的な社会的地位向上は、その処理速度の改善…つまりは 「 価格の安いコンパイラ 」
の登場まで待つコトになる。
ソフトウェアメーカーは、その利便性をよく知っているのでコンパイラの価格は天井知らずになり、なかなか普及
には至らなかった。
当時の多くのユーザーはBASIC言語と部分的に機械語を組み合わせてプログラムの処理速度の向上を図った。
2010年の現在では、そうした複雑なコトをしなくてもよくなり、誰でも手軽に、安全で暴走しない、高速な処理速度
を実現するBASIC言語のプログラムを書ける環境が安い価格で提供されている。
7 :
─☆─ [ X | I.I.T. ] CENTRE DE LOCK ON ◆TXFAX7cidQpG :2013/04/28(日) 13:01:17.47 ID:h9drryAh
そして 7 ヲッツ♪(アハ♪”
8 :
─☆─ [ X | I.I.T. ] CENTRE DE LOCK ON ◆TXFAX7cidQpG :2013/04/28(日) 13:50:46.88 ID:h9drryAh
《再掲載》 [技術解説] ” クラウド・コンピューティング ” と 「 クローズド・コンピューティング 」(2010年9月19日(日))
…最近、” クラウド・コンピューティング ” と言うキーワードをよく耳にするようになった。
旧世代の 「 TSS端末(=Time Sharing System時分割) 」 を思い浮かべるとイメージしやすい人もいる。
クラウド・コンピューティングとは、個人のPCを1つの端末機器に見立ててインターネット上のメインのサーバー
資源を流用する方法論である。
TSS端末とは物理的には方式が異なるが、図式的に分かりやすいので並べて比較するのにちょうどいい。
クラウド・コンピューティングの利点は、個人のPCの機能がそれほど高性能である必要がなく、その方法論によ
っては、便利な情報資源として活用できると言うコト。
欠点は、自分の所有する情報資源を勝手に流用されるリスクが伴うコトである。
ちょうど、私が使っているPCの情報資源が、外部から勝手にアクセス可能な状態になれば、それ相応のリスク
を伴うのと理屈は同じである。
このため、私はインターネットに接続するPCと、個人で使うPCとは分離して2台以上に分けている。
危機管理意識の高い企業では、このような使い分けは ” 当たり前 ” であり、「 クラウド・コンピューター 」 と、そ
して、「 クローズド・コンピューター 」 の2種類が存在する。
例えば、新製品の設計図が入っているPCを簡単にネット接続するだろうか?
どんな複雑なセキュリティーを施しても、いつかは必ず破られる運命にある。
完全なセキュリティーなど存在しない。
もし、存在するとすれば、それは通信回線を遮断した状態の間、つまりは 『 クローズド・コンピューティング 』 を
実践している間だけである。
外部接続のメモリーカードやディスクにウィルスやスパイウェアが混入していないか?
考えれば考えるほど悩みの種は増えていく。
しかし、このスレッド、「 COURANT DE CONSOLE PART.1 」 を読んでいる賢明な読者の諸君には、宇宙最強の
デジタル武装をいつでも実践できる強味がある。
BASIC言語の基礎戦術、「 スパゲッティー・プログラミング 」 を実践すればよい。
自分の好きなように考え、好きなようにアイデアを構築していく。
スパゲッティー・プログラミングとクローズド・コンピューティングが融合すれば、宇宙最速のコンピューターを使っ
ても…傍から見ると、その 「 謎めいた内容 」 は到底理解できないだろう。
UNIXやC言語に汚染された輩には申し訳ないが…宇宙最強のデジタル武装はあきらめていただきたい。
9 :
まちがって名前消しちゃいました。:2013/04/28(日) 19:17:09.21 ID:6MOc+EmY
10 :
まちがって名前消しちゃいました。:2013/04/28(日) 19:18:28.22 ID:6MOc+EmY
都合が悪くなる度にトンヅラかましてるんじゃねーぞ基地外
11 :
─☆─ [ X | I.I.T. ] CENTRE DE LOCK ON ◆TXFAX7cidQpG :2013/04/28(日) 21:32:29.23 ID:VTdLOYzR
>>9 …WindowsAPIを呼び出しただけのものはプログラムとは言わないw
自分のレベルを考えてものを言え、バカめが(ゲラゲラ
ワロタ!!!!!wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
6 名前: 反68 [反”新規”(笑)] 投稿日: 01/12/21 02:11
>>2 カッコいいかどうかは別として、今となってはMSXの源流の様な気がするね。
オレはどちらとも買わなかったが、「I/O」のプログラム打ち込んだり、6502
の機械コードがわかる様になってからは自分ででも作れる様になった。当然、ハンド
アセンブルだからあまり長いプログラムは作れないし、作るのは骨が折れる(笑)
6502は条件ジャンプが相対指定しかできないからプログラムの修正のたびにアド
レス計算しなおす必要に迫られた(爆笑)
・・・しかし、オレのまわりは8000かMZばっかりだったからな(笑) ほぼ全
てが独学・自力での開拓だったな(笑) 後で考えると良かったとは思う(微笑)
14 :
9,10:2013/04/28(日) 22:00:13.07 ID:6MOc+EmY
>>11 MP3ファイルを直接再生出来るWindows APIなんてあるんですか?
マスキング効果やDFTやFFTやDCTや窓関数やハフマン符号などが
あんたに解るのかよ
ポリフェーズフィルターバンク係数とか逆量子化とか知ってるの?
ID3 Tagさえも知らなそうだよね
とにかく、はよー皆待っているから、インベーダーの再公開をしなよ
うちの99BASIC使いのオヤジも楽しみに待っているんだからさ(マジでw)
15 :
─☆─ [ X | I.I.T. ] CENTRE DE LOCK ON ◆TXFAX7cidQpG :2013/04/28(日) 22:07:35.65 ID:VTdLOYzR
>>13 …懐かしいなw
今みたいに文章力がほとんどなかった頃の書き込みだから、かなり新鮮に見える。
6502はゼロページアドレッシング(256個の1バイトメモリ変数)に慣れてるコトと、エディターと
マクロアセンブラがないと難しいだろうな。
その点、MSXは開発ツールが豊富に揃っててプログラムが作りやすい環境だったな。
MS-DOSとかTOWNSとか、AT機が主流になる頃にはBASICが ” 粛清 ” されてホント、暗い
時代だった。
ゲーマーは馬鹿だから、エロゲーだけで満足してたし、ロープレで盛り上がる程度の知能しか
なかったから、PC界にとっても不幸の連続だった。
あ、それと 「 ユーティリティー馬鹿 」 が増殖したよなw
ファイラーとかCDプレイヤーとかどうでもいいソフトで必死に売名してたヤツ。
フツーにゲーム1本仕上げてから名前売れよ、みたいな感じでみっともなかったよな。
16 :
9,10:2013/04/28(日) 22:09:54.94 ID:6MOc+EmY
今まで俺にやり込められていた、元・成田空港の航空貨物管理システムの
プロジェクトリーダーのうちのオヤジも、あんたのおかげで元気ハツラツとしているよ。
そこに、俺には作れないインベーダーを、99BASICでコンソールさんが見せてくれたら
オヤジの威厳復活間違いなしでしょ。
うちのオヤジの為にも是非とも再公開を!!
>>15 コンソールの面白いところは抜群の記憶力だね。
何でそんな事まで覚えてるの?ってぐらいよく知ってる。
6502はゼロページもそうだけど、インダイレクトアドレッシングも混乱の元だったね。
18 :
─☆─ [ X | I.I.T. ] CENTRE DE LOCK ON ◆TXFAX7cidQpG :2013/04/28(日) 22:29:43.55 ID:VTdLOYzR
>>17 確かに6502のインダイレクトアドレッシングモード(メモリ変数の内容をアドレッシングして参照する)
は混乱の元だったね。
…6809まで引き摺ってコケたよなw
ついでに68000はアーキテクチャを刷新してそっぽ向かれて終わり(笑)
インダイレクトアドレッシングモードは自己書き換えプログラムとか、省力化には役に立ったけど、
それ以外では使われなかったな。
286以降のセグメントディスクリプタの概念とも似てるけど、こちらは使い方を明示してるからそれ
ほど混乱しない。
昔みたいにクロック数(ステート数)を気にしないで、BASICで楽に作れる時代に変わったから、
古い時代の話だろうね。
馬鹿ゲーマーが大手を振って歩ける時代は終わったし、TVゲームそのものも終わろうとしてるから、
クレーマーたる馬鹿ゲーマーは自分の首を絞めたコトになるなw
俺はコイツら馬鹿ゲーマーの嫌う、本来のゲーム性を重視したPC文化に回帰したいな…。
ソフトウェアデザインとかでムダ口叩いてるヤツ(馬jsとかw)とかホントいらない。
19 :
9,10:2013/04/28(日) 22:44:39.53 ID:6MOc+EmY
うわ!ググったら驚いた。
MCIを使ってMP3の再生を出来るんだね。
これは無知で失礼した。
最近のAPI方面には疎いもんでご勘弁をm(__)m
でも、自前のデコーダで再生するMP3ファイルは
MCIで環境任せで簡単に再生するよりも満足感が段違いだよね多分。
これは実際に実装してみた人間にしか解らないと思う。
他人の作ったデコーダと、自分で作ったデコーダで
聞く音楽の満足感の違い。
俺の最も尊敬する日本人のコンピューターエンジニアの言葉を借りれば、
マスキング効果やDFTやDCTを知っていて何の役に立つのかは知らないと。
MCIでMP3の再生が簡単に出来るのなら、この先MP3デコーダを実装する
機会なんてあまりないわけだけど、たぶん人生ってそんなに単純じゃないと
思うんです。
でも、損得とは別に、知っていた方が幸せなんじゃないかという気がするんです。
アプリケーションの仕組み。
・・・えーと、プログラミングの話に限らないんですが、仕組みが解っていた方が
世の中とか人生は楽しいです。そう思います。
人間のする事に、何一つ無駄なことは無いというのは、
母方の亡くなった祖母の言葉です。
>>18 独特な意見をお持ちのようで(笑)
VIC-1001、いやもっと昔からPCに関わってるみたいだけど、コンソールとしてはどういう方向が好きなの?
>>21 >大型計算機時代に逆戻りしてる
クライアントしか知らない馬鹿wwwww
>>22 おまえの馬鹿はよく分かったから、ゲームの1本でも仕上げてからこようねw
>>21 大げさじゃなくて「誇大妄想」だから、早く精神科に行った方がいいと思うよ
爺さん、ボケが入ってきてるんじゃないの?
効率、効率とか言っているけど、多くの大学の情報処理科ではCを教えるんだよ。
結局、今のOS環境についていけないんでしょ?
だからライブラリー任せにするんでしょ?
…フツーに考えるとAGKのマニュアルだけで事足りるんじゃないかな。
専門用語ばっかりだから全部英語でもなんとかなると思うよ。
# あ、こいつは肝心の専門用語が分からないか(!w”)
28 :
まちがって名前消しちゃいました。:2013/04/28(日) 23:41:40.91 ID:6MOc+EmY
>>28 >ないらしい
ってなところが自信喪失しちゃって笑えるよなw
「 らしい 」 じゃ説得力ないんだよ。
どうせ 「 TVが言ってた! 」 とか発狂するタイプだろうな(ゲラゲラ
>>25 作れないんじゃないの。
「作る気が無い」の。
ゲームなんか興味ないから。
いい歳して幼稚というか馬鹿なんじゃないの?
インプレースアクティベーションとか解りますか?
古臭いハンドアッセンブルの話をしているのはジジイだけだよ!!
>>30 …俺にせっついてるところを見ると、どうせ他でもハブられてるんだろ?(ヲッ?w”
性格治したほうがいいよ、治せるかどうかは知らないけどな(大爆笑)
# ハブられるヤツって、自分で話題を展開できないヤツに多いよな(!w”)
>>29 自分こそインベーダーさえも作れないんだろ?www
どうでもいい言葉の揚げ足取りばっかして
結局口先だけで何にもアップロードできねーじゃんwww
お前が古臭い口先だけで何も作れない、絶対的な証拠www
出来るものならアップロードしてみろよ、老いぼれジジイがwww
http://kie.nu/
33 :
まちがって名前消しちゃいました。:2013/04/28(日) 23:55:59.93 ID:ikP5EXjc
コンソーレの文章中の単語は、コンソーレがいじめを受けた時の単語なわけ、
だからコンソーレが吐き出す単語がすべて、コンソーレ自身に当てはまる。
>>31 ハブられてるのはお・ま・え
勘違いするな基地外
>>31 なーんで、インベーダーのスクショの画像で
座標がマイナスになっているのかねーーーwwww
フォントが切れているっていうか、頭の血管切れてるんじゃねーの?www
まとめて1回で書く癖を付けないとなw
>>21 意外とAndroidはいいんじゃないの?
ターゲット扱いだけど。
38 :
35:2013/04/29(月) 00:13:09.00 ID:???
>>33や
>>34は俺じゃありませんよ?
また得意の妄想ですかwwww
インベーダーのスクショ捏造を指摘されて、逃げるのに必死だねwwww
>>37 …Androidは悪くはないけど、ターゲットだからね。
ホストになれないプラットフォームは、メインにはなれないよ。
んじゃその胴元…Linuxってのは頭悪そうだからなw
なんかLinuxって、わざと嫌われるような作りになってるんだよな(笑)
(notA)・((notB)xor1) xor A・((not(notB))xor1) これ何?
>>39 Windowsと違って操作性悪いよね。
Linuxはファイルシステムの概念もおかしい。
>>39 こんぐらい即答しろよ。
頭悪いのは、Linuxじゃなくて、お・ま・え
>>41 …Linuxのファイルシステムは概念が先行してて、物理デバイスを隠蔽してる感じだね。
俺は 「 COURANT DE CONSOLE PART.1 」 でも書いたとおり、” ハードウェアの自然な動作に沿う ” と言う考え方。
Windowsに近いけど、実際は少し違う。
6502の話を必死になってしておいて、論理演算も解らない馬鹿wwww
知らないのに単語だけ並べると文章が変だぞ
8080とZ80は兄弟だけど、6502と6809は完全に別物
コンソールって、もしかしてCPUは四則演算が出来ると思ってるわけ???
それでCPU云々ぬかしてるとか、バロスwwwww
コンソーレは、ポインターの使い方を知らない。
>>51 …AGKのマニュアルだけでじゅうぶんだよw
もちろん、その前提には99BASIC、DarkBASIC、Basic4GLに精通してないと難しいだろうけどね。
>>53 …他人に聞くより、自分で理解するほうが結果も早いし、作れるようにもなるだろうなw
俺は教えないから自分で理解したほうがいいよ。
# 簡単簡単(笑)
>>54 99BASICのインベーダー再掲載よろ!
>>55 …” ファースト・インベーダー ” は初回配布時に1万ヒットを達成してるから、ファイル本体は出回ってる筈だよ。
お友達から…あ、横の繋がりのない2chねらーにはムリかw
期限切れのない 「 アンロックバージョン 」 もあるかもよ(ゲラゲラ
BASICとか言ったって、現代のAGKなどの構造化BASICは
Cの関数をモロに真似てるじゃん。
function()
endfunction
とか
if()
endif
とか
冗長で、かえってコードが読みにくいんだよ。
メンソレータムの嫌いな、VBのコードを見ているみたいでさ。
AGKはポインターが使えないの?
だったら、引数がcall by valueだけになって、不便極まりないじゃん。
ポインター使っていたら、
>>6の話と矛盾するし
何をもって、BASIC最強とか言っているわけ?
>>57 そこは決心を固めて99BASICを修得して、自分で作れるようになるのが一番いい。
1つできれば応用が利くようになる。
DarkBASICの参考書って英語圏しかないじゃん
>>56 誰かが、配布している期間には、HPを改装?してたとか
どこにも出回っていないと言っていたじゃん。
それより、これも誰かが指摘してたけど、インベーダーのスクリーンショットを良く見ると
画面上と下のEの文字を見れば判るけど、画面上部の文字が切れているよ?
これは何でなのよ。
>>60 99BASICができるようになればDarkBASICもできるようになるし、DarkBASICができればBasic4GLもAGKも自動的にできるようになる。
王道はただ1つ、自分で修得するコト。
AGKの場合は、ポインターが使えないから、コンソーレにお似合い。
よって、変数を構造体にしてグローバル変数に定義して値を引き渡すしか無い。
だから、AGKは原理的にCよりも2倍遅い。
コンソーレの場合は、BASICだけしか修得できなかった。それもN88BASICだけ
だから、BASICしか選択枠がない。
これはまさに、HSP信者に似ている
>>56 >お友達から…あ、横の繋がりのない2chねらーにはムリかw
自分の事いっているよw
>>65 その意気だよw
将来、自分の拠り所を聞かれた時に、迷わずに済む。
「 〜に教えてもらいました 」 では面接でも撥ねられる。
仕事もレポートも自分でやるように習慣付けておく(笑)
>>63 コンパイラーだからって、BASICがCと同じ速度になるわけじゃないんだよね。
さらに、安いものには訳があ・・・・
AGKの会社が倒産するかもしれない。資金繰りがかなり苦しいようだ
ダントツ1位のスレに昇格。
使いもしないでどうこう言っていてもしょうがないから
VC++とAGKトライアルで、ループ処理のベンチマークしてみるよ。
あ・・・どこかの馬鹿な誰かさんとは違って、ちゃんとループの中で乗算して
Cコンパイラーに最適化されないようにしますからw
Cのコードだとこんな感じ?
#include <stdio.h>
int main()
{
int i,j;
int n;
for(i=0;i<100;i++){
for(j=0;j<1000000000;j++)n=n*97797;
}
printf("END");
while(1){}
return 0;
}
ダンボーレに合わせて、PentiumMで計測してやろう。
1000億回のループだから、手動計測で十分だろ。
AGKだとどうするんだ?
トライアル版にはマニュアルは付いているのか?
わからなければ、ダンボーレの過去のコードを参考にするか。
ダンボーレwwwwwwwwww
63 :─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/07(日) 16:30:09.76 ID:UpWr0Chy
[参考] ベンチマーク - FOR-NEXT10億回ループ(CeleronD2.66GHz)
Visual C++ - 2.821秒
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[]) {
int j,k;
printf("START\n");
for(k=0; k<100; k++) { for(j=0; j<1000000000; j++) {} }
printf("END\n");
return 0;
}
オマエ、何が10億回ループだよ!!!
これじゃあ1000億回ループになってんじゃねーかwwwwww
他の言語は全部10億回なのに、コマンドプロンプトのアプリ組むのに
なんでわざわざ #include "stdafx.h" とか無駄な事している上に
VC++だけ1000億回って、オマエ、VC++とか本当に使えるわけ?
>AGKの会社が倒産するかもしれない。資金繰りがかなり苦しいようだ
TownsもMeもVistaも8もダメで、99basicもDarkBasicもAGKも終わるのか。
コンソーレは疫病神かwww
アポゥも落ち目だからコンソーレがmac miniを買うと加速度的に……これは楽しみだw
ってーかさー。
startとend表示するなら時間も一緒にprintしとけってなぁw
まぁソレがチョンソーレの限界なんだろうけどw
>>72 nを初期化するの忘れてるなn=7くらいでいいか?
あと、関数呼び出しで、どの位パフォーマンス違うかも調べるために
ソースコードを改変するか。
問題は、AGKのサイトのチュートリアル1を流し読みしてみたけど、
あれだけではfunctionの使い方が判らんな。
適当に頑張ってみるか。
77 :
72:2013/04/29(月) 04:57:02.24 ID:???
#include <stdio.h>
#include <time.h>
void hage(unsigned int *);
int main()
{
int i;
unsigned int a=7;
clock_t st,ed;
st=clock();
for(i=0;i<1000000000;i++)hage(&a);
ed=clock();
printf("終了 a=%u 処理時間=%.2f秒",a,(double)(ed-st)/(double)CLOCKS_PER_SEC);
while(1){}
return 0;
}
やぼ用で席外してた。
とりあえずこんな形?
AGKで1000億回ループすると死にそうだから
10億回ループにしたwww
Cだと、WindowsXP PentiumM(Baniasコア)1.6GHz 1GB で、9.16秒くらい。
これから、AGKをインスコして試してみる。
78 :
72:2013/04/29(月) 05:00:34.85 ID:???
>>72のソース書き間違えたwごめん
#include <stdio.h>
#include <time.h>
void hage(unsigned int *);
int main()
{
int i;
unsigned int a=7;
clock_t st,ed;
st=clock();
for(i=0;i<1000000000;i++)hage(&a);
ed=clock();
printf("終了 a=%u 処理時間=%.2f秒",a,(double)(ed-st)/(double)CLOCKS_PER_SEC);
while(1){}
return 0;
}
void hage(unsigned int *b)
{
*b=*b*97797;
return;
}
79 :
72:2013/04/29(月) 05:04:18.13 ID:???
>>78 リンク間違ってるし、眠くてもうグダグダwうぇうぇぇぇぇwww
80 :
72:2013/04/29(月) 05:05:55.75 ID:???
もう疲れたよ・・・パトラッシュ・・・・
81 :
72:2013/04/29(月) 05:21:40.27 ID:???
わすれ〜ないよ〜このみ〜ちを
パトラッシュとあ〜るいた〜♪♪
82 :
72:2013/04/29(月) 05:23:15.81 ID:???
ちなみに、aの値は27億6803万7895。
hage()の中の演算だけで、320億回のビットシフトにC判定と加算。
今、もう一度測ってみたけど、8.94秒だった。
PentiumM、侮るべからずw
マルチメディアタイマは使う気力なしw
83 :
72:2013/04/29(月) 05:42:46.09 ID:???
AGK大体分かったけど、IE8を9個とABone2とエクスプローラとAGKで
糞重いwww
PF使用量2.86GBって、スワップが1.8GB以上wwww
スワップファイル3GBあるから、まだ大丈夫w
ってか、ダンボーレのCeleronDって、2.66GHzなのwwww
ぱるる以上のポンコツwwww
84 :
72:2013/04/29(月) 05:46:13.77 ID:???
CeleronD 2.66GHzで、今時のVisual Studioなんて動かせるの?w
だからAGKなのか?www
85 :
72:2013/04/29(月) 05:49:45.44 ID:???
ダンボーレのやった空ループでも65秒かかるってwww
やる気しねえええええええええwwwww
86 :
72:2013/04/29(月) 06:38:59.39 ID:???
dim i
for i=0 to 1000000000
next i
↑適当に試したこれだと一瞬で終わるのに、
ダンボーレの↓だと154秒もかかるって、どういう事?意味不明だな
J AS INTEGER
T=TIMER()
FOR J=0 TO 1000000000:NEXT J
PRINT(TIMER()-T):SYNC()
DO:IF GetRawFirstTouchEvent(0) THEN EXIT
LOOP
87 :
72:2013/04/29(月) 06:43:42.75 ID:???
大体、for i=0 to 1000000000 だと、10億1回ループにならね?www
俺は初心者だからあれだけど、ダンボーレさん大丈夫ですか???wwww
AGKはどうやって入手するの?
>>88 …TGC(The Game Crators)のサイトに行ってオンライン決済してくればよい。
簡単簡単(笑)
トライアルバージョンはタブレットのエミュレーターが付いてないからアウトw
[参考] ベンチマーク - FOR-NEXT10億回ループ ver1.04
(表1)ベンチマークテスト結果(数字が小さいほど速い)
MASM32 Visual Visual Visual Java Dark AGK Basic4GL 99BASIC
Basic C++ C# Script BASIC
----------------------------------------------------------------------------------------------------
PC(CeleronD2.66GHz)[sec] 0.7828 2.445 2.821 3.973 7.772 20.853 65.423 285.703 1532.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 1.0 3.123 3.604 5.076 9.928 26.638 83.575 364.975 1957.0
----------------------------------------------------------------------------------------------------
Nexus7(Tegra3)1.3GHz[sec]. ----- ----- ----- ----- 36.480 ----- 320.18 ----- -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率. ----- ----- ----- ----- 46.601 ----- 409.01 ----- -----
----------------------------------------------------------------------------------------------------
iPhone4S(Cortex-A9)800MHz[sec] ----- ----- ----- ----- 36.521 ----- (※注) ----- -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 ----- ----- ----- ----- 46.654 ----- (※注) ----- -----
----------------------------------------------------------------------------------------------------
(※注)iPhone版AGKターゲットエミュレーターはビデオストリームのため除外。
- - - - - - -
(表2)ランキング表(数字が小さいほど速い)
開発環境 タイム MASM32を1とする
[sec] 相対倍率
-----------------------------------------------------------------
PC(CeleronD2.66GHz). MASM32. 0.7828 1.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). Visual Basic. 2.445 3.123
PC(CeleronD2.66GHz). Visual C++ 2.821 3.604
PC(CeleronD2.66GHz). Visual C# 3.973 5.076
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). JavaScript 7.772 9.928
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). DarkBASIC 20.853 26.638
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Nexus7(Tegra3)1.3GHz JavaScript. 36.48 46.601
iPhone4S(Cortex-A9)800MHz JavaScript. 36.521 46.654
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). AGK 65.423 83.575
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). Basic4GL. 285.703 364.975
Nexus7(Tegra3)1.3GHz AGK. 320.187 409.01
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). 99BASIC. 1532.0 1957.0
-----------------------------------------------------------------
誰が嘘を付いてるのか丸分かりだねw
やっぱコンソールは違うね!
95 :
72:2013/04/29(月) 07:49:03.83 ID:???
ハゲが言う事聞かねえwwww
96 :
72:2013/04/29(月) 07:52:11.29 ID:???
ハゲが言う事聞かねえんだよ!!!
なんだこの糞言語は!!!
>>91 あと足りないのはiPadとMacだね。
全機種買えw
のっけから大勝利♪(ペロリッ♪”
99 :
72:2013/04/29(月) 08:08:19.67 ID:???
空ファンクションの10億回の呼び出しで215秒www
100 :
72:2013/04/29(月) 08:09:55.46 ID:???
どこが大勝利なんだよwww
てめーのベンチマークコード、
突っ込み所、満載じゃねーかwwww
>>99 CeleronD2.66GHzよりノロイPCってなんなの?w
数字は残酷だね〜。
103 :
72:2013/04/29(月) 08:14:58.42 ID:???
AGKが空ファンクションの状態でも、CはAGKの24倍の速度だぞwww
乗算が入ったら、どうなるんだこれwwwww
はい、負けw、72ノロイw
105 :
72:2013/04/29(月) 08:17:27.34 ID:???
>>101 「より」とか言っている時点で、自分のPCがノロイって自認してるんだwwww
だって、こんなの中古で3000円のノートだもんwwww
107 :
72:2013/04/29(月) 08:31:40.05 ID:???
とりあえず、ファンクションの中で乗算入れてやったら305秒だったw
ハゲが相変わらず言う事聞かねえがwww
call by valueでファンクションから返り値出せなきゃグローバルとローカルで
地獄にはまって、どうしようも無いな。
とりあえず、チュートリアル読むか
108 :
72:2013/04/29(月) 08:33:45.05 ID:???
AGKはCの34分の1以下の実行速度wwww
やっぱり安い物には訳があ・・・・wwww
109 :
72:2013/04/29(月) 08:36:22.85 ID:???
とりあえず、今のソースコード。
チュートリアル、ほとんど見てませんwww
a as integer
i as integer
a=7
st=timer()
for i=1 to 1000000000
hage(a)
next i
ed=timer()
printc("End a=")
printc(a)
printc(" Processing Time=")
printc(ed-st)
printc("sec")
sync()
do
a=0
loop
function hage(b)
a=b*97797
endfunction
110 :
72:2013/04/29(月) 08:43:34.41 ID:???
111 :
72:2013/04/29(月) 08:49:00.41 ID:???
>>101 Cの、34分の1の実行速度のAGKって何なの?
113 :
72:2013/04/29(月) 08:51:47.65 ID:???
ファンクションから返り値が出せねーじゃんwww
どうすればいいのよwwww
114 :
72:2013/04/29(月) 08:55:01.10 ID:???
あと
>>91のAGKの65.423秒って嘘だからなww
ダンボーレのやり方では、ミリ秒は出ねーからwww
116 :
72:2013/04/29(月) 08:58:27.98 ID:???
なんだよ、この糞言語wwwwww
これで生産効率が良いってwwwwww
TZ(笑)
119 :
72:2013/04/29(月) 09:00:46.81 ID:???
exitfunction variable
endfunction variable
function()からの脱出には上のふたつがある。まちがえてごめんね
121 :
115:2013/04/29(月) 09:05:57.05 ID:???
笑いが止まねぇぇぇぇええええ〜♪(ペロリッ♪”
124 :
72:2013/04/29(月) 11:30:01.41 ID:???
>>115 おかげ様で完成しました。
結果は、359秒でC言語の約40分の1w
予想通り、どうしようも無い糞言語でしたね。
推進している誰かさんのプログラミング能力といいw
こんな結果になるのは判りきっていましたが
こんなものを絶賛しているのはやっぱり、うちの老いぼれジジイと同じ
GUIプログラミングが理解出来なくて、BASICにすがるしかないボケ老人だと。
うちのオヤジも何度言っても聞かないんですよ、99BASICは最高だって・・・
BASICのBはビギナーズのBだと言っているのに。
こんなゴミ、ただでも入りませんね。
所詮、こんな程度だとダンボ―レって奴は。
まだ突っ込み所が満載なんですが、規制で携帯からの
書き込みなんで、これにて。
126 :
72:2013/04/29(月) 11:39:30.50 ID:8tJbPs0X
>>123 死ねよ老いぼれ糞ジジイ。
巣に篭って二度と出てくるな
書き込めませんよm9( ̄∀ ̄)/♪ホォ〜w”
>>126 おーい、早くこっちにこいよ〜♪(ギャハハ!!wwww”
>>124 比較する対象が違うだろ、 AGKとの比較はHSPと比べるべきだね
133 :
72:2013/04/29(月) 12:38:24.37 ID:8tJbPs0X
俺のコ―ドもそうなんだけど、ダンボ―レのAGKのベンチマークコ―ドの
致命的な点は、コ―ドの最後において、無限ル―プになっており
この事で、WM_PAINTが処理されず、ウィンドウが他のウィンドウに隠されて
無効化領域が出来た際に、再描画されずに
その部分が白くなってしまう事にある。
俺はまだ始めたばかりでAGKのア
134 :
72:2013/04/29(月) 12:51:53.82 ID:8tJbPs0X
俺のコ―ドもそうなんだけど、ダンボ―レのAGKのベンチマークコ―ドの
致命的な点は、コ―ドの最後において、無限ル―プになっており
この事で、WM_PAINTが処理されず、ウィンドウが他のウィンドウに隠されて
無効化領域が出来た際に、再描画されずに
その部分が白くなってしまう事にある。
俺はまだ始めたばかりでAGKのア―キテクチャを知らないから
どうしようも無いが、あれだけ大口を叩いてAGKを持上げている
ダンボ―レがあのようなコ―ドを書いて、平然としているのが理解出来ない。
さらにル―プ処理において、AGKを始めて数時間の俺に
>>87において極めて初歩的なバグを指摘されても、平然としている。
まさにビギナ
そこで、
>>109を修正するとしたら、こう
a as integer
i as integer
a=7
st=timer()
for i=1 to 1000000000
hage(a)
next i
ed=timer()
sync on
do
printc("End a=")
printc(a)
printc(" Processing Time=")
printc(ed-st)
printc("sec")
sync()
loop
function hage(b)
a=b*97797
endfunction
136 :
72:2013/04/29(月) 12:57:38.85 ID:8tJbPs0X
俺のコ―ドもそうなんだけど、ダンボ―レのAGKのベンチマークコ―ドの
致命的な点は、コ―ドの最後において、無限ル―プになっており
この事で、WM_PAINTが処理されず、ウィンドウが他のウィンドウに隠されて
無効化領域が出来た際に、再描画されずに
その部分が白くなってしまう事にある。
俺はまだ始めたばかりでAGKのア―キテクチャを知らないから
どうしようも無いが、あれだけ大口を叩いてAGKを持上げている
ダンボ―レがあのようなコ―ドを書いて、平然としているのが理解出来ない。
さらにル―プ処理において、AGKを始めて数時間の俺に
>>87において極めて初歩的なバグを指摘されても、平然としている。
まさにビギナ―ズの境地である。
プログラムできないコンソーレは、大口とコピペで固めた嘘ばかり
論より証拠、コンソーレからソースコードが出てこない
138 :
72:2013/04/29(月) 13:05:42.41 ID:???
>>135 なるほど!流石ですね
あとhage()の処理も間違っているので、出来ましたら
修正をお願いいたします
139 :
72:2013/04/29(月) 13:29:48.42 ID:???
a as integer
i as integer
a=7
st=timer()
for i=1 to 1000000000
a=hage(a)
next i
ed=timer()
sync on
do
printc("End a=")
printc(a)
printc(" Processing Time=")
printc(ed-st)
printc("sec")
sync()
loop
function hage(b)
b=b*97797
endfunction b
140 :
72:2013/04/29(月) 13:32:31.57 ID:???
これでOKかな?
sync onが、WM_PAINTが届いている時だけに
sync()で再描画するという命令なら、一応完成ですね。
バカかと思ったw
143 :
72:2013/04/29(月) 14:36:39.66 ID:???
>>135 sync on でコンパイルエラーが起きるので、コメントアウトしたら
確かに、再描画されるのですが、CPU使用率が100%振り切りです(>_<)
すぐ悔しい〜♪ すごく悔しい〜♪(ギャハハ!!wwww”
146 :
72:2013/04/29(月) 14:48:21.22 ID:???
>>142 そりゃさ、こっちはもう24時間以上起きっぱなしで
頭も働かなきゃ、始めてから実際に触っているのは
ほんの2,3時間だよ?
そんで、あんたのベンチマークよりよっぽどマシな事してるの。
何度でも言わせてもらうけどさ、>>86-
>>87で
ループ処理でバグっておいて、気づきもしないで
AGKを始めて1時間足らずの奴に突っ込まれて、良く恥ずかしげもなく
巣から出てこられるよな(プゲラ
ヒント: バカにヒントを与えないw
148 :
72:2013/04/29(月) 15:03:58.59 ID:???
ヒントを与える知識が無い
149 :
72:2013/04/29(月) 15:10:09.11 ID:???
>>145 ん?高校時代の彼女に、「包茎ってカワイイ(//▽//)」って言われたよ(マジバナ)
俺、中学からジャニーズ系のイケメンとして女子に騒がれまくって来たから。
それが、どうかしたの?
150 :
72:2013/04/29(月) 15:12:30.85 ID:???
ジャニーズ系のイケメンとか言うと嫉妬メラメラが来るからね。
本当は言いたくないんだけど。
151 :
72:2013/04/29(月) 15:20:13.53 ID:???
>>147 ヒントとかどうでもいいから、あのベンチマークコードでどうやって
コンマ何秒単位まで計れるんですか?
152 :
72:2013/04/29(月) 15:28:43.64 ID:???
BASICは、それまでの人気の高さから、コンパイラが高くて普及しなかったんでしょ?
でもAGKなんて、コンパイラだろうがCの40分の1じゃねーかwww
こんなポンコツ使い物になるかよ。
例えばCPU使用率2%のMP3デコーダをAGKで実装したら、負荷が80%にもなっちまうよwww
153 :
72:2013/04/29(月) 15:32:10.19 ID:???
ダンボーレの書いたベンチマーク用Cコードなんて、時間を計るコードさえ
記述されていないのに、1000分の1秒単位まで計測してるんだもんね
どうしてなのかな?
「 能無しのコンソーレにも扱えるAGK 」
いじりの原則: まず教えないw
>>150 センター街でうんこ座りしてる連中と同じだろw
大勝利♪”
159 :
72:2013/04/30(火) 16:48:52.80 ID:sQQTwjk4
一応、昨日の夜、オンラインマニュアルの一部分だけ読んで
変数や配列や構造体の仕組みがわかったので、ベンチーマークの改訂版として
ソースを再掲載。
こんな事もわからないで、整数にtimer()の返り値を代入して、処理時間を算出しておきながら
結果として、小数点以下の時間を表示しているって、ダンボーレは詐欺師以外の何者でもないね。
知識も能力も知的障害レベルだし。
例え、Cがインタープリタになっても、BASICインタープリタより理論的に高速動作するよ。
こんなCの40分の1の処理速度しか出ない開発環境なんて使いたくないけど
画面表示のアーキテクチャーがどうなっているのか知りたいから、マニュアルを
一通り読んで見るつもり。
AGKをやりたいけど、英語が読めないからって人は、Googleツールバーをインスコして
拡張機能を利用すれば、英単語の上にカーソルを合わせればポップアップで訳を表示してくれるし、
文章全体を選択して、その上にカーソルを合わせれば、かなり高い精度で、高速に日本語に訳してくれる。
AGKをやるのに、99BASICやDarkBASCの知識なんて不要。
a=7
st#=timer()
for i=1 to 1000000000
a=hage(a)
next i
ed#=timer()
rem sync on
do
print("End a=" + str(a) + " Processing Time=" + str(ed#-st#) + "sec")
sync()
loop
function hage(b)
b=b*97797
endfunction b
160 :
72:2013/04/30(火) 16:52:28.50 ID:sQQTwjk4
AGKって、C++での開発も出来るみたいだから、本来はそっちが本流なんじゃないの?
BASICはあくまでAGKに慣れるために、初心者用に、用意してあるだけだと。
こんな状態で「大勝利♪”」と書いてるようじゃ、知的障害確定だよね。
161 :
72:2013/04/30(火) 16:56:04.03 ID:sQQTwjk4
AGKのBASICは、
符号なし変数を扱えないとか、ローカル変数が初期化されているとか
その時点で、オーバーヘッドの塊だしね。
162 :
72:2013/04/30(火) 17:12:31.79 ID:sQQTwjk4
AGKのBASICのフンクションの引数に、大きな配列や構造体を渡したら
どんな事になるのか、そら怖ろしいね
163 :
72:2013/04/30(火) 17:17:16.52 ID:sQQTwjk4
まさか、配列や構造体だけcall by referenceになっているとか?
それを透過的に行っている?
何、その糞仕様。
グローバル変数を使え
165 :
72:2013/04/30(火) 17:26:59.81 ID:sQQTwjk4
どうしようかな?
大きな配列の引渡しでどんな事になるのか面倒だけど実験してみようか。
とりあえず1024*1024の符号付整数の2次元配列でテストしてみるか
面倒な場合は却下。
もしAGKの処理がcall by valueだったら、明日の朝までかかりそうwww
166 :
72:2013/04/30(火) 17:34:42.31 ID:sQQTwjk4
へ?
ファンクション外で宣言した変数は、グローバルになるんじゃないの?
global修飾子の存在意義が、今の俺には理解できない。
グローバルスコープでの自動変数って何?
167 :
72:2013/04/30(火) 17:36:16.51 ID:sQQTwjk4
フンクション内でstatic修飾子の代わりとして、global修飾子?
168 :
72:2013/04/30(火) 17:46:38.38 ID:qRki/k2R
ってか、call by referenceだったとしても
AGKだとフンクション内での、1048576回の乗算を10億回って時点で・・・・
Cでも、かなりの時間がかかりそうなんだけどw
ループを1000回くらいに減らすか?
グローバル/ローカルは、場所でなくて宣言で決まる。
配列と構造体は、初期値でグローバルになってるから、値渡しは不要。
とにかく、やってみ
170 :
72:2013/04/30(火) 17:59:58.02 ID:qRki/k2R
>>169 分割ソースで意味が出てくるってことかな?
とりあえず、AGKからやってみます
171 :
72:2013/04/30(火) 18:03:41.56 ID:qRki/k2R
>>169 あ、分かった。
引数に渡さなくていいという事か。
今回は、AGKのBASICのファンクションのパフォーマンステストのためなので
ファンクション呼び出しの際に、引数に配列を渡します
172 :
72:2013/04/30(火) 19:40:48.55 ID:qRki/k2R
駄目だ、そもそもファンクションに配列全体を渡すことが出来ない。
呼び出し側でループ組んで、配列の値を1つ1つ渡すしかない。
これじゃあ意味が全く無い。
糞だ糞
173 :
72:2013/04/30(火) 19:46:17.33 ID:qRki/k2R
これだから、ポインタの使えないBASICは糞だっての。
自由度が極度に低く、かえって開発効率が悪い。
実行ファイルの処理速度がゲロゲロに遅い上に、自由度も低く
開発効率の悪いBASICなど、頭の悪い奴が使う糞だ糞
大体、符号無し整数もないって時点でオワコン
グローバル変数を使え
175 :
72:2013/04/30(火) 21:16:08.43 ID:qRki/k2R
>>174 ごめんなさい、フンクションの引数と返り値にどうやって配列を使うのか解らないので
しょうがないので、妥協しました。
演算においてコンパイラの最適化を極力避けるために、直値の設定に色々悩んで時間が掛かってしまったけど
一応、この位が俺の思い付く限界ということで。
AGKでの処理時間は約164秒
腹が減ったので、Cでのテストは、飯を食ってからということで。
dim a[1024,1024]
st#=timer()
for z=1 to 100
a[1,1]=2013265919
for j=2 to 1024
for k=2 to 1024
a[j-1,k]=a[j-1,k-1]-64
next k
a[j,1]=a[j-1,1024]-64
next j
for i=1 to 1024
for t=1 to 1024
a[i,t]=hage(a[i,t])
next t
next i
next z
ed#=timer()
rem sync on
do
print("End Processing Time=" + str(ed#-st#) + "sec")
sync()
loop
function hage(b)
b=b*2147221503
endfunction b
176 :
72:2013/04/30(火) 22:02:22.09 ID:0G6gZRqZ
rev sync on (笑)
177 :
72:2013/04/30(火) 22:08:38.58 ID:qRki/k2R
↑コンソーレ?
ついに幻覚が見えはじめたか
178 :
72:2013/04/30(火) 22:10:40.48 ID:qRki/k2R
ループ処理もまともに出来ない奴が、人を笑う資格があるかってのな。
基地外がよ
179 :
72:2013/04/30(火) 22:17:08.62 ID:0G6gZRqZ
Rev Sync On (笑)
180 :
72 ◆/6c/RpHY/o :2013/05/01(水) 01:37:38.96 ID:LtqWcZT2
ごめん、メシ食ったら眠くなって寝てしもうてた
とりあえず、Cでの結果は1.29秒
AGKの約127倍?
同じ目的の処理やっておいて、2桁の速度差ってありえねwwwww
#include <stdio.h>
#include <time.h>
void hage(int b[1024][1024]);
int a[1024][1024];
int main()
{
int j,k,z;
clock_t st,ed;
st=clock();
for(z=0;z<100;z++){
a[0][0]=2013265919;
for(j=1;j<1024;j++){
for(k=1;k<1024;k++)a[j-1][k]=a[j-1][k-1]-64;
a[j][0]=a[j-1][1023]-64;
}
hage(a);
}
ed=clock();
printf("終了 処理時間=%.2f秒",(double)(ed-st)/(double)CLOCKS_PER_SEC);
while(1){}
return 0;
}
void hage(int b[1024][1024])
{
int j,k;
for(j=0;j<1024;j++){
for(k=0;k<1024;k++)b[j][k]=b[j][k]*2147221503;
}
return;
}
181 :
72 ◆/6c/RpHY/o :2013/05/01(水) 01:42:41.32 ID:LtqWcZT2
C言語の127分の1の速度のBASICでなにやるの???
182 :
72 ◆/6c/RpHY/o :2013/05/01(水) 01:44:19.71 ID:LtqWcZT2
A G K ( ≒ コ ン ソ ー ル ) は ク ソ 中 の ク ソ ! ! !
183 :
72 ◆/6c/RpHY/o :2013/05/01(水) 01:50:58.35 ID:LtqWcZT2
あんまり可哀想だから、ファンクション内でグローバルの配列処理してやるか?
大して、変わらんだろうけどwwww
ゴールデンウィークはロードレーサーで、テント宿泊走しようと思ってたけど
完全にAGKのせいで計画が狂ってもうたよ
まあ、色々テストするのって楽しいからいいけど。
184 :
72 ◆/6c/RpHY/o :2013/05/01(水) 02:01:02.12 ID:LtqWcZT2
ちなみに、乗算は気をつけないと、コンパイラやCPUに最適化処理されちゃうからな。
例えば、Y=3*123456789 なんて式は、そのままやると32bitCPU内部で16回の加算が
行われるけど、交換法則により、Y=123456789*3と置き換えられるから、そうすると
2回の加算ですむ。
実際には加算はさらに論理式で表され、論理回路で処理されるんだけど
これは関係ないか。
だから、今回はそういった最適化処理がなるべく行われないように気を使った。
185 :
72 ◆/6c/RpHY/o :2013/05/01(水) 02:17:44.25 ID:LtqWcZT2
やっべ、
>>180の配列の初期化処理、バグってるwww
まあ、速度に大きな影響はないけど。
AGKもCも同じ事やってるから、速度差に関係ないし。
とにかく、処理が複雑になればなるほど、速度差が開いていくよね
24倍、40倍、127倍と。
ようするに、AGKでは極極小規模のプログラムにしなければいけないってこと?
186 :
72 ◆/6c/RpHY/o :2013/05/01(水) 02:32:43.61 ID:LtqWcZT2
そりゃ、約400MBのデータ処理(減算と代入)
さらに1億回の関数(ファンクション)呼び出しと乗算。
これだけの処理をするマイクロソフト謹製のCコンパイラとANSI C言語が
いかに処理能力が高いかって事なんだけど。
どこぞの誰が作ったかわからんような安物似非コンパイラが
太刀打ちできるものかと。
身の程を知れって事だろうな。
だから、世界中のまともな奴は、誰もAGKなど相手にしない。
誰かさんを除いて、誰も話題にしない。
187 :
72 ◆/6c/RpHY/o :2013/05/01(水) 03:08:33.31 ID:LtqWcZT2
おっ!
ダンボーレ喜べ!!
ソースを改良したら、処理時間が133.915秒に
高速化されたぞ!!!
名誉挽回だ!
流石はAGK、やれば出来る子じゃないか!
これでもまだ、Cとは104倍ほどの速度差があるがwwww
188 :
72 ◆/6c/RpHY/o :2013/05/01(水) 03:15:47.75 ID:LtqWcZT2
改良版、AGKソースコード
dim a[1024,1024]
st#=timer()
for z=1 to 100
a[1,1]=2013265919
for j=2 to 1024
for k=2 to 1024
a[j-1,k]=a[j-1,k-1]-64
next k
a[j,1]=a[j-1,1024]-64
next j
hage()
next z
ed#=timer()
rem sync on
do
print("End Processing Time=" + str(ed#-st#) + "sec")
sync()
loop
function hage()
for i=1 to 1024
for t=1 to 1024
a[i,t]=a[i,t]*2147221503
next t
next i
endfunction
189 :
72 ◆/6c/RpHY/o :2013/05/01(水) 03:28:46.31 ID:LtqWcZT2
ファンクションの呼び出しに引数使わないって、なんか反則だよね〜
だってCの方は、ちゃんと引数渡しているんだしさあ
使ったら遅くなるから使わないって、鬼ごっこだとなんて言うんだっけ〜?
鬼に捕まっても、捕まってないことにしてもらえる子のことw
∩___∩ /゙ミヽ、,,___,,/゙ヽ
| 丿 ヽ i ノ `ヽ'
/ ○ ○ | / `(○) (○)´i、 先生助けてっ!、
| U ( _●_) ミ 彡,U ミ(__,▼_)彡ミ チョンソーレが息をしてないのっっ!!
彡、 |∪| ,,/ ,へ、, |∪| /゙
/ ヽ ヽノ ヾ_,,..,,,,_ / ' ヽノ `/´ ヽ
| ヽ ./ ,' 3 `ヽーっ / |
│ ヾ ヾl ⊃ ⌒_つ ソ │
│ \__`'ー-⊃⊂'''''"__,,,ノ |
191 :
72:2013/05/01(水) 05:54:28.20 ID:megwRZBw
[参考] ベンチマーク - FOR-NEXT10億回ループ ver1.04
(表1)ベンチマークテスト結果(数字が小さいほど速い)
MASM32 Visual Visual Visual Java Dark AGK Basic4GL 99BASIC
Basic C++ C# Script BASIC
----------------------------------------------------------------------------------------------------
PC(CeleronD2.66GHz)[sec] 0.7828 2.445 2.821 3.973 7.772 20.853 65.423 285.703 1532.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 1.0 3.123 3.604 5.076 9.928 26.638 83.575 364.975 1957.0
----------------------------------------------------------------------------------------------------
Nexus7(Tegra3)1.3GHz[sec]. ----- ----- ----- ----- 36.480 ----- 320.18 ----- -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率. ----- ----- ----- ----- 46.601 ----- 409.01 ----- -----
----------------------------------------------------------------------------------------------------
iPhone4S(Cortex-A9)800MHz[sec] ----- ----- ----- ----- 36.521 ----- (※注) ----- -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 ----- ----- ----- ----- 46.654 ----- (※注) ----- -----
----------------------------------------------------------------------------------------------------
(※注)iPhone版AGKターゲットエミュレーターはビデオストリームのため除外。
- - - - - - -
(表2)ランキング表(数字が小さいほど速い)
開発環境 タイム MASM32を1とする
[sec] 相対倍率
-----------------------------------------------------------------
PC(CeleronD2.66GHz). MASM32. 0.7828 1.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). Visual Basic. 2.445 3.123
PC(CeleronD2.66GHz). Visual C++ 2.821 3.604
PC(CeleronD2.66GHz). Visual C# 3.973 5.076
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). JavaScript 7.772 9.928
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). DarkBASIC 20.853 26.638
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Nexus7(Tegra3)1.3GHz JavaScript. 36.48 46.601
iPhone4S(Cortex-A9)800MHz JavaScript. 36.521 46.654
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). AGK 65.423 83.575
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). Basic4GL. 285.703 364.975
Nexus7(Tegra3)1.3GHz AGK. 320.187 409.01
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). 99BASIC. 1532.0 1957.0
-----------------------------------------------------------------
192 :
72 ◆/6c/RpHY/o :2013/05/01(水) 06:11:41.24 ID:1b7svxe0
>>191 キチガーレの妄想ベンチマーク乙
オマエが、まず作ってみないとなとか、DarkBASICをやった事がないと
日本語マニュアルがあっても、AGKは出来ないよとかほざいてたから
99BASICもDarkBASICも全くやったことの無い俺が、マニュアルも
まともに参照せずに、3、4時間程度でお前より100万倍信頼性の高い
ベンチマークしてやったよ!!!!
AGKはCの100分の1以下の処理速度!!!!
こんなゴミは、てめえの腐った脳みそと一緒に窓から投げ捨てろボケ!!!!
トリップ出してみろや低能が!!!!!wwwwwww
193 :
72 ◆/6c/RpHY/o :2013/05/01(水) 06:15:15.30 ID:1b7svxe0
>>191 誇大妄想に被害妄想、典型的な糖質の陽性症状だよ
はよう病院行け気違い野郎がwwwwwww
194 :
72:2013/05/01(水) 06:15:38.16 ID:megwRZBw
C爺、敗れる
195 :
72:2013/05/01(水) 06:47:24.21 ID:megwRZBw
>PC(CeleronD2.66GHz). MASM32. 0.7828 1.0
>PC(CeleronD2.66GHz). Visual C++ 2.821 3.604
C爺の負けw
196 :
72 ◆/6c/RpHY/o :2013/05/01(水) 07:04:03.66 ID:1b7svxe0
>>195 あのさあ、どうやって、Visual C++の処理時間を1000分の1秒単位まで出したのか
ソースコードを公開してよ。
何度も言っているけど、あんたのやった空ループなんて10億回どころか
1京回やったって、ノータイムで処理が終わるよ?wwwww
確認済みだけど、100分の1秒もかかりませんからwwwww
0.00秒ってなるんですけどwwwwwww
妄想ベンチ乙wwwwwwwwwwwwwwwwwwwwww
197 :
72 ◆/6c/RpHY/o :2013/05/01(水) 07:12:33.42 ID:1b7svxe0
あとさ、
>>180でやっている処理をMASMで書いてやってみなよ。
断言してやるけどさ、絶対に、あんた程度の腕じゃあ天地がヒックリ返っても
Visual C++のコンパイルした実行速度に到底敵わないから。
今時、アセンブリ言語使うのなんて、一部のドライバ等のニッチな世界だけ
なんですけどwwww
俺は、趣味でMASMだけでWindowsアプリケーション作ったりしてるけどなwww
198 :
72 ◆/6c/RpHY/o :2013/05/01(水) 07:16:45.39 ID:1b7svxe0
なにがCはPASCALから派生した言語だよ
お前、マジキチ確定だな
全部、デタラメのいい加減な妄想話。
199 :
72 ◆/6c/RpHY/o :2013/05/01(水) 07:21:26.88 ID:1b7svxe0
ALGOL60の影響を受けて誕生したのがCPL
CPL→BCPL→B→C→K&R・C→ANSI・C
こんな「常識」も知らねーの??????????????
200 :
72 ◆/6c/RpHY/o :2013/05/01(水) 07:40:34.43 ID:1b7svxe0
あとよ、俺、Cしか出来ない人間じゃねーから。
あんたの大好きなBASICも、何もかも、メジャー所は全部押さえてるの。
このPC環境に入れているのがVC++しかねーからC使っているだけで
Windowsだったら、普段はC#。
クリティカルな事をやる時は、CとC++。
COMの実装すんのに、C++で純粋抽象基本クラスを利用して関数テーブルを作って
インターフェイス実装すんのが楽なのよ。
だからC++使うの。OLEも同じ理由。
わかった???
で、A・G・KでCOMコンポーネント作れんの?
A・G・Kならなんでも出来るんでしょ???作って見せてよ
201 :
72 ◆/6c/RpHY/o :2013/05/01(水) 07:55:47.73 ID:1b7svxe0
VC++で空ループを1京回、回して、マルチメディアタイマーで
小数点以下第10位まで計測してやったぞ。
答えは、0.0000000000秒だ
計測不能な速さって事だよ
解ったか、BASIC爺
202 :
まちがって名前消しちゃいました。:2013/05/01(水) 08:29:19.16 ID:LtqWcZT2
∩___∩ /゙ミヽ、,,___,,/゙ヽ
| 丿 ヽ i ノ `ヽ'
/ ○ ○ | / `(○) (○)´i、 先生助けてっ!、
| U ( _●_) ミ 彡,U ミ(__,▼_)彡ミ チョンソーレが息をしてないのっっ!!
彡、 |∪| ,,/ ,へ、, |∪| /゙
/ ヽ ヽノ ヾ_,,..,,,,_ / ' ヽノ `/´ ヽ
| ヽ ./ ,' 3 `ヽーっ / |
│ ヾ ヾl ⊃ ⌒_つ ソ │
│ \__`'ー-⊃⊂'''''"__,,,ノ |
コンソーレは能無しだよ
それで
AGKは、BASIC版と VC+版が最初からある
DarkBasicProもBASIC版と VC+版がある
好きな方を選べばよい
>>203 で、コンソーレはVC+版が出来ないから、BASIC版(笑)なんでしょw
>>204 コンソーレはプログラムが出来ないタイプ、
そんな出来ない人を救済するのがBASIC言語の役目。
そもそも、知らないのに知ったフリするコンソーレは
典型的なダメ人間で成長しない。
【IT】 「C言語やJavaを使う人は採用しない」「AGKやDarkBASICの方が生産効率が高い」就職活動
http://kohada.2ch.net/test/read.cgi/pcnews/1365242417/139-141 コンソール研究所は13日、C言語やJavaを使う学生を採用しない方針を固めた。
これは昨今のソフトウェア開発現場において社内研修期間を嫌う企業や官公庁の意向を取り入れたもので、
「 卒業=即戦力 」 が求められる新時代への突入を明確にしたものである。
たいていの面接官は ” 学生時代にどんな部活に所属していましたか? ” などと聞くが、それは時代遅れと
なったようだ。
また、C言語やJavaのスキルを問うものに対しても、「 実務経験がなければ意味がない 」 と言う現場の声も
反映した。
コンソール研究所の開発現場から一人の声を拾ってみた。
(以下ソース参照)
208 :
まちがって名前消しちゃいました。:2013/05/02(木) 04:06:31.26 ID:XITUQAKm
VICより古いPCってどんなのがあるの?
…MZ-80KとかPET-2001とかかw
まあMZ-80KはPET-2001のパクリだから、源流はPET-2001ってコトになるよな(笑)
コンソールは一言一言が異次元クラスw
…歴史を辿ってもC言語はないからなw
BASICとアセンブラが源流。
昔のI/O風なら「MZ-80KでWindows8を!」とかw
…ないないw
当時はフロッピーもテキストエディターもロクになかったから開発がやりにくかったんだよ。
MZの頃に望んでいたものは…アセンブラ(マシン語)でプログラムが作れるようになるコトが当時のPCユーザーの目標。
↑これはマイコン世代(PC世代)の発想。
電子工作とアマチュア無線から移ってきた連中はとっとと簡単なBASICに移っていったw
↑これはアホ連中の発想w
電子工作とアマチュア無線も英語が壁になって逃げた人たちがいたねw
>>214 たいていが輸入品だから英語が分かるか、専門知識がないと難しかっただろうね。
PCでも似たような路線でワロタw
/\___/\
/ ⌒ 俺 ⌒ ;\ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| (●), 、(●)、 | | キンタマ中古C言語命!!”
⊂. | ,,ノ(、_, )ヽ、,, | < 今日もキンタマ中古C言語でソース乞食するゾォォオオ〜っ♪”
,r----、__|.Javaト‐=‐ァ' .::::| | 仕事レポート全部くれくれ乞食するぞォォォオオオオ〜っ!”
/Ruby \最強ニニ´ .:::/ \____________________
(ひま,/¬--v \____/⌒\
/⌒ ( ] |丶 ̄ ̄ /丿 丿 ─
(_ _丿 ,ノ--v_\ 糞 ノ ノ ─
 ̄ ノ宿敵 リ--─ーARM八
〔 マシン語 Python__,ノ′ヽ ギブ・ミー・レポート!!!! ギブ・ミー・ソース!!!!
,ノ'' ー--ー┘■■ ̄\ │
/ /  ̄■■■/ \ | #○&#$△#%&$▼&%#!!!!
ノ /]アンチ|■AMD命|\| \\ (↑意味不明w)
| / .| Intel | ) ノ
|/′ | .| |---く
| | \ ] ※)一部見苦しい部分がありますが御了承下さい。
まだコンソールは本気出してないなw
>>213 >アセンブラ(マシン語)でプログラムが作れるようになるコト
アセンブラはアセンブリ言語を機械語に変換するソフトウェアの事。
いちいち馬鹿丸出しwwww
日本でPC-8001とMZ-80が市場を独占していた頃に、
NEC PC-6001と同じ時期にコモドールVIC-1001が日本で発売された。 時は1981年であった。
VIC-1001って通販型の学習教材の専用ハードでよくチラシで見かけたな。
当時のマイコン学習のチラシ見ては欲しかった記憶あり。
ファンクションキーが経て並びで4つぐらいあった記憶あるな。
コモドールのマシンだったんだな。
222 :
72 ◆/6c/RpHY/o :2013/05/02(木) 18:57:21.66 ID:vXCleUb4
あのお・・・コンソールさん???
大変なテスト結果が出てしまったんだけど、ちょっと考えて、あまりあなたを追い詰めるのも
可哀想に思えてきて、俺も鬼じゃないから、これは俺の心の中だけに留めておくよ。
だけど、コンソールさんが精神的に病んでいると言う事は分かったから、
なるべく早く、近くの病院でいいから、精神科を受診することをお勧めするよ。
そういう病気は、放っておくと、どんどん悪化していくらしいから。
色々、追い詰めてごめんね。俺、あんたの事は嫌いじゃないから。
>>200での
>C++で純粋抽象基本クラスを利用して関数テーブルを作って
>インターフェイス実装すんのが楽なのよ。
って表現、取り消し。
これ面倒臭いから、以前に自転車板で、俺のCOMコンポーネントの実装コード
を見せてやった際に、無茶突っ込み入れてきた馬鹿がいて、COMのウンチクを語り出してきて
「C++で純粋抽象基本クラスを利用して関数テーブルを作って インターフェイス実装して」云々のくだりを、
違和感を感じながらも、面倒臭いから、今回コピペしたの。
普段は、抽象基本クラスとか純粋仮想関数とかいう言葉上での表現は意識せずに
過去の経験から、雛形的に作っているだけだから、
そいつの言葉に違和感を感じてはいたけど、そいつの突っ込みの他の所に目を向けていたから
その時はスルーしていたけど、今回よく考えたら純粋抽象基本クラスなんて物は無いわけで
滅茶苦茶な文章だな・・・。
自分の誤りを、人に突っ込みされて言い訳するより、一人ボケ突っ込みして言い訳してる方がよっぽど恥ずかしいんだけど
それでトンヅラしていたら、コンソールと同じ事になってしまうわけで、コンソールの表現が所々、おかしいのが何故なのか
この事でよく解った。
信用のおけない奴の文章のコピペはするなという教訓だ。
そういう意味で、今回コンソールさんには反面教師として、また、処理の最適化という意味で
色々と再勉強させて頂いたのに感謝する。
MASM32での乗算(mul)において、掛けられる側(eaxレジスタ)と掛ける側(他の汎用レジスタ)の値を入れ替えたら
555秒ですんでいた処理が、605秒にパフォーマンスダウンした。
CPUの内部で行われている事を、理論上で考えた通りの結果が出て、非常に勉強になった。
こういう機会がないとなかなか、こういった実験はすることがないから。
同じ処理を、VC++6.0でCで実装したら、処理時間が398秒だったのには非常に驚かされた。
こんなどう考えてもMASM32で全く無駄な事はしていない、最適化など出来るはずが無いと思える最も単純なコードでさえ
VC++6.0のCコンパイラは、MSAM32でのマシン語コードよりも、1.5倍も速い実行コードを作ってきた。
まるで、魔法だ。
機会を見つけて、逆汗してVC++6.0の吐いてきたコードを検証してみたいと思う。
追記になるけど、
この自転車板での相手が、職業プログラマだというのが驚く。
Inside COMで勉強をしたらしく、COM+どころかDCOMさえも知らない。
俺は趣味でやっている、アマチュアだというのに。
>>223 さらに、恥の上塗り。抽象基本クラスより、抽象クラスや抽象基底クラスというべきだよな。
一番恥ずかしいのは俺だ。
Inside COM+には、抽象基本クラスと表現されているから、別にどう言ってもいいのか?
こういう時に、電子ブックは重宝するね。ネットで検索するより、信頼のおける技術書で
調べた方が、信頼性が高いから。
そういった意味で、技術書を電子ブック化して、それに検索をかけるという手法は
最強だな。
Amazonのマーケットプレイスで、時々、「裁断済み」とかいう本を売っているけど
ドキュメントスキャナーで電子ブック化した後の「残骸」を売りに出す人がいるんだね。
そんなのいくらで売れるのかな?
俺は一応、各書籍ごとにビニール紐でしばって、押入れに保管しているけど。
MASM32での乗算の1000億回ループのコード
include c:\masm32\include\masm32rt.inc
.data
.code
start:
print chr$("Start...")
mov eax,7
mov edx,97797
mov ebx,100
hage2:
mov ecx,1000000000
hage1:
mul edx
loop hage1
dec ebx
jnz hage2
print chr$("End")
exit
end start
VC++6.0での、乗算の1000億回ループのコード
#include <stdio.h>
#include <time.h>
int main()
{
int j,k;
int a=7;
clock_t st,ed;
st=clock();
printf("Start...");
for(j=0;j<100;j++){
for(k=0;k<1000000000;k++)a=a*97797;
}
printf("End");
ed=clock();
printf(" Processing Time=%.2fsec",(double)(ed-st)/(double)CLOCKS_PER_SEC);
while(1){}
return 0;
}
229 :
72:2013/05/04(土) 02:24:32.79 ID:???
[参考] ベンチマーク - FOR-NEXT10億回ループ ver1.04
(表1)ベンチマークテスト結果(数字が小さいほど速い)
MASM32 Visual Visual Visual Java Dark AGK Basic4GL 99BASIC
Basic C++ C# Script BASIC
----------------------------------------------------------------------------------------------------
PC(CeleronD2.66GHz)[sec] 0.7828 2.445 2.821 3.973 7.772 20.853 65.423 285.703 1532.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 1.0 3.123 3.604 5.076 9.928 26.638 83.575 364.975 1957.0
----------------------------------------------------------------------------------------------------
Nexus7(Tegra3)1.3GHz[sec]. ----- ----- ----- ----- 36.480 ----- 320.18 ----- -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率. ----- ----- ----- ----- 46.601 ----- 409.01 ----- -----
----------------------------------------------------------------------------------------------------
iPhone4S(Cortex-A9)800MHz[sec] ----- ----- ----- ----- 36.521 ----- (※注) ----- -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 ----- ----- ----- ----- 46.654 ----- (※注) ----- -----
----------------------------------------------------------------------------------------------------
(※注)iPhone版AGKターゲットエミュレーターはビデオストリームのため除外。
- - - - - - -
(表2)ランキング表(数字が小さいほど速い)
開発環境 タイム MASM32を1とする
[sec] 相対倍率
-----------------------------------------------------------------
PC(CeleronD2.66GHz). MASM32. 0.7828 1.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). Visual Basic. 2.445 3.123
PC(CeleronD2.66GHz). Visual C++ 2.821 3.604
PC(CeleronD2.66GHz). Visual C# 3.973 5.076
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). JavaScript 7.772 9.928
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). DarkBASIC 20.853 26.638
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Nexus7(Tegra3)1.3GHz JavaScript. 36.48 46.601
iPhone4S(Cortex-A9)800MHz JavaScript. 36.521 46.654
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). AGK 65.423 83.575
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). Basic4GL. 285.703 364.975
Nexus7(Tegra3)1.3GHz AGK. 320.187 409.01
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). 99BASIC. 1532.0 1957.0
-----------------------------------------------------------------
余談だけど、昨日、Amazonである分野に関する本を探していたら、
100ページの和書が定価29800円で売られていて驚いた。
俺の見た、最高額のコンピュータ関連の技術書。
1ページ当りの価格が298円とは、何が書かれているのか興味深い。
こんなの買う気ないけどw
>>230 おう、元気そうでなり。
しばらく書き込みが無かったから、心配してたよ。
>>230 Mac miniより、絶対にiMacの方がコストパフォーマンス高いと思うよ。
Apple嫌いの俺でも、思わずマジで欲しくなっちゃうくらいw
価格コムで86000円以下の再安モデルでも、NVIDIAのGeForce GT 640Mを搭載しているらしいし
俺は、グラフィックチップ方面には疎いけど、第4世代のCore iは内蔵グラフィックスが
かなり強化されていると言っても、流石に専用チップには敵わないでしょ。
iMacは、Core i5といっても、lvyBridgeのクアッドコアだし、定格で2.7GHz動作だし。
第4世代のCore iって、CPUコアの処理能力は大して向上してないんでしょ?
だったら、3Dゲーム用途に使うんだから、Mac miniのCore i7モデルなんか買うより
多少のCPUの性能差よりも、グラフィックチップの性能が重要なんだし
NVIDIAのビデオチップ搭載でFull HDディスプレイの
現行の価格コムのiMacの再安モデルを買った方がいいと思う。
時は金なりって、言うんだし。
Appleのリンゴは毒リンゴで、拾って食べた乞食が、ひとかじりで死んだから
あのマークになったって、定説?
どうせ他でもハブられてるんだろw
72 ◆/6c/RpHY/o 「 #&%#)&'%#()'$&'#(&)#('&)#$('&〜!!!!!(意味不明w 」
コマンドを選択して下さい
構ってやる
措置入院
> ハブる
通報する
( ̄m ̄)ブッ
ついでにこの板もハブるw
>>236 別にハブられてもどうでもいいんだけど。
俺、普段は全く2ちゃんしないから。
ネットでの付き合いなんて薄っぺらい物なんてのは承知の上だから。
それより、措置入院って何?
>>235-240 = コンソール
>223の結果を受けてどうなの?
ちなみに、MASM32の1000億回の空ループテストの結果は
PentiumM(Baniasコア)1.6GHzで390秒
10億回ループに換算すると3.9秒となって、
>>229の結果から、CeleronD2.66GHzはPentiumMの8GHz相当なんだね。
プレスコットって、もの凄くIPCが高いんだね。
怖れいったよ。
245 :
72 ◆/6c/RpHY/o :2013/05/04(土) 06:18:56.16 ID:6I9VqZ88
246 :
72 ◆/6c/RpHY/o :2013/05/04(土) 06:21:52.76 ID:6I9VqZ88
虚言癖とか、現実逃避もあるようだし。
/\___/\
/ ⌒ 俺 ⌒ ;\ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| (●), 、(●)、 | | キンタマ中古C言語命!!”
⊂. | ,,ノ(、_, )ヽ、,, | < 今日もキンタマ中古C言語でソース乞食するゾォォオオ〜っ♪”
,r----、__|.Javaト‐=‐ァ' .::::| | 仕事レポート全部くれくれ乞食するぞォォォオオオオ〜っ!”
/Ruby \最強ニニ´ .:::/ \____________________
(ひま,/¬--v \____/⌒\
/⌒ ( ] |丶 ̄ ̄ /丿 丿 ─
(_ _丿 ,ノ--v_\ 糞 ノ ノ ─
 ̄ ノ宿敵 リ--─ーARM八
〔 マシン語 Python__,ノ′ヽ ギブ・ミー・レポート!!!! ギブ・ミー・ソース!!!!
,ノ'' ー--ー┘■■ ̄\ │
/ /  ̄■■■/ \ | #○&#$△#%&$▼&%#!!!!
ノ /]アンチ|■AMD命|\| \\ (↑意味不明w)
| / .| Intel | ) ノ
|/′ | .| |---く
| | \ ] ※)一部見苦しい部分がありますが御了承下さい。
VIC-20をdisってんのか?
彼らはBASICから得られた体験を ” タブー視 ” しなければいけないため、常に孤立を要求される。
Linux上で動くBASIC、 FreeBasic が かなり優秀。
モロにハブられててワロタw
252 :
72 ◆/6c/RpHY/o :2013/05/06(月) 00:01:32.43 ID:t2rJ9o6v
他所のチャットで、仲間内数十人がいるところで、「措置入院って何?」って
聞いたら、「知らない」って誰も知っている奴いなかったぞ?
薬剤師の奴もいるんだが、そいつでも知らなかった。
どうやら、一般人は知らないみたいだぞ?
そうなると、
>>246 = コンソールは、措置入院させられて、隔離室とやらにぶち込まれた
マジ基地の経験者か。
キチガイだから、自ら墓穴を掘ったな。
今まで、本気かネタか、判断に困っていたが
どうやら、
>>246のカキコでマジもんの精神病者確定だな。
253 :
72 ◆/6c/RpHY/o :2013/05/06(月) 00:07:17.01 ID:t2rJ9o6v
コンソーレは、無知で コンピュータ雑誌にある単語を並べてるだけ
、実際に使ったことが無いから結果的にウソしか出てこない。
コンソーレを朝鮮人と呼んで欲しいか、精神異常で知恵遅れと読んで欲しいか?選べ
72 ◆/6c/RpHY/o 「 #&%#)&'%#()'$&'#(&)#('&)#$('&〜!!!!!(意味不明w 」
コマンドを選択して下さい
構ってやる
措置入院
> ハブる
通報する
彼らはBASICから得られた体験を ” タブー視 ” しなければいけないため、常に孤立を要求される。
257 :
72 ◆/6c/RpHY/o :2013/05/06(月) 00:32:29.05 ID:t2rJ9o6v
そのチャットで聞いたんだが、重度の統合失調症になると
論理的思考能力が低下して、いくら説明をしても理解出来ないんだと。
例えば、「西暦2000年から21世紀だ」と言い出して、何度簡単に説明しても
ガンとしてそれを受け入れないんだと。
>>86-87 とかのfor - next文が良い例じゃねーの?
俺はC系列の癖が付いているから、通常C系列の言語では
i=0;i<1000000000;i++
などと書くから、その癖でついfor i=0 to 1000000000
などと書いちまったけど、すぐに気が付いて、訂正したよな。
コンソールはBASICを主流で使いながら、こんな単純なバグコード書いておいて
自分で気がつかないって、相当「キテル」んじゃねーの?
俺、肝が据わっているから、警察だろうとヤクザだろうと
基本的に怖いものは何も無いが、熊と野犬とマジ基地だけは勘弁だ。
何をされるか想像がつかねーからな。
だから、もうこいつのいるスレには書きこまね。君子、危うきに近寄らずだ。
.
/\___/\
/ ⌒ 俺 ⌒ ;\ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| (●), 、(●)、 | | キンタマ中古C言語命!!”
⊂. | ,,ノ(、_, )ヽ、,, | < 今日もキンタマ中古C言語でソース乞食するゾォォオオ〜っ♪”
,r----、__|.Javaト‐=‐ァ' .::::| | 仕事レポート全部くれくれ乞食するぞォォォオオオオ〜っ!”
/Ruby \最強ニニ´ .:::/ \____________________
(ひま,/¬--v \____/⌒\
/⌒ ( ] |丶 ̄ ̄ /丿 丿 ─
(_ _丿 ,ノ--v_\ 糞 ノ ノ 今日も見にくい小文字でプログラミングするぞ〜!!(ギャハハ!!wwww”
 ̄ ノ宿敵 リ--─ーARM八
〔 マシン語 Python__,ノ′ヽ ギブ・ミー・レポート!!!! ギブ・ミー・ソース!!!!
,ノ'' ー--ー┘■■ ̄\ │
/ /  ̄■■■/ \ | #○&#$△#%&$▼&%#!!!!
ノ /]アンチ|■AMD命|\| \\ (↑意味不明w)
| / .| Intel | ) ノ
|/′ | .| |---く
| | \ ] ※)一部見苦しい部分がありますが御了承下さい。
.
259 :
72 ◆/6c/RpHY/o :2013/05/06(月) 00:35:23.93 ID:t2rJ9o6v
>>254 俺も最初はただの馬鹿だと思っていたんだが
>>236 で、精神異常者確定だ。
マジ気持ちわりぃ。こんな奴相手にしてたかと思うと
寒気してくるわ。
コンソーレはマジで、ボケ老人じゃねぇかと思う、若くてボケる人もいるから年齢じゃない
おともだちたくさん
' ヽ
′ ______ ヽ
| ´ ̄  ̄ヽ |
| ´ ヽ |
| | ______/ \___ | |
| | _――――_――――_ | |
| || | ̄ ̄ ̄| | ̄ ̄ ̄| | | |
| | \`――' ハヽ――‐/ | |
| |  ̄ ̄ ̄ |  ̄ ̄ ̄ | | / ̄ ̄ ̄ ̄ ̄ ̄ ̄
| | | | | < リンク先のクソコテだけガードしておけばいいよ ♪
| |\ ヽ_/ /| | \_______
| | |||||||||||||||||||||||| | |
| \ ||| ー――ヽ||| / |
___| \ |||  ̄ ||| / |___
―( | \||||||||||||||||||/ / )―_
 ̄ ヽ ヽ ′ ′ ―
ヽ ヽ ′ ´  ̄―
ヽ `―――――――-‐´ ´  ̄――_
\__―――____/ ― ヽ
__ / B A S I C \ _― ̄ ヽ
― |============| ― ヽ
―――-| ● |――― ̄ |
\__■__/ |
10 ? "3時ちょい前に停電した" & "出た消えた"
20 owatta
コンビーフは敗走したかw
Windows8.1のアナウンス来たね
268 :
まちがって名前消しちゃいました。:2013/06/15(土) 09:46:34.03 ID:jw19vGpy
懐かしい。¥69800だったっけ。
今考えると、どうやって金工面したんかな。
age
(笑)
231 : ◆/6c/RpHY/o :03/11/06 18:05 ID:rHvoZuUj
と
[参考] ベンチマーク - FOR-NEXT10億回ループ(CeleronD2.66GHz) 99BASIC - 1532.0秒
10 DEFDBL A-Z
20 T=TIME
30 FOR J=0 TO 1000000000#
40 NEXT J
50 PRINT TIME-T
参考(Core i7-4770K 3.5GHz) 99BASIC - 481.0秒
[参考] ベンチマーク - FOR-NEXT10億回ループ(CeleronD2.66GHz) JavaScript - 7.772秒
<script>
var t=Date.now();
var j=0;
for(j=0; j<1000000000; j++){}
document.write( (Date.now()-t)/1000.0 );
</script>
参考(Core i7-4770K 3.5GHz) JavaScript - 1.506秒
…複数コアを同時に使ってるかどうかで差が開きやすい。
実測値でCeleronD 2.66GHzの3〜5倍程度、Passmarkで30倍前後(CPU)。
Passmark CPU benchで9,000以上出てればBIOS設定上の問題は特にないと思ってよい。
Passmark CPU 9500前後、Video(Intel HD 4600) 3D 600前後、2D 800前後。
だいたい標準値。
Intel HD 4600は、Geforce GT610の10倍程度の表示能力。
16×16×16ボクセルの3Dオブジェが512個で60fps程度。
…では続き。
実行画面
http://upload.saloon.jp/src/up4957.jpg プログラム
http://upload.saloon.jp/src/up4958.zip Core i7-4770K + Intel HD 4600でどこまでできるか?…やってみなきゃ分からないw
今回は3Dオブジェの表示テスト。
16×16×16ボクセルの3Dオブジェが512個、60fpsで動き回る。
DarkBASIC Professional で作成。
ZIPファイルの中に実行ファイルが入ってるから 迷 わ ず ク リ ッ ク すればよいw
60fps出てれば問題ない(笑)
条件は…Windows8 Pro 64ビット以上、DirectX9.0(dxdiagで確認)以上、1920×1080以上のディスプレイ。
プログラムの終了はESCキー。
SmartScreenフィルターに引っかかった場合は 「 詳細情報 」 をクリックすれば 「 実行 」 ボタンが出てくるのでクリック
すればよい(笑)
# Intel HD 4600は3DでGeforce GT320〜GT430程度のスピード、2D限定ならGTX550Tiを超える。
278 :
まちがって名前消しちゃいました。:2013/09/01(日) 02:34:32.74 ID:qCC8SpSZ
あったあああああああやっとみつけました助けてください
やっぱ水冷にしたほうがいいすかねえ
トニー東海は西海岸にでも居るのかな?