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

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

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

319 :ナイコンさん:2015/02/15(日) 19:42:25.70 .net
>>317
>>304が突然言い出した「素の Z80」の定義がまずないとどうしようもないね

320 :ナイコンさん:2015/02/15(日) 19:46:51.55 .net
>メインメモリーにアクセスできないといけないからそれなりに pin 数いるし、>>290 によると機能が DMA 程度らしいからロジックは単純
>でもメイン CPU とのバス調停のためにメイン CPU 待たせたくないからタイミングはハードの方が楽かと

メガドラみたいな構成を勝手に想像してんのかねw

321 :ナイコンさん:2015/02/15(日) 19:49:38.11 .net
>>319
俺は型番に Z80 が入ってる奴だと思うよ
君の定義は違うかも知れんが

322 :ナイコンさん:2015/02/15(日) 19:52:00.70 .net
>>321
NMOS版Z80CPUの型番がZ8400に変更された時点でZ80ではなくなったという主張ですか?

323 :ナイコンさん:2015/02/15(日) 19:52:47.48 .net
>>320
> メガドラみたいな構成
がなにもんか知らんからなんとも言えんわ
○○な構成だから△△は要らんだろとか、具体的に頼むわ

324 :ナイコンさん:2015/02/15(日) 19:53:44.70 .net
>>321
ザイログが

http://www.mouser.com/catalog/supplier/library/ZilogZ8400Z84C00.pdf
> Z8400/84C00
> NMOS/CMOS Z80 CPU
> CENTRAL PROCESSING UNIT

って言ってるのにZ80ではないということ?

325 :ナイコンさん:2015/02/15(日) 19:54:04.83 .net
>>322
俺的には「素」ではなくなったと言う理解ですよ

326 :ナイコンさん:2015/02/15(日) 19:55:43.17 .net
>>321
>俺は型番に Z80 が入ってる奴だと思うよ

>>304以外のナイコンさんがどう思ってようとどうでもいいことですね。

327 :ナイコンさん:2015/02/15(日) 19:58:03.18 .net
>>321
>俺は型番に Z80 が入ってる奴だと思うよ

Z80 PIO はZ80ですよね。

328 :ナイコンさん:2015/02/15(日) 20:09:03.28 .net
>>321
>俺は型番に Z80 が入ってる奴だと思うよ

Z80180やEZ80F91NAAはZ80、Z8400はZ80ではないって言うのかなこのバカは。

329 :ナイコンさん:2015/02/15(日) 21:12:37.54 .net
ああすまん、もうオリジナルの Z80 と言うことにしとくわ
Z84 シリーズの PCLL とかは想定してたし、Z80 PIO は正直一本取られ
たって感じだけど、Z80180 とか EZ80 とかを洒落で言うならまだしもまじで
煽りに来るやつがいるとはおもえなかったよ w

330 :ナイコンさん:2015/02/15(日) 21:18:45.88 .net
まあまあ、
で、お題「Z80 はオーバースペックか」はどう考えればいいの?
個人的には、EZ80 がでておれば、i8086 なんて消えていたと思うんだが、EZ80 っていつのチップ?

331 :ナイコンさん:2015/02/15(日) 21:25:28.88 .net
eZ80のこと訊いてんの?

332 :ナイコンさん:2015/02/15(日) 21:34:42.92 .net
インテルが8086/88出したのに近い時期のザイログの製品はZ8001/2

333 :328:2015/02/16(月) 08:38:33.10 .net
PCLL じゃねー、PLCC だな...

334 :ナイコンさん:2015/02/16(月) 09:42:31.50 .net
当時安く調達出来たもんで作ったでいいじゃんもう。

335 :ナイコンさん:2015/02/16(月) 15:59:11.58 .net
>>290
>>       サウンド:Z80 (@ 4MHz) x2
>>サウンド  YM2203 x2
>>       MSM5205

サウンドのメーンのZ80は二つのYM2203の制御とサブのZ80に鳴らすべきADPCMの音を指示し、
サブのZ80は指示された音のADPCMデータをMSM5205に定期的に送り込むような構成だとしたら
サブのZ80は無駄っぽい気はする。
ダライアスのADPCMはどれくらいの周波数で鳴らしてるのか知らんけど、仮に8kHzとして
ADPCMデータを送り込む処理一回を多めに見積もって100クロックで計算すると800kクロック、
4MHzのZ80の20%の処理食う計算になるけど、Z80一個をそれ専用に割り当てるほどの処理とは
言えない。メーンのZ80一個でがんばれるんじゃないの。
まーサウンドメーンのZ80のROM容量とADPCMデータの容量もわからんから処理量だけでは
どういうのが最適だったかはなんとも言えんけど。

336 :ナイコンさん:2015/02/16(月) 16:03:42.39 .net
元々なんか役目があったけどRAMケチったとかなんじゃね?

337 :ナイコンさん:2015/02/16(月) 16:12:40.77 .net
左右別なんじゃね?>Z80

338 :ナイコンさん:2015/02/16(月) 17:33:31.73 .net
技術コラム(1) RAMなしマイコン基板
http://namtec.biz/tech01.htm

ソースも公開とは太っ腹

339 :328:2015/02/16(月) 19:46:51.38 .net
>>335
当時の CPU を買い被りすぎ
Z80 は1命令最低4サイクルで、8とか16サイクルの奴がごろごろしている
平均10とすると10命令だから意外にきつい
あと、他の仕事もさせるなら割り込みでやる必要があるがその制御回路も必要だしね

340 :ナイコンさん:2015/02/16(月) 20:16:31.70 .net
>>339
割り込みにNMIを使って、裏レジスタはNMI専用に使うとして、単純にROM読んでポートに書くだけで

NMI:
EX AF.AF'
EXX
OUTI
EXX
EX AF.AF'
RETN

4+4+16+4+4+14=46(Cycles)

こんなもんだからNMI受付に要する分と他処理加えたところで100クロックってのはまあそんなひどい
見積もりでもないだろ。

341 :ナイコンさん:2015/02/16(月) 20:32:36.80 .net
>>338
うひゃ!これはまた眼福ものですな

342 :ナイコンさん:2015/02/16(月) 20:33:54.85 .net
DE'にADPCMデータの長さ入れて0になったら再生停止のコード入れてみたが

NMI:
    EX AF.AF'
    EXX
    LD A,H
    OR L
    JR Z,EXIT
    OUTI
    DEC DE
    LD A,D
    OR E
    JP NZ,EXIT
    LD H,A
    LD L,A
EXIT:
    EXX
    EX AF.AF'
    RETN

4+4+4+4+7+16+6+4+4+10+4+4+14=85(Cycles)

工夫しないコードでこんなもんだなあ。
OUTIでB'がデクリメントされること利用してデータの長さをDE'じゃなくてD'B'とかに持ったら
もちょっと短くなるかな。

343 :ナイコンさん:2015/02/16(月) 20:38:08.51 .net
>>329がニワカすぎてこのスレを見るのが辛い

344 :ナイコンさん:2015/02/16(月) 20:42:18.29 .net
>>339
>あと、他の仕事もさせるなら割り込みでやる必要があるがその制御回路も必要だしね

>>338見たらADPCMのチップMSM6585?の~VCKに74一個使ってNMIに入れてるだけだぞ

345 :ナイコンさん:2015/02/16(月) 20:53:17.93 .net
8080やZ-80の頃ってセカンドソーサなきゃ駄目だろ

俺は一切認めねえが1番取るぜ!ってのは、あの……

346 :328:2015/02/16(月) 21:13:18.77 .net
>>342
メモリーの上位4ビットは無駄でもいいと割り切るわけですね
なるほど

>>344
> >>338見たらADPCMのチップMSM6585?の~VCKに74一個使ってNMIに入れてるだけだぞ

その前にもう一つ 74 付いてるでしょ
回路読めれば、再生開始したらリセットするまでずっと NMI かかりっぱなしになることもわかるはず
って思ったがアーケード基板ならそれぐらいの割り切りもありかも

347 :ナイコンさん:2015/02/16(月) 21:27:46.52 .net
>>346
>メモリーの上位4ビットは無駄でもいいと割り切るわけですね
>なるほど

プログラムの改変や外部回路でなんとでもなるんじゃないの?

348 :ナイコンさん:2015/02/16(月) 21:33:51.10 .net
>>346
>その前にもう一つ 74 付いてるでしょ

この回路図 http://namtec.biz/img/hl400s.gif 中に74は何個使われてるという理解ですか?

ちなみに74てこういうのですよ。
https://www.google.co.jp/search?q=7474&tbm=isch

349 :ナイコンさん:2015/02/16(月) 21:36:04.59 .net
>>338
俺の74LS245は?ってCMOSか。ちぇ。

350 :ナイコンさん:2015/02/16(月) 21:37:40.95 .net
>>346
>メモリーの上位4ビットは無駄でもいいと割り切るわけですね
>なるほど

http://namtec.biz/tech01.htm ではセレクタ入れてるけどね。回路図読めないのかな?

351 :ナイコンさん:2015/02/17(火) 08:48:10.34 .net
>>346
>回路読めれば、再生開始したらリセットするまでずっと NMI かかりっぱなしになることもわかるはず

リンク先できちんと解説してくれてるのにドヤ顔で間違うなよw

352 :ナイコンさん:2015/02/17(火) 12:05:10.48 .net
>>329がニワカすぎてこのスレを見るのが辛い

353 :ナイコンさん:2015/02/19(木) 02:44:10.37 .net
>>352
>ニワカ
328はコーラ瓶が落ちてきて大騒ぎするのをし…

354 :ナイコンさん:2015/02/19(木) 04:14:26.36 .net
>>352
>ニワカ
328は動物の皮や骨を原料として水と共に加熱して作った有機たんぱく質をし…

355 :ナイコンさん:2015/02/27(金) 18:42:34.24 .net
会社にある1984年製の古いNC工作機械(3軸のマシニングセンター)
XYZのサーボモーターを細かく制御して立体的な形状を回転する工具で削り出すやつ、

制御装置はFANUC製で
0.001mm単位の関数計算を、1秒間に何十回も計算してサーボをコントロールしてるようだが
一体どんな超高性能CPUが入っているのかと制御盤を開けてみたら
普通の5MHz位の古いパッケージの8086が、、
こんなので行けるのかと不思議に思ってFANUCのカスタムLSIが点在する基板の周りをよく見てたら
8086の隣に8087が有りましたおめでとうございます

あぁコプロセッサってこんな使い方をする物なんですね
こんな大量な浮動小数点演算、高性能8bitCPU沢山付けても絶対無理だわ

356 :354:2015/02/27(金) 18:52:28.77 .net
ちなみにRAMは32KB位でEPROMが256KB程度か
そして加工プログラム用に磁気バブルメモリーってのが16KB付いている
バックアップ用に電池等一切無いのに電源切っても消えない不揮発性メモリ、古くて凄いこんなの初めて見たw

357 :ナイコンさん:2015/02/27(金) 19:02:24.76 .net
一時期は他のメモリに取って代わると思われてたが
そのままなくなったな

358 :ナイコンさん:2015/02/27(金) 19:33:08.71 .net
8087のデータシートによると
http://pdf.datasheetcatalog.com/datasheets/2300/45014_DS.pdf

8087は8086でのソフトエミュレーションと比べて2桁くらい速い程度の性能だったみたいだから、
5MHzの8087なら500MHz相当の8086があればことたりる計算になるので、

>高性能8bitCPU沢山付けても絶対無理だわ

という程ではないな。
当時の8bitCPUなら数百個、今時の8bitCPUなら数十個あればなんとかなる程度のものだろう。

359 :ナイコンさん:2015/02/27(金) 20:04:52.22 .net
>>>356
> 磁気バブルメモリーってのが16KB付いている

懐かしいな、FM-8 のオプションにもあったな
不揮発で稼働部がないから結構期待されてたけど、アクセスが遅いのが致命的だった

360 :ナイコンさん:2015/02/27(金) 20:33:42.90 .net
>>355
装置廃棄の際はぜひアマゾンマーケットプレイスででお売りください(宣伝w)



…つか387より高価い8087ってなんなんだよ(怒

361 :ナイコンさん:2015/02/27(金) 20:38:44.48 .net
>>355
派生技術つかきばんてきにはは今のネット支えてんよ > 磁気バブル要素

362 :ナイコンさん:2015/02/28(土) 09:04:33.75 .net
バブルカセット付きのFM-8が倉庫に眠っているわ。
FANUC 6-Tって少し前まで使っていたNC旋盤の制御盤にOPでバブルカセットが付けられた
NECのZ-5は8085、マザックのインパルスは486DXが乗っているぞ。

363 :ナイコンさん:2015/02/28(土) 18:42:55.73 .net
歯医者のレセプト計算用のコンピューターでもバブルメモリを使ってたことがあったな。

364 :ナイコンさん:2015/03/07(土) 20:23:33.26 .net
マイコンというと、こんなの出たね。

こどもパソコン「IchigoJam」プリント基板キット
http://akizukidenshi.com/catalog/g/gK-09053/

365 :ナイコンさん:2015/03/07(土) 20:31:14.22 .net
こどもパソコンと言いつつ反応するのはオッサンばかりだろう

366 :ナイコンさん:2015/03/07(土) 21:38:14.53 .net
PS/2 のキーボードなんてもう持ってないし...
普通に Raspberry-Pi 買うわ

367 :ナイコンさん:2015/03/07(土) 22:02:31.63 .net
全部USBにぶら下がってるだけなら泥の再生品にOTGケーブルでいいんじゃないか?
タッチパネルとGセンサと無線LANが付いてくるぜ。

368 :ナイコンさん:2015/03/07(土) 22:19:05.51 .net
秋葉原の路上で100円とかで叩き売りしてるだろう >PS/2キーボード

369 :ナイコンさん:2015/03/08(日) 13:56:52.62 .net
>>364
こちらでどーぞ
http://hello.2ch.net/test/read.cgi/i4004/1255278470/

これ方々でみるけどマルチポスト?

370 :ナイコンさん:2015/03/08(日) 20:18:48.27 .net
マイコン好きなやつが喜んであちこちに書いてるだけじゃないか?

371 :ナイコンさん:2015/03/08(日) 20:39:00.72 .net
とりあえずI/Oアクセス早い順に並べるとどうなるん?
いちごジャムは無理か

372 :ナイコンさん:2015/03/09(月) 11:07:31.80 .net
>>359
価格が半端ねえ
基板がガーネットだっけ
FANUCの純正バブルメモリーは
更に盛ってあるから確か20万以上したんじゃなかったか
容量キロバイトレベルで

373 :ナイコンさん:2015/03/09(月) 11:09:02.78 .net
>>360
8087ゲットに熱い青春を注いだ人々の汗代さ

374 :ナイコンさん:2015/03/09(月) 13:02:55.32 .net
青春の無駄使いだな
もっといい時間の使い方あったろうに

375 :ナイコンさん:2015/03/09(月) 14:22:11.82 .net
1バイトの青春とかいう言葉があったな。

376 :ナイコンさん:2015/03/09(月) 14:24:10.00 .net
>>374
んー今だから言えるんだろな

377 :ナイコンさん:2015/03/09(月) 18:26:23.73 .net
>>373
8087ってそんなに手に入りにくい物だったのか?

378 :ナイコンさん:2015/03/09(月) 18:43:52.33 .net
>>377
普通に売ってた。
>>373は値段が高かったと言いたいんでは?

379 :ナイコンさん:2015/03/09(月) 20:31:52.51 .net
>>372
世間で言う「ガーネット(貴石のひとつ)」とは程遠い化学式だけどね ><

380 :ナイコンさん:2015/03/12(木) 02:15:49.91 .net
1,2バイトの演算しか出来ない8bitCPUは
金融や技術に絡む業務用には使えないんだな
今更気づいた
floatとかdoubleとか今じゃ当たり前だけど
昔のマイコンパソコンはint型で精一杯

381 :ナイコンさん:2015/03/12(木) 02:20:28.00 .net
4bitの電卓だって普通に金利計算できるだろ。

382 :ナイコンさん:2015/03/12(木) 03:43:06.39 .net
10進主義キタ━━━━(゚∀゚)━━━━!!

2進だと桁数以前に困るんだよな。たぶんw

383 :ナイコンさん:2015/03/12(木) 04:24:43.18 .net
>>380
>1,2バイトの演算しか出来ない8bitCPUは
>金融や技術に絡む業務用には使えないんだな
>今更気づいた
>floatとかdoubleとか今じゃ当たり前だけど
>昔のマイコンパソコンはint型で精一杯

floatやdoubleで金融計算するの?w

384 :ナイコンさん:2015/03/12(木) 06:14:38.65 .net
PC-8001のN-BASICでも単精度実数、倍精度実数が普通にあったし、
CPUには8080の時代からBCD演算をサポートする命令があった、
ケチケチな6502ですらそういう命令(というかフラグ)があったから、
そういう意味じゃ特に不便なことは無かった。

385 :ナイコンさん:2015/03/12(木) 06:29:19.14 .net
で、floatやdoubleで金融計算するの?w

386 :ナイコンさん:2015/03/12(木) 07:18:40.97 .net
379は一体いつの時代の人間なんだ
マイコン世代にしては言う事がずいぶんズレてるよね

387 :ナイコンさん:2015/03/12(木) 08:29:11.52 .net
>>385
金融工学とかの統計分野なら浮動小数点も使うかも

388 :ナイコンさん:2015/03/12(木) 08:56:23.87 .net
まあ32bitでも桁数足りんし8bitじゃ無理だね

389 :ナイコンさん:2015/03/12(木) 09:28:55.53 .net
多倍長演算ルーチンがあればいいだけの話でしょ。

むしろ今時の暗号を扱うほうが大変じゃないか?

390 :ナイコンさん:2015/03/12(木) 11:27:30.25 .net
Banker's Roundingつーのが有るんだから、浮動小数点で金融計算していたんだろうな。

391 :ナイコンさん:2015/03/12(木) 14:42:43.58 .net
単なる用語だ >Banker's Rounding

392 :ナイコンさん:2015/03/12(木) 16:42:36.12 .net
>>385
普通は安心安定のBCD型を使うところだけど、
Excelの存在を考えるとdouble型が使われてるケースの方が多いのかも知れんw

393 :ナイコンさん:2015/03/12(木) 17:06:25.11 .net
>>383
キーワード:BCD

394 :ナイコンさん:2015/03/12(木) 17:20:43.12 .net
>>380
CP/MでCOBOLの処理系複数あったけどな

395 :ナイコンさん:2015/03/12(木) 17:37:50.22 .net
>>380
関数電卓より低能なマイコンでアポロは月に行ったのになあ

396 :ナイコンさん:2015/03/12(木) 17:42:03.63 .net
>>395
http://ja.wikipedia.org/wiki/%E3%82%A2%E3%83%9D%E3%83%AD11%E5%8F%B7
http://ja.wikipedia.org/wiki/%E3%83%9E%E3%82%A4%E3%82%AF%E3%83%AD%E3%83%97%E3%83%AD%E3%82%BB%E3%83%83%E3%82%B5#.E6.9C.80.E5.88.9D.E3.81.AE.E3.83.9E.E3.82.A4.E3.82.AF.E3.83.AD.E3.83.97.E3.83.AD.E3.82.BB.E3.83.83.E3.82.B5

397 :ナイコンさん:2015/03/13(金) 12:37:42.12 .net
>>378
> >>377
> 普通に売ってた。
> >>373は値段が高かったと言いたいんでは?
そう
一個10万以上したんじゃなかったか?
休みのバイト代ぶっこんだ人多数

398 :ナイコンさん:2015/03/14(土) 05:31:00.01 .net
>>380
釣り?

それとも実用的なスピードが出せないという話?

399 :ナイコンさん:2015/03/14(土) 05:52:43.05 .net
あんなんに釣られる馬鹿っているんだなあ

400 :ナイコンさん:2015/03/14(土) 10:33:38.38 .net
暇だから構ってるだけだろ

401 :ナイコンさん:2015/03/14(土) 12:46:56.67 .net
誰かが暇かどうかなんて本人以外知りようもないことだけどな

402 :ナイコンさん:2015/03/14(土) 13:58:43.78 .net
スゲー忙しいのににちゃんやってる奴ってそうそういないけどね

403 :ナイコンさん:2015/03/14(土) 16:08:06.39 .net
Twitterの伸びの方がどうかしてる

404 :ナイコンさん:2015/03/14(土) 17:59:47.14 .net
         巛ミヾヾ  \
       /   ミ     ヽ
       f,    ミ       }
     ┏v'┳_━━━ r、    |
     yバノ゙’' ̄ '''  } }゙    }
     ‘ーj`'    :  //   /
      L_ヽ  i  V   /
     ("  ` !      _/
      \ _,. -‐ '  ̄  !_
      /|~   /  ̄    \

    ヒッシ・ダナー [Hissy Danner]
     (1901〜1997 イギリス)

405 :ナイコンさん:2015/03/14(土) 23:10:48.33 .net
>>402
スゲー忙しいのに部屋の掃除始める奴とかいるし2chもまた然りだと思うが

406 :ナイコンさん:2015/03/15(日) 05:19:51.73 .net
>>405
そうそういない ≠ いない

407 :ナイコンさん:2015/03/15(日) 15:31:31.25 .net
>>402
「いないこともない」って主張なら投稿自体が意味不明w

408 :ナイコンさん:2015/03/15(日) 17:33:56.95 .net
>>407
そうそういないの意味もわからないのなら黙っていた方がいいぞw

409 :ナイコンさん:2015/03/15(日) 17:54:10.48 .net
> スゲー忙しいのににちゃんやってる奴ってそうそういないけどね

「少しはいる」ことを肯定したうえでの投稿なら投稿自体に意味が無いね。

410 :ナイコンさん:2015/03/15(日) 18:07:33.22 .net
>>409
国語だけでなく、数学も勉強した方がいいぞ...
まあ、このレスの意味すら理解できるか疑問だがw

411 :ナイコンさん:2015/03/15(日) 18:20:00.33 .net
>>402
>スゲー忙しいのににちゃんやってる奴ってそうそういないけどね

そういう奴が少しでもいる可能性を否定しないのなら「だから何?」って話だね。

412 :ナイコンさん:2015/03/15(日) 18:35:50.15 .net
やっぱり理解できなかったんだなw

413 :ナイコンさん:2015/03/15(日) 19:26:29.92 .net
アタマ悪い人の戯言は理解できる方がアレ

414 :ナイコンさん:2015/03/15(日) 20:11:05.86 .net
もう、そう言うしかないもんねw

415 :ナイコンさん:2015/03/15(日) 20:30:11.17 .net
会話が成立しないくらいアレな人に対してはそうですね。

416 :ナイコンさん:2015/03/15(日) 21:26:13.61 .net
>>415
>>414
結局数学の件は反論もできず、撃沈w
かわいそうな人...

417 :ナイコンさん:2015/03/15(日) 21:52:31.49 .net
素性がわからなければ会話にならないのは当たり前だな。
道で通りかかった奴にSEXの拡張が云々と言ってもわかるわけがない。

418 :ナイコンさん:2015/03/15(日) 22:02:38.71 .net
>>416
数学の話をしてるつもりなのって一人だけじゃね

419 :ナイコンさん:2015/03/15(日) 22:12:51.58 .net
>>418
>>412

420 :ナイコンさん:2015/03/15(日) 22:16:26.38 .net
>>419
>>410=>>412=>>414 の一人だけってことね。

421 :ナイコンさん:2015/03/15(日) 22:17:44.48 .net
訂正
誤) >>410=>>412=>>414 の一人だけ
正) >>410=>>412=>>414=>>416 の一人だけ

422 :ナイコンさん:2015/03/15(日) 22:31:25.52 .net
敵は一人だけだと思う病気かよ
病院異って、薬増やしてもらえ

423 :ナイコンさん:2015/03/16(月) 02:28:11.95 .net
>病院異って

424 :ナイコンさん:2015/03/16(月) 05:00:56.35 .net
>>421
一人だけかどうかなんて本人以外知りようもないことだけどな

425 :ナイコンさん:2015/03/16(月) 06:39:56.24 .net
爺しかいないようなこんな板でもにちゃんで誤字指摘する奴とかいるんだな

426 :ナイコンさん:2015/03/16(月) 08:04:23.00 .net
>>424
本人がわかってりゃ十分じゃね

427 :ナイコンさん:2015/03/16(月) 08:14:54.78 .net
>>426
>>401

428 :ナイコンさん:2015/03/16(月) 08:46:14.80 .net
>>427
「暇だから構ってるだけだろ」と言ってる本人が実際に暇だということを
本人だけがわかってたとして何が十分なの??

429 :ナイコンさん:2015/03/16(月) 12:38:43.57 .net
>>428
それを言い出すと、
>>420-421 の投稿自体に意味がないよね

なんでこんな簡単なことがわからないのか意味不明
マジで、論理的思考能力がないんだろうな

430 :ナイコンさん:2015/03/16(月) 14:04:47.38 .net
>>429
「言ってる本人だけがわかってる」と「言われた本人だけがわかってる」は
全然違うけど何言ってんの??

431 :ナイコンさん:2015/03/16(月) 15:03:45.69 .net
>>430
で、それは本人以外にとって何が違うんだ?
論理的思考能力ないんだから、無理すんなよw

432 :ナイコンさん:2015/03/16(月) 17:48:48.34 .net
>>431
「言ってる本人だけがわかってる」
→本人以外からは本人がどう考えてるかなど知る由もないので影響なし

「言われた本人だけがわかってる」
→本人以外からはたとえ根拠がなくとも「お前は〜だろう?」と訊ねることが
 できる。本人が否定をしなければ事実と察することも可能

433 :ナイコンさん:2015/03/16(月) 20:53:40.79 .net
> 「言われた本人だけがわかってる」
> →本人以外からはたとえ根拠がなくとも「お前は〜だろう?」と訊ねることが
>  できる。本人が否定をしなければ事実と察することも可能

本人既に見てなかったりしたら勝手に否定と察するんだw
そもそも匿名掲示板で、本人に聞くとかアホだろ
回答した奴が本人かどうか確認する方法書いてみ

434 :ナイコンさん:2015/03/16(月) 21:03:49.87 .net
>そもそも匿名掲示板で、本人に聞くとかアホだろ

>回答した奴が本人かどうか確認する方法書いてみ

これで矛盾を感じてないのなら本物のアホ

435 :ナイコンさん:2015/03/16(月) 21:21:22.44 .net
>>433
> 本人既に見てなかったりしたら勝手に否定と察するんだw

本人見てなくて否定もされなければ事実と察するんじゃね?頭大丈夫?

436 :ナイコンさん:2015/03/16(月) 21:21:48.83 .net
どこがどう矛盾してるか書かないと、負け犬の遠吠えにしかなってないぞw

437 :ナイコンさん:2015/03/16(月) 21:24:26.22 .net
>>435
勝手に察して満足ならそれでいいんじゃね?
なんの意味があるのかは知らんけど

438 :ナイコンさん:2015/03/16(月) 21:54:57.90 .net
>>436
本物のアホw

439 :ナイコンさん:2015/03/16(月) 22:12:39.98 .net
>>438
負け犬の遠吠乙

440 :ナイコンさん:2015/03/16(月) 22:23:37.24 .net
しかしここにいるのは負ける前に勝負から逃げる連中ばかりで…

441 :ナイコンさん:2015/03/16(月) 23:14:28.27 .net
なんか知らんが粘着してる奴はやはり暇なんだろ
本人は忙しいつもりなんだろうけどな w

442 :ナイコンさん:2015/03/18(水) 01:35:15.03 .net
>本人は忙しいつもりなんだろうけどな w

>>400本人は「自分は暇だ」と言ってるんではないかな

443 :ナイコンさん:2015/03/18(水) 06:40:56.85 .net
まだ粘着してるのかよ、夜中までご苦労なことだな

444 :ナイコンさん:2015/03/18(水) 23:10:24.59 .net
朝早くにご苦労だなあw

445 :ナイコンさん:2015/03/19(木) 07:32:57.29 .net
相当悔しかったんだろうな...
普通、丸一日あけば冷静になっていちいち粘着なんてしないもんだが w

446 :ナイコンさん:2015/03/19(木) 12:35:43.53 .net
毎日朝から2chかあw

447 :ナイコンさん:2015/03/19(木) 13:28:36.13 .net
目糞が鼻糞笑ってるとかw
爺同士仲良くしろよ

448 :ナイコンさん:2015/03/19(木) 14:39:48.90 .net
その会話をアセンブリ言語でやれば板らしくなる

449 :ナイコンさん:2015/03/20(金) 00:01:58.27 .net
0x76 (z80)

450 :ナイコンさん:2015/03/20(金) 01:41:14.72 .net
𠗖

451 :ナイコンさん:2015/03/20(金) 02:11:29.45 .net
>>446
今日もどこかで小野みゆき

452 :ナイコンさん:2015/03/20(金) 07:49:56.90 .net
>>449
6809, 6502 にはその手の命令ないんだな...

453 :ナイコンさん:2015/03/20(金) 14:32:48.91 .net
>>452
BRKだろ?

454 :ナイコンさん:2015/03/20(金) 14:54:24.27 .net
6809のSYNCやCWAIは似てるが6502のBRKは全然違う

455 :ナイコンさん:2015/05/16(土) 04:31:44.82 .net
皆は8bit世代のマシンが残念だった原因がLSIの設計にも問題があると知らないだろうな。
6502や8080は初期はNMOS設計でこれは製造や速度面で有利ではあったものの
NMOSロジックの電気的特性に問題があって片側をVddに接続してロジック動作させる回路は
長時間触れるようなパソコンや子供向けのゲーム機やおもちゃの機械に使うべきではない。

早くからCMOS版の8086,68k,6502や6809や8080やZ80や周辺VLSIが存在していて使われていたらバス設計も違っていて
こんな残念なCPUにはなっていなかったのではないかと思う。
この世にPMOS設計のロジックが実在したならロジック回路も今とは違って不思議な世界になっていただろう。
CPUや周辺LSIのNMOS/CMOSの設計の違い判る人は殆どいないだろう。
今レトロで古い設計のCPUを使うのであればハードはCMOSを前提とすべきだ。
NMOSは絶対に使ってはいけない。

456 :ナイコンさん:2015/05/16(土) 04:43:37.08 .net
2チャンネルの荒らししか居ないような場所に落書きとして書くことは無意味だししたくないのだが、
PMOS設計のLSI設計技術とそれが作るロジックゲート(74??など)とデジタル回路が
失われた重要で貴重なロストテクノロジーであると気づく人はいない。
あなたがたは失われたもう一つのデジタルの世界を知らない。

457 :ナイコンさん:2015/05/16(土) 06:33:35.87 .net
春…というよりは夏の陽気の昨今、朝から凄いのが湧きましたよww

>NMOSロジックの電気的特性に問題があって片側をVddに接続してロジック動作させる回路は
>長時間触れるようなパソコンや子供向けのゲーム機やおもちゃの機械に使うべきではない。

>この世にPMOS設計のロジックが実在したならロジック回路も今とは違って不思議な世界になっていただろう

>PMOS設計のLSI設計技術とそれが作るロジックゲート(74??など)

とりあえず、以上3点詳しく解説頼むw

458 :ナイコンさん:2015/05/16(土) 07:29:14.92 .net
ハイサイド接続のことを言ってるんじゃないの?

459 :ナイコンさん:2015/05/16(土) 07:49:24.84 .net
>PMOS設計のLSI設計技術とそれが作るロジックゲート(74??など)

PMOSはi4004とかかな〜
旧74??は基本バイポーラTTL(回路的にはDTLっぽい奴もあるけど)で、MOSでさえねぇわ!!!

誘い受け?

460 :ナイコンさん:2015/05/16(土) 09:51:50.36 .net
ECL について語ってもいい?

461 :ナイコンさん:2015/05/16(土) 14:03:26.49 .net
いや、ここはI2Lで
どうしてもと言うならPECLかLV-PECLで

462 :ナイコンさん:2015/05/23(土) 19:06:20.65 .net
もう現れないのかよ
何でNMOSプロセスだとCPUが残念になるのか、なぜPMOSやCMOSだと残念じゃないのか
ご高説を賜れると思ってわくわくしていたのに…ひどい奴だ

463 :ナイコンさん:2015/05/24(日) 00:19:54.12 .net
それを書いた本人ではないけど
おそらくNMOSはディプレッション型だから不利なんだろうな

464 :ナイコンさん:2015/05/25(月) 21:59:49.24 .net
CMOS以外は、基本オープンドレイン+付加抵抗(ディプレッション)で
内部ロジック回路全面に於いて、TrがONの場合は常に電流が流れる構造
当然、立ち上がり/立下りの速度さも大きい。

あと、端子出力もHi/Low非対称で、Hiはノイズに弱くて汚い(nMOSの場合、TTL等と同じだね)
でも、ユーザー側から見れば、電気食うのが一番の残念な理由だな。

pMOSは経験無いからチョットわからんけど、基本nMOSと一緒じゃない?

465 :ナイコンさん:2015/05/26(火) 11:57:10.16 .net
wikipediaにもあるけど、
> 過去には、CMOSはMOSFETのゲートを飽和させる状態まで電流を流しつづけなければ
> スイッチングが行われないため、TTLやNMOSと比較し動作が遅いという特徴があった。
> しかし、微細化によるゲート容量の低下とVdd-Vssの低減、
> さらにはゲート誘電体の変更によってこの欠点は克服されている。
ってことだろ、当時の微細化技術ではその欠点を克服できなかった。

466 :ナイコンさん:2015/05/27(水) 23:55:47.73 .net
PMOSのICについては当時を偲ぶしかないからIC Collection とかを見に行くわけだけど、
やっぱり結構曲者みたいね。

i4004(とそのファミリ)は-15V電源なんだけど、TTLとのインターフェースを目的としてか
Hレベルが-1V、Lレベルは-4Vということで、よく教科書にあるような抵抗負荷のインバー
ター回路による電源フルスイング出力というわけではない模様。
実際にTTLに繋ぐためには電源をシフトさせる必要があり、VSSには+5Vを VDDには-10Vを
接続して動作させるという使い方が一般的だったらしい。
+5VはTTLでも必要だからいいとして、マイナス電源が必要なのは嫌な感じ。
ま、その後のNMOS DRAMプロセスによる3電源よりはマシか…

i8008の記述を見るとバラつきなのか状況によってそうなるのか、電源を
シフトしてもLレベルの電位がマイナスになることがあるようで、クランプ
ダイオードの無い入力に突っ込むと受け側が死ぬこともあるとなっている…

こうまでしても、超遅い4000番CMOSとのI/Fは眼中に無かったということなん
だろうか。

467 :ナイコンさん:2015/05/29(金) 23:26:33.44 .net
>>466
複数電源だと投入順序守らないと壊れたりするから、超面倒だった

468 :ナイコンさん:2015/06/13(土) 14:52:04.88 .net
ありがち
A/D,D/Aなんかでデジタル電源-アナログ電源間で電位差があったり、立ち上がりに
時間差があったりとかでもラッチアップしてみたり。

近いところではXilinxのFPGAにいやらしい電源投入/遮断シーケンスの規定が新設
されたり…CPLDでシーケンスコントロールとか正直勘弁して欲しい。

469 :ナイコンさん:2015/08/13(木) 16:30:05.99 .net
8bitの世界はセルフ開発は基本的に無理だから今でもクロス開発が基本。
80年代のマイコン世代で8bitでセルフ開発できると思いこんでたら残念なCPUになるな。
当時の技術でデュアルコア設計にして、1つをターゲット、2つ目をデバッカ用
機能として動作させる設計でないとセルフ開発は難しい。AppleやMSBASICですら
初期の頃からホスト上で動くエミュレーションで実装作業していたのだから。
彼らが開発に使っていた環境は明らかにモニタなどではない。仮想環境のクロス開発だ。
バスを止めてデバッカCPU側で制御して、アセンブルやコンパイラ機能までデバック側で持たせる。
オブジェクトコードをターゲットにタウンロードする。
これが1台のマシンにないと8bitでまともなセルフ開発機能を持つコンピュータは残念な存在となるだろう。
インタプリタ言語から先の未来の可能性はない。8bitは基本開発のデバッカのためだけにデュアルコアが必要。

470 :ナイコンさん:2015/08/21(金) 13:59:21.28 .net
まあICEはある意味デュアルコアな構造だったけどね。

471 :ナイコンさん:2015/08/21(金) 16:43:06.77 .net
ターゲット-ホスト環境はデュアルコアとは言わん、相当かけ離れた存在だろ…

472 :ナイコンさん:2015/08/31(月) 13:07:23.03 .net
>>469
STM8S Discoveryの基板にターゲットが8ビットなのに書き込み用の方に
より高級な32ビットのCPUが搭載されている理由がわかりました。
あれはICEとして機能するものだったのですね。
勉強になりました。ありがとうございます。

473 :ナイコンさん:2015/09/03(木) 17:59:32.36 .net
68HC16(6800の16ビット版)と6309(6809の16ビット版)
どっちが良いですか?

474 :ナイコンさん:2015/09/04(金) 20:31:31.29 .net
>>473
むしろ
68HC12(6800の16ビット版)と6309(6809の16ビット版)
どっちが良いですか?
だな

475 :ナイコンさん:2015/09/07(月) 02:11:19.38 .net
68HC12 vs 6309 vs 65816

476 :ナイコンさん:2015/09/07(月) 23:43:32.24 .net
h ttps://twitter.com/quad_luvtrax/status/640740968359038976
> 最初に触ったCPUが6502(RP2A03)だったので、自然に使えました。命令も少なく簡単で直交性が高く(この辺は68系由来ですね)、アドレッシングモードも不自由さは感じなかったです。私の場合、Z80の方が難しかったですね。

h ttps://twitter.com/quad_luvtrax/status/640746133623435265
> 6502は演算はA、他はX,Y。でもTAX命令等があり、どのレジスタも同じように扱えたので、雑なコードでも動くのが良かったですね。Z80はCPUの成り立ちを体系的に勉強していなかったので、レジスタにそれぞれ意味があるのを理解できなかったですね。

477 :ナイコンさん:2015/09/08(火) 00:11:52.67 .net
>命令も少なく簡単で直交性が高く(この辺は68系由来ですね)、

「直交性」の意味を理解してないんだろうね。

478 :ナイコンさん:2015/09/08(火) 01:41:28.15 .net
6502の方がレジスタの特徴ははっきりしてる気がするな。
Z80は8080から入らないと、いまいち分かりにくいのかも。
add a,(HL)やld b,(HL)がOKでadd a,(DE)やld b,(DE)はダメとか、
その辺のことを言ってんじゃないかな。

479 :ナイコンさん:2015/09/08(火) 02:09:54.49 .net
6502ならアドレッシングモードを覚えてしまえば大抵の命令で使えるから
覚えやすいと思う

480 :ナイコンさん:2015/09/08(火) 11:38:12.96 .net
LDX $1234,Y がおkで LDX $1234,X はダメとか、
S は X を経由しないと読み書きできないとか、
X と Y はインクリメント/デクリメントできるのに A はできないとか、
6502 直交性なさ杉。命令数が少ないから覚えやすく見えるだけ。

481 :ナイコンさん:2015/09/08(火) 11:51:44.71 .net
>6502ならアドレッシングモードを覚えてしまえば大抵の命令で使えるから
>覚えやすいと思う

6502知ってればこんなこと言えない

482 :ナイコンさん:2015/09/08(火) 12:25:27.22 .net
LDAと同じオペランドが使える命令はADC, AND, CMP, EOR, ORA, SBCだけ。
メモリにストアする命令では使えないイミディエイトモードを例外と考えると
STAもLDAと同じオペランドが使えると考えられるが、その他データを操作する
命令、ASL, BIT, CPX, CPY, DEC, INC, LDX, LDY, LSR, ROL, ROR, STX, STY
ではLDAと同じオペランドが使えるわけではないので「6502ならアドレッシング
モードを覚えてしまえば大抵の命令で使える」は明らかにデタラメ。

483 :ナイコンさん:2015/09/25(金) 11:56:17.20 .net
Z80/8080/8085最大の必殺技
EX DE,HL
1バイト4クロックで16ビットレジスタを入れ替えてしまう。
この命令をいかに使いこなすかに鍵があったように思う。

484 :ナイコンさん:2015/09/26(土) 11:28:40.10 .net
>>483
レジスタの使い方、処理順、データ構造とかを見直して
出来るだけ使わないように最適化したほうが良いよ。

直交性のあるCPUでは使う必要の無い無駄な処理なことがほとんどで、
処理内容としてレジスタ間のスワップが必要なケース
(例えばHLとDEを比較し小さいほうをDE、大きいほうをHLに返すmin,max処理とか)
なんて滅多に無いし。

485 :ナイコンさん:2015/09/27(日) 21:37:39.29 .net
>>484
> 直交性のあるCPUでは使う必要の無い無駄な処理

直交性のない CPU の話なのに何を言ってるんだ?

486 :ナイコンさん:2015/10/03(土) 22:33:17.14 .net
6809ならな

487 :ナイコンさん:2015/10/05(月) 17:26:53.73 .net
直交性のないMPUの最たるものだけどな >6809

488 :ナイコンさん:2015/10/05(月) 19:04:58.53 .net
直交性のないお前ら

489 :ナイコンさん:2015/10/06(火) 01:22:36.59 .net
またその話題かよ…
懲りないねぇ w

490 :ナイコンさん:2015/10/06(火) 03:26:27.29 .net
そこでSC/MPですよ

491 :ナイコンさん:2015/10/06(火) 21:47:45.18 .net
>>487
ふぅん、例えばどんなところが?
最たるものと言うからには他との比較も交えて具体的に頼むよw

492 :ナイコンさん:2015/10/07(水) 00:40:04.13 .net
6809は直交性とアドレシングモードの多様性がウリだろうが

493 :ナイコンさん:2015/10/08(木) 05:07:52.41 .net
6809の場合Y、Uを使うとプレバイトが付いて遅い命令があるから、
実際にコードを書くときはX,Y,U,Sでそれぞれ特徴が出てくる、
なので直交性があるようなないような感じ?

6809の良いところは強力なアドレッシングモードと5ビットオフセットや
8ビットPC相対などでコードサイズを小さく出来るところだと思う。

同じ64KB空間の中で他のCPUで20KBのコードが15KBで収まるなら、
実質メモリが増えたのと同等の意味がある。

494 :ナイコンさん:2015/10/10(土) 14:09:24.83 .net
MOV meory to memoryもできない6809で命令の直交性語るのはナンセンス

495 :ナイコンさん:2015/10/10(土) 17:04:52.88 .net
> 6809は直交性とアドレシングモードの多様性がウリだろうが

「直交性」の意味分かってないんだろうな。

496 :ナイコンさん:2015/10/10(土) 17:17:27.02 .net
「Z80殿比較における6809の優位性」を語りたい人は
「(Z80に比べれば)直交性が!」っているのが好きみたいよ。

497 :ナイコンさん:2015/10/10(土) 19:09:36.92 .net
Z80と比べて6809はアドレッシングモードの種類が多い分直交性は低いだろう。

498 :ナイコンさん:2015/10/11(日) 00:20:53.71 .net
この人達は 6809 直交性 と入れてググれば直ぐに答の出る話をとぼけているか、もともと呆けている

499 :ナイコンさん:2015/10/11(日) 00:58:11.92 .net
なるほど、ではMOV mem to mem ができるZ80(LDI等々)の直交性について、
ナンセンスでない論議をしようか

500 :ナイコンさん:2015/10/11(日) 13:48:56.12 .net
> この人達は 6809 直交性 と入れてググれば直ぐに答の出る話を

Wikipedia様に書かれてることが正解だ、とか言い出しそうな馬鹿だな。

501 :ナイコンさん:2015/10/11(日) 15:04:51.27 .net
もし Wikipedia に書いてあることが間違いだとわかるならぜひ修正してきてくれ

502 :ナイコンさん:2015/10/11(日) 15:14:24.02 .net
なんで??

503 :ナイコンさん:2015/10/11(日) 17:30:37.09 .net
お前のノーガキが見たいから

504 :ナイコンさん:2015/10/11(日) 19:31:29.20 .net
>>497
なんでアドレッシングモードが増えると直行性が低くなるの?

505 :ナイコンさん:2015/10/11(日) 19:41:07.72 .net
間違ったままだと多くの人がそれを真実だと思い込んでしまい場合によっては後で修正不能になり
嘘の方が真実になってしまうからだ。そういうことは世間一般には沢山あるだろう?

506 :ナイコンさん:2015/10/11(日) 19:42:53.15 .net
> なんでアドレッシングモードが増えると直行性が低くなるの?

「直交性」の意味を理解してないからこその疑問だなw

507 :ナイコンさん:2015/10/11(日) 19:56:24.95 .net
> 間違ったままだと多くの人がそれを真実だと思い込んでしまい

「6809 直交性 と入れてググれば直ぐに答の出る話を」とか言う
一部の馬鹿だけだろ。
自分の頭で考えようとしない脳無しは勘違いさせたままで良かろう。

508 :ナイコンさん:2015/10/11(日) 19:58:20.81 .net
wikipedia様には
> 初期のCPU設計での「直交性」とは、一部の特殊な命令を除いて、
> 命令がオペレーションとアドレッシングモードの組み合わせで表現され、
> その組み合わせに制限がないことをいう。
> 直交性の高い設計としてはVAXが著名である。CISCアーキテクチャの命令体系の特徴の一つとされる。
と書いてあるけど、どこが間違ってるの?

509 :ナイコンさん:2015/10/11(日) 20:29:58.06 .net
なるほど、Z80よりアドレッシングモードの少ない8080はさらに直交性が高かったと。
直交性の順で書けば i8080 > Z80 > 6809 であると。
つまり、1974年の時点で究極の8bitCPUはすでに誕生していたのに、メーカーの
セールストークにまんまと踊らされて新製品をありがたがるミーハーな若造どもは
見ておれんと。いやぁ、含蓄がありますなぁ。

510 :ナイコンさん:2015/10/11(日) 20:54:48.52 .net
逆では?

511 :ナイコンさん:2015/10/11(日) 21:09:05.24 .net
>なるほど、Z80よりアドレッシングモードの少ない8080はさらに直交性が高かったと。

直交性についてはその通り。
8080はMOV M,MがないのとLDAX/STAXがあることを除けばデータ転送命令での
直交性は高い。

512 :ナイコンさん:2015/10/11(日) 21:11:20.68 .net
>つまり、1974年の時点で究極の8bitCPUはすでに誕生していたのに、

直交性が高い→究極の8bitCPU と考える辺り想像の斜め上を行く馬鹿だなw

513 :ナイコンさん:2015/10/11(日) 21:33:28.65 .net
>>508
> 初期のCPU設計での「直交性」とは、一部の特殊な命令を除いて、
> 命令がオペレーションとアドレッシングモードの組み合わせで表現され、
> その組み合わせに制限がないことをいう。

は間違ってるね。
VAXのくだりは合ってるので、違う人が書いたか、よくわかってない人が
書いたんだろうな。

514 :ナイコンさん:2015/10/11(日) 21:36:30.64 .net
>>511
> データ転送命令での直交性は高い。

え〜と、何と何の直交性の話なのかな? w

515 :ナイコンさん:2015/10/11(日) 21:46:48.75 .net
>え〜と、何と何の直交性の話なのかな? w

理解力のない池沼はこれだから…。

516 :ナイコンさん:2015/10/11(日) 22:03:29.86 .net
>>515
> 理解力のない池沼はこれだから…。

そう言うごたくは答を書いてからでないとアホにしか見えないよ w

517 :ナイコンさん:2015/10/12(月) 05:35:45.06 .net
wikipedia様には
> RISCアーキテクチャのCPU設計では、多数の汎用レジスタを持つ。
> どのレジスタでも同等に取り扱える点を指し「レジスタの直交性が高い」と表現する。
ともあるけど、おそらくこっちの直交性のことを6809等にも適用しちゃって「直交性が無い」って
言ってるだけじゃないかな。

518 :ナイコンさん:2015/10/12(月) 05:56:10.11 .net
Wikipedia様に書かれてることは絶対だ、とか思ってそうな馬鹿だなw

519 :ナイコンさん:2015/10/12(月) 06:12:07.21 .net
たしかにwikipediaは間違ってることも多いけど、
この項目については概ね合ってるだろ。

520 :ナイコンさん:2015/10/12(月) 06:21:49.14 .net
>>511
8080のMで使えるのはHL固定でPC(はどうでもいいとしても)BC、DE、SPで指定することは出来ない。
16ビット転送命令になると直交性どころかXCHG、XTHL、SPHL、PCHL、LHLD、SHLDとどれもレジスタ固定w
6809のTFR,EXGの方がよほど直交性があるぞ。

521 :ナイコンさん:2015/10/12(月) 06:29:05.96 .net
> 8080はMOV M,Mがないのと
とかバカなこと言っちゃってる辺りなにもわかって無さそうw

522 :ナイコンさん:2015/10/12(月) 08:37:43.50 .net
> 6809のTFR,EXGの方がよほど直交性があるぞ。

公式には8bitと16bitでちゃんぽんにできないから直交性低いよ。

523 :ナイコンさん:2015/10/12(月) 12:53:48.59 .net
bit長が違うレジスタ間のデータ転送に何か意味があるの?
イミディエイトにストアできないのは直交性が低いって無茶言ってイチャモン
つける人みたいに見えるけど

524 :ナイコンさん:2015/10/12(月) 15:35:54.05 .net
「C言語でキャストって何か意味があるの?」とか言う頭悪い人みたいだなw

525 :ナイコンさん:2015/10/12(月) 16:15:34.64 .net
C言語のキャストはちゃんと意味あるから、君のバカさがはっきりしただけだね

526 :ナイコンさん:2015/10/12(月) 16:24:26.65 .net
>bit長が違うレジスタ間のデータ転送に何か意味があるの?

LEAでアドレス計算して上位バイトをDPに代入したいとか
そういう状況は普通にあるよ。

527 :ナイコンさん:2015/10/12(月) 17:19:03.29 .net
そういうときは
TFR X,D
TFR A,DP
とか、ちゃんと動作が保証された方法でやればいいでしょ。
bit長混在のTFRやEXG命令を「無いもの」とした判断を責めるには弱いよ。

528 :ナイコンさん:2015/10/12(月) 17:39:26.84 .net
直交性の話なのに理解できてない池沼がいるなw

529 :ナイコンさん:2015/10/12(月) 17:55:17.22 .net
自己紹介か

530 :ナイコンさん:2015/10/12(月) 20:39:22.61 .net
>>528
>>523

531 :ナイコンさん:2015/10/12(月) 22:44:15.72 .net
そもそも直交性って、アセンブリの話じゃなくて機械語コードの話じゃないの?
いくら対応する命令があったって、いかにも増設しましたみたいな所に
コードが振られてる石の直交性はどうなんだ?

532 :ナイコンさん:2015/10/12(月) 22:52:38.32 .net
>>523-525
SEXの意味は要するにCだよな。

533 :ナイコンさん:2015/10/12(月) 23:25:44.69 .net
>>531
直交は元々幾何学の用語で2つのベクトルが垂直に交わってる状態を言う
これから転じて例えば命令とアドレッシングモードについて命令によって使えるアドレッシングモードがあまり変わらない場合に直交性が高いと言う言い方をする

534 :ナイコンさん:2015/10/13(火) 01:07:01.37 .net
インデックスアドレッシングとレジスタ指定とで実行速度がちょっと異なる程度なら、許容される場合も多い罠
使うレジスタによって命令実行速度が違うとか変な制限がついたり、速度が倍違うとかになっちゃうと、等価ではないって訳で使いにくくはなる罠
Z80のインデックスアドレッシングみたいに他の命令で作った方が速くなるかも?的なのは、あっても滅多に使われない罠
どっかの多段間接アドレッシングなんて、現代的には有害と看做す人も多い罠
でもでも、8bit時代と比べると32bit時代の奴は基本の命令語長が長いから、その分有利だ罠
RISCブーム以降の命令セットは命令長との兼ね合いでアドレッシングモードが簡素化されて考慮されてる奴が多い罠

535 :ナイコンさん:2015/10/13(火) 12:03:35.05 .net
Z80の使ってはいけない命令
IX,IY関連
BIT、SET、RES

536 :ナイコンさん:2015/10/13(火) 12:15:05.39 .net
浜田ー、OUTー

537 :ナイコンさん:2015/10/14(水) 10:03:33.21 .net
使っても良いZ80命令
ED+xxの拡張命令各種
シフト
相対ジャンプ

使ってはいけない命令
ビット操作(論理演算の方が速い)
裏レジスタ関連
IX,IY関連

538 :ナイコンさん:2015/10/14(水) 10:14:23.59 .net
速度重視かメモリ節約で切り分け。

539 :ナイコンさん:2015/10/14(水) 15:40:25.18 .net
>使っても良いZ80命令
>使ってはいけない命令

適材適所の判断ができないから命令単位でしようとするのかな? 馬鹿の考えることはわからんな。

540 :ナイコンさん:2015/10/14(水) 21:36:23.14 .net
知ったかぶりばかりだな

541 :ナイコンさん:2015/10/15(木) 07:45:39.57 .net
ただ煽るだけなら誰でも出来るな。

542 :ナイコンさん:2015/10/16(金) 04:06:33.96 .net
誰でもできることでもやった奴が偉いってのは普通にあるぞ

543 :ナイコンさん:2015/10/16(金) 06:48:53.98 .net
>>539-540 がそれに該当するとは思えないけどな

544 :ナイコンさん:2015/10/16(金) 19:53:47.08 .net
>>542
「誰でもできるけど、誰もやらなかった。それをやったから偉い!」 って事かい
それがいい事なら偉いけど、悪事やくだらない事ならちっとも偉くない

「誰でもできるけど、誰もやらなかった事」
それが悪事だった場合、誰でもできるけど、悪事だからあえて誰もやらなかっただけの事

だから 「誰でもできるけど、誰もやらなかった。それをやった」 といっても
それがいい事なのか悪い事なのかによって偉いかどうかは違ってくる

結局は、いい事をやった人が偉い。
悪い事をやったヤツは悪いヤツ。悪い事をやったヤツは偉くもなんともない

545 :ナイコンさん:2015/10/17(土) 03:00:39.90 .net
Computer Architecture A Quantative Approach 5th Edition
http://booksite.elsevier.com/9780123838728/index.php
Appendix K: Survey of Instruction Set Architectures
http://booksite.elsevier.com/9780123838728/references/appendix_k.pdf

80x86 命令概説の末尾 (p65中ほど)
> As we have seen, “orthogonal” is not a term found
> in the Intel architectural dictionary.
「インテル・アーキテクチャの辞書には直交性という単語はない」と厳しいお言葉w
まあ他のRISC系と比較しての話なので、8080やZ80の頃の議論とは次元が違うかも

VAX 命令概説の末尾 (p84冒頭)
> Orthogonality is key to the VAX architecture;
> the opcode is independent of the addressing modes, which are
> independent of the data types and even the number of unique operands.
「直交性はVAXアーキテクチャの鍵である。オペコードは、データの型や
オペランドの数など各アドレッシングモードと独立である」

実はこの本を見るまでVAXのことを全然知らなかったけど
この体系に少しでも近づけるよう6800や6809は苦労して
設計に詰め込んだのかな、と興味深く感じた

546 :ナイコンさん:2015/10/17(土) 04:59:52.44 .net
>>533
だからニーモックに直交性なんてないだろ。
直交性があるのはオペランド

547 :ナイコンさん:2015/10/17(土) 07:17:22.95 .net
>>546
なにが「だから」なのかさっぱりわからんが、お前は
>> 直交は元々幾何学の用語で「2つ」のベクトルが垂直に交わってる状態を言う
の意味を理解しろよ…

548 :ナイコンさん:2015/10/17(土) 07:38:47.40 .net
>>547
要するに二次元テーブルだろ。
只の単語にそんなものはないっての。

549 :ナイコンさん:2015/10/17(土) 07:51:37.15 .net
日本語なら直交性がありおりはべりいまそかり

550 :ナイコンさん:2015/10/17(土) 08:51:59.18 .net
>>548
> 只の単語
が何を指してるのかわからんけど、アホさだけは伝ってきた

551 :ナイコンさん:2015/10/17(土) 10:25:53.76 .net
ニーモック知らんの?

552 :ナイコンさん:2015/10/17(土) 10:35:20.38 .net
そもそも命令長で区切らないマクロレベルであれば、チューリング完全である以上は直交性は保証される。

553 :ナイコンさん:2015/10/17(土) 10:55:07.94 .net
>>534
実行速度揃えたければNOP入れるとかそれこそインデックス参照使えば?

554 :ナイコンさん:2015/10/17(土) 12:37:31.30 .net
>>551
この流れでそのレスは恥ずかしくね?

555 :ナイコンさん:2015/10/17(土) 12:41:58.49 .net
>>554
説明してみ?

556 :ナイコンさん:2015/10/17(土) 12:47:07.82 .net
頭の中がマトリックスな奴が多いな。
ウイルスだろあれ。

557 :ナイコンさん:2015/10/17(土) 13:56:37.98 .net
>>555
何を説明してほしいんだ?
直交性もニーモニックもググればいくらでも説明が転がってるだろ
むしろ
> だからニーモックに直交性なんてないだろ。
> 直交性があるのはオペランド
の説明がほしいわな

558 :ナイコンさん:2015/10/17(土) 14:05:22.69 .net
機械語の辞書の命令単語、つまり見出し語がオペコードで、それを英訳して略記したのがニーモック
ニーモックは同じオペコードでオペランドが変化するのが直交性

559 :ナイコンさん:2015/10/19(月) 22:34:03.10 .net
>実はこの本を見るまでVAXのことを全然知らなかったけど
>この体系に少しでも近づけるよう6800や6809は苦労して
>設計に詰め込んだのかな、と興味深く感じた

68000かなんかと勘違いしてる?

560 :544:2015/10/19(月) 23:20:08.31 .net
>>559
ああ、すみません。680x0はもちろんですが、6800とかも
http://www.st.rim.or.jp/~nkomatsu/mc680x/MC6800.html
を読んでたら、PDP-11ぽい話が書いてあったので。

6809だとレジスタ修飾+dispやオートinc,decやさらにその間接とか
Z80に比べて圧倒的にアドレッシングモードが豊富で目が回るけど
さらに68020の拡張オペランドの
([bd,An],Xn.z*Sc,od)  bd:ベースdisp An,Xn:レジスタ Sc:スケールファクタ
([bd,An,Xn.z*Sc],od)  od:アウターdisp
こんな複雑なアドレッシング、どういう場合に使うのか
初心者の自分には見当もつかない…

561 :ナイコンさん:2015/10/21(水) 13:16:30.60 .net
>>560
>こんな複雑なアドレッシング、どういう場合に使うのか
>初心者の自分には見当もつかない…

初心者以外の人だって、ほぼ誰も使わない
結局、この直後のRISC運動とMMU普及に伴い
複雑なアドレッシングモードを持つ命令セットは急速に減っていく事になる

562 :ナイコンさん:2015/10/21(水) 21:15:06.29 .net
>>560
構造体と配列が絡んでくると普通に使える場面は出てくる。
この手のアドレッシングは1命令で複雑なアクセスができるという
メリットはあるが、命令コードが長くて遅くパイプライン動作の点で
不利という評価になり廃れていった。MMUは関係ない。>>561は馬鹿。

563 :ナイコンさん:2015/11/09(月) 10:33:38.61 .net
コードが長いってそれ直交性ないだろ。
長くなって構わないならRISC命令組み合わせた等価コードと変わらん。

564 :ナイコンさん:2015/11/09(月) 12:52:57.40 .net
またオレオレ直交性廚かよ…

565 :ナイコンさん:2015/11/09(月) 17:25:55.56 .net
数命令を長い一命令だと言い張れば済む話なら何の意味もない。
マイクロコードも大変だな。

566 :ナイコンさん:2015/11/09(月) 19:19:07.73 .net
>>563
>コードが長いってそれ直交性ないだろ

具体的にどうぞ

567 :ナイコンさん:2015/11/09(月) 19:36:35.05 .net
転嫁するってことは命令コードが長くてとか適当に言っただけなの?

568 :ナイコンさん:2015/11/12(木) 19:51:52.68 .net
解ってないなら書き込まなきゃいいのに

569 :ナイコンさん:2015/11/13(金) 05:47:09.02 .net
「それ」って書いてあるのに「具体的にどうぞ」と聞くってことは、解ってないから書き込んでるんだろう。

570 :ナイコンさん:2015/11/13(金) 10:53:13.22 .net
(香具師の多いスレだなぁ・・・)

571 :ナイコンさん:2015/11/13(金) 20:26:22.37 .net
やっぱり解っていなかった

572 :ナイコンさん:2016/01/21(木) 12:20:31.15 .net
ググると昔は自分でPC作ってた人結構いたんだね。
おれの時代はもうMSXがあったから作るなんて発想がなかった。

573 :ナイコンさん:2016/02/17(水) 19:06:20.13 .net
間接アドレシッング命令が豊富にあっても遅かったらパイプライン化されたら足引っ張るだけだしなぁ。

574 :ナイコンさん:2016/03/05(土) 14:30:44.16 .net
>>573
C++の仮想関数も一種の関節アドレッシングだもんな
あの遅さが問題になって出来るだけ直接呼び出しできるところはそういう風にコンパイルしてるし
昔みたいにCPUの速度=メモリの速度みたいな時代とは違うしな

575 :ナイコンさん:2016/03/06(日) 02:11:15.62 .net
でもRISCは敗北したよ。

576 :ナイコンさん:2016/03/06(日) 07:48:37.44 .net
RISCであるがゆえに負けたわけじゃないだろう

577 :ナイコンさん:2016/03/18(金) 02:24:44.56 .net
まだ元気に生きのこってるし

578 :ナイコンさん:2016/03/18(金) 05:38:40.26 .net
powePCは命令を拡張しすぎた
古い命令を捨てて互換性のない拡張をすべきだった

579 :ナイコンさん:2016/03/18(金) 07:08:48.39 .net
Appleはいつも互換性のない拡張ばかり。まさかPowerPCからx86とは。

580 :ナイコンさん:2016/03/18(金) 18:29:24.76 .net
x86以外はほほRISCな現状。

581 :ナイコンさん:2016/03/19(土) 04:05:49.48 .net
RL78とかRXとか、RISCじゃない国産チップも頑張ってるのにな。

582 :ナイコンさん:2016/03/19(土) 04:30:07.23 .net
>>581
8ビットマイコンとか、特殊用途マイコンとか、ハーバードアーキテクチャとかって、現実問題としてCISCだRISCだ関係あるの?

583 :ナイコンさん:2016/03/19(土) 06:26:14.65 .net
今となってはRISCに性能上のメリットがないからな。
単に設計がシンプルで開発コストが安いから使われてる。ダイソーが流行ってるみたいなものだ。

584 :ナイコンさん:2016/03/19(土) 08:01:09.73 .net
RISC の開発コストが安い?
コンパイラの開発コストも考えないおばかちゃん乙

585 :ナイコンさん:2016/03/19(土) 08:10:19.40 .net
今日び、コンパイラなんて枯れた技術だよ。gccが多くのRISCプロセッサ対応してるだろ。
50円でRISCプロセッサも手に入るし、開発環境はタダ。何が不満なのだ。

586 :ナイコンさん:2016/03/19(土) 09:08:12.99 .net
>>584
いまどき、無の状態からコード書いてるようなコンパイラなんてあるの?

587 :ナイコンさん:2016/03/19(土) 09:15:09.21 .net
>>586
なんでそんな話が?

588 :ナイコンさん:2016/03/19(土) 13:12:21.10 .net
>>582
その辺りのプロセッサは命令の使用頻度も考慮して命令長決めたりしてる感じよ。

589 :ナイコンさん:2016/04/17(日) 17:06:36.56 .net
https://twitter.com/kingshine666/status/721577033273200640
> そうですか、Z80は最強の8ビットとまで言われたCPUで、8ビットCPUとしては私の知る限り最後の物でしたよ。

590 :ナイコンさん:2016/04/20(水) 17:29:55.95 .net
Z80が究極、ですか?
まぁ、Z80しか知らない人ならそうかもしれないですね、

591 :ナイコンさん:2016/04/22(金) 13:42:16.68 .net
当時はシェアこそ力だったからな。8bitではZ80は最強で間違いないだろう。

592 :ナイコンさん:2016/04/22(金) 22:44:40.61 .net
https://twitter.com/madnoda/status/723446117111717888
> 6502を知らん人に
> 6800と言う美しいアーキテクチャのCPUとバス互換の、最少のレジスタと最少に命令セットしか持たない汚いアーキテクチャのCPU
> :
> が、この最少のレジスタと命令セットが後のRISCに繋がる
> ARMは6502とニーモニック互換からスタート
> アップル2も6502

593 :Office & Gamers @ 試験運用中(トリなしw:2016/04/22(金) 23:39:07.07 .net
アーキテクチャは6809、性能は8086、ノウハウはZ80、ファミは6502w

594 :ナイコンさん:2016/04/23(土) 03:35:16.03 .net
筋肉はゴリラ!牙は狼!燃える瞳は原始の炎!

595 :ナイコンさん:2016/04/23(土) 04:02:54.50 .net
顔は猿、胴はタヌキ、手足は虎、尾は蛇、趣味はゴルフ

596 :ナイコンさん:2016/04/24(日) 13:47:00.09 .net
Z80を持った全パソコンvsファミコンって
どっちのが多く売れたんだろう?

597 :ナイコンさん:2016/04/24(日) 15:00:04.04 .net
その比較になんか意味あるの?

598 :ナイコンさん:2016/04/24(日) 16:12:18.39 .net
意味?
そりゃあもちろん、ゲハのニワカでもわかるように
売上話に持ち込んで、このスレを盛り上げるためだよ。

599 :ナイコンさん:2016/04/24(日) 16:29:14.94 .net
6502積んだパソコンに考えが及ばないところがゲハのニワカっぽいな

600 :ナイコンさん:2016/04/24(日) 18:44:15.24 .net
6502積んだパソコンを含めるのは、ファミコンが
負けてからでも遅くはないからねぇ。

601 :ナイコンさん:2016/04/24(日) 21:17:09.04 .net
ファミリーコンピュータ - Wikipedia
https://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%9F%E3%83%AA%E3%83%BC%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF
> 売上台数
> 日本 1,935万台
> アメリカ合衆国 3,400万台
> 世界 6,191万台

TRS-80とMSXとAmstrad CPCとSinclairとその他国産機種が束になっても無理だろ。

602 :ナイコンさん:2016/04/24(日) 21:38:19.73 .net
> 6502積んだパソコンを含めるのは、ファミコンが
> 負けてからでも遅くはないからねぇ。

ファミコンのCPUを6502だとでも思ってるのかな?

603 :ナイコンさん:2016/04/24(日) 23:11:27.36 .net
もしかしたらこのスレで一番頭がおかしいの
おまえだったりしてw

604 :ナイコンさん:2016/04/25(月) 07:12:23.46 .net
あれ?
おれ、ファミコンが6502だなんて言ったっけ?

605 :ナイコンさん:2016/04/25(月) 07:49:56.13 .net
Z80のパソコンvsファミコンとはいってるな。

606 :ナイコンさん:2016/04/25(月) 07:56:54.49 .net
Z80のパソコンvsファミコンとはいったけど、それがなにか?

607 :ナイコンさん:2016/04/25(月) 08:18:57.38 .net
8086, Z80, 6502 を使ってない機器の話はスレチだとは思う

608 :ナイコンさん:2016/04/25(月) 08:52:19.18 .net
ハミコンに勝てるパッソある?

609 :ナイコンさん:2016/04/25(月) 15:36:12.05 .net
>>601
NESに加え大ヒットパソコン、コモドール64、アップルIIにアタリ800もあるしな

610 :ナイコンさん:2016/04/25(月) 21:22:07.60 .net
>>601
あんまり売れてないんだね
今の据え置きにくらべると

611 :Office & Gamers @ 試験運用中(トリなしw:2016/04/26(火) 02:50:02.48 .net
>>609
ファミはファミ(笑)

612 :ナイコンさん:2016/04/26(火) 04:26:53.06 ID:iqmuDCWdo
ファミコン 対 Z80を搭載したパソコン+6502を搭載したパソコン

で比べるべきだよなあ、>>600はキチガイかな?

613 :ナイコンさん:2016/04/26(火) 04:37:36.33 .net
ファミコン 対 Z80搭載パソコン+6502搭載パソコン+その他搭載パソコン

で比べるべきだよな。

> NESに加え大ヒットパソコン、コモドール64、アップルIIにアタリ800もあるしな

とか言ってる奴は頭膿んでるとしか思えんな。NESとC64でCPUが同じわけでもないのだし。

614 :ナイコンさん:2016/04/26(火) 04:43:26.84 .net
昔は面白いマシンいっぱいあったよなぁ
今はただの性能のぶつけ合いになってつまらん

615 :ナイコンさん:2016/04/26(火) 06:59:41.64 .net
>>613
> ファミコン 対 Z80搭載パソコン+6502搭載パソコン+その他搭載パソコン
> で比べるべきだよな。
このスレでそれに意味があると思ってるお前の頭が膿んでるだろ

616 :ナイコンさん:2016/04/26(火) 21:05:26.16 .net
よし、きた、きた。
さあ、盛り上げるがよい。

617 :ナイコンさん:2016/04/26(火) 22:36:10.54 .net
Z80を8080って言うようなもの。μ780をZ80と(ry

ユニークで面白いCPUだとはおもうけどそこまで持ち上げるような物でもないな。

618 :Office & Gamers @ 試験運用中(トリなしw:2016/04/27(水) 02:46:30.29 .net
>>614
今でも充分に面白いけど、簡単な開発ツール類は英語版しかないから、そこが障壁になってるかもしれないなw

>今はただの性能のぶつけ合いになってつまらん

そんなことはないw
99BASICはあるし、DarkBASIC、AGK、DarkGDKもあるし、昔よりはるかに恵まれてるw

619 :Office & Gamers @ 試験運用中(トリなしw:2016/04/27(水) 02:49:42.53 .net
Z80にマルチタスクやれと言っても、スイッチングのオーバーヘッドで意味がなくなる時代だったなw

620 :Office & Gamers @ 試験運用中(トリなしw:2016/04/27(水) 02:55:25.52 .net
俺様的にはZ8000が普及してほしかったなw
慣れたザイログニーモニック。(アハ

621 :ナイコンさん:2016/04/27(水) 16:11:57.55 .net
>>619
リローケータブルなコードを単純に書けないのが大きいとおもう。

622 :ナイコンさん:2016/04/27(水) 16:22:52.22 .net
相対条件ジャンプあるだろ。

623 :ナイコンさん:2016/04/27(水) 17:42:52.65 .net
>>621
リロケータブルなコードとマルチタスクには全く関係が無いように思うが?

624 :ナイコンさん:2016/04/27(水) 17:44:41.02 .net
一人で設計するならそうだろうな。

625 :ナイコンさん:2016/04/27(水) 18:18:28.66 .net
リロケータブルって言葉最近覚えた小学生か

626 :ナイコンさん:2016/04/27(水) 18:27:07.47 .net
8ビットでマルチタスク簡単なのって…

627 :ナイコンさん:2016/04/27(水) 18:39:34.78 .net
あまりOS-9を褒めるなよ照れる

628 :ナイコンさん:2016/04/27(水) 19:44:24.19 .net
>>624
なんかリロケータブルアセンブラのことと勘違いしてないか?w

629 :ナイコンさん:2016/04/27(水) 19:52:24.51 .net
何を言ってるかよく分からないや。
つまり同じアドレスで動く二つのコードをマルチタスクするときは、
タスク切り替えるたびに、コード丸ごと入れ替えるから関係ないと言ってるのか?

630 :ナイコンさん:2016/04/27(水) 19:55:58.95 .net
>>623
どっちかって言うとリエントラントなコードの書き易さの方が関係するよね

631 :ナイコンさん:2016/04/27(水) 19:57:34.63 .net
>>629
> つまり同じアドレスで動く二つのコードをマルチタスクする
お前こそ何を言ってるのかわからんわ

632 :ナイコンさん:2016/04/27(水) 20:03:39.02 .net
>>631
この程度も分からんとはレベルが違いすぎて話にならんな。

633 :ナイコンさん:2016/04/27(水) 20:11:58.43 .net
>>631
おまえリロケータブルの意味を知らなかったというオチかよ。

634 :ナイコンさん:2016/04/27(水) 20:21:51.71 .net
アプリが再配置を配慮しなくてもタスク毎に仮想アドレス空間をw

635 :ナイコンさん:2016/04/27(水) 20:22:27.66 .net
>>629
MMU等でプロセスごとにメモリをマップをするなら、当然
> タスク切り替えるたびに、コード丸ごと入れ替える
ことになるな。

636 :ナイコンさん:2016/04/27(水) 20:35:09.30 .net
Z80にMMUついてないよ?w

637 :ナイコンさん:2016/04/27(水) 20:39:50.82 .net
付けりゃいいじゃん。

638 :ナイコンさん:2016/04/27(水) 20:41:49.30 .net
Z80 で MMU ねぇ
64180 とかの話か?

639 :ナイコンさん:2016/04/27(水) 20:42:53.11 .net
ハードで対応しなきゃいけないなんて、

リロケータブルなコードとマルチタスクは関係大有りですね!!!!

640 :ナイコンさん:2016/04/27(水) 20:43:21.60 .net
>>633
まだリロケータブルとか言ってるアホがいる

641 :ナイコンさん:2016/04/27(水) 20:48:18.29 .net
>>639
> 同じアドレスで動く二つのコードをマルチタスク
ってシンプルなメモリ構成じゃそもそも無理じゃね?
リロケータブルかどうかに関係なく。

642 :ナイコンさん:2016/04/27(水) 20:49:03.48 .net
>>640
今日最高のアホはおまえだな。

643 :ナイコンさん:2016/04/27(水) 20:53:44.39 .net
このスレタイのCPUで、マルチタスクがまともに出来た
パソコンってドンだけあったんだろう?

644 :ナイコンさん:2016/04/27(水) 20:59:51.11 .net
はいはい、6809さいこう、さいこう

645 :ナイコンさん:2016/04/27(水) 21:03:46.89 .net
>>641
リロケータブルのコードって移動できるんだけどw

646 :ナイコンさん:2016/04/27(水) 21:04:00.82 .net
>>642
で、リロケータブルがどう関係するんだ w

647 :ナイコンさん:2016/04/27(水) 21:08:49.64 .net
基本、リロケータブルが何か分かってないんだな。つまりコードを碌に書いたことがないと。

648 :ナイコンさん:2016/04/27(水) 21:24:08.21 .net
マルチタスクってスタックとデータ領域の切替えが・・・

649 :ナイコンさん:2016/04/27(水) 21:27:06.54 .net
音楽鳴りながら敵機が動いて、自機も動かせたら、それもマルチタスク。

650 :ナイコンさん:2016/04/27(水) 21:27:40.95 .net
8086ならまだしも8080やZ80でマルチタスクとか、そんなプログラム書きたくないぞ。
やってできないことはないが、面倒くさすぎる。

651 :ナイコンさん:2016/04/27(水) 21:33:25.72 .net
基本的な事もできないくせに偉そうだな

652 :ナイコンさん:2016/04/27(水) 21:40:53.41 .net
>>645
なるほど、
Z80だとリロケータブルなコードがものすごく書きにくい
→固定アドレスで動かす必用がある
→複数のタスクを同時にメモリ上(の別々の領域に)に置けない
→マルチタスクできない
って言いたかったのかな?

それなら実行ファイルにコード本体とは別にリロケート情報を持って置いて、
それを使ってローダーが再配置すれば解決する話だけどな。

653 :ナイコンさん:2016/04/27(水) 22:31:27.67 .net
>>647
どうでもいいから、関係を説明しなよ w

>>652
> →複数のタスクを同時にメモリ上(の別々の領域に)に置けない
どこからそんなアホな話が出てくるんだよ...
タスクは全部同じアドレスに置かないとダメって思ってるのか?

654 :ナイコンさん:2016/04/27(水) 22:34:05.44 .net
ゲハのニワカにマシン語なんてわかるわけもなく。

655 :ナイコンさん:2016/04/27(水) 22:34:13.52 .net
>タスクは全部同じアドレスに置かないとダメって思ってるのか?

>>647

656 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 02:32:48.91 .net
MSXで言うと、フツーにVSYNCの割り込みフックと、メインルーチンとは別個に動くよなw(モード1)。
タイマー割り込みで時分割するのはそれだけでオーバーヘッドになるw(使えない)。

今ならVC++でも手軽にマルチスレッド使えるし、いい時代だ。(アハ

657 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 02:54:08.63 .net
リローケータブルって言うと、セグメント付きの8086だなw
つーか、物理アドレスをプロシージャー本体が知る必要もなく…w”

658 :ナイコンさん:2016/04/28(木) 04:56:08.93 .net
SP相対のLD命令がないんだよな、Z80。
もうそれだけでマルチスレッドやりたくない。

659 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 06:19:45.99 .net
無理にやらなくていいし、Z80でマルチスレッドはできないよw
Pentium4以降だよw

660 :ナイコンさん:2016/04/28(木) 06:45:27.48 .net
>>655
結局理由は示せない

ってことでいいかな?

661 :ナイコンさん:2016/04/28(木) 08:42:54.46 .net
>>653
> どこからそんなアホな話が出てくるんだよ...
どこからも何も
> →固定アドレスで動かす必用がある
から出てくるんだが…

もしかして、
> →固定アドレスで動かす必用がある
> →複数のタスクを同時にメモリ上(の別々の領域に)に置けない
のつながりが理解できないのかな?

662 :ナイコンさん:2016/04/28(木) 08:53:48.32 .net


663 :ナイコンさん:2016/04/28(木) 08:55:29.79 .net
春だなぁ(笑)

664 :ナイコンさん:2016/04/28(木) 09:00:20.64 .net
例えば、
コードAが1000h〜2fffh
コードBが4000h〜5fffh
コードCが1000h〜3fffh
でそれぞれ動くようになってるときに、
AとB、BとCは同時動かせるけど、
AとCを同時にメモリ上に置いて動かすことは出来ない(MMU等を使えば別)

つまり「事前に」決められたコードの組み合わせでしか実行できない。

もともとリロケータブルなコードならそういう制限は無く、
メモリの許す限り任意のコードの組み合わせを同時に実行できる。

>>621はそういう意味で言ったんじゃないの?

組み込み用途では事前に決められたコードの組み合わせでしか実行できなくても
問題ないことも多いし、そうじゃなくてもローダで再配置すればいいだけだし、
結局リロケータブルなコードが書けるかどうかはマルチタスクとは関係ないんだけども。

665 :ナイコンさん:2016/04/28(木) 10:04:51.86 .net
MSXならスロットの数だけDOSを起動なんて不可能ではなさそう
CUIのウインドウシステムか画面切り替えか

666 :ナイコンさん:2016/04/28(木) 10:12:23.03 .net
>>658
IX使えばいいし、マルチスレッドって4MHz程度の8bitCPUに何をやらせようとしてんだか。

>Z80だとリロケータブルなコードがものすごく書きにくい

これがと言えるならZ80はほとんどのコードは書きにくいだろ。

667 :ナイコンさん:2016/04/28(木) 12:45:21.05 .net
>>661
MMU も持たないシステムで
> →固定アドレスで動かす必用がある
なんてシステムがどんだけあるんだよ...
そんな前提がおかしいとか思わないのか?

668 :ナイコンさん:2016/04/28(木) 12:47:02.24 .net
>>666
> これがと言えるならZ80はほとんどのコードは書きにくいだろ。
>>647

669 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 13:12:39.44 .net
MZ-80K時代にタイムスリップだなw

670 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 13:14:56.30 .net
当時に入れ込んでしまった人たちにとっては、抜けられないトラップかもしれないな…w”
魅惑のZ80(笑)

671 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 13:18:45.50 .net
MZ-80Kが登場したのが1978年、今から38年前かwアハw”
いちおう、ここもピークに相当するけど、これよりさらに前のTK-80、EX-68、L-Kit16もあるからなwwww”

672 :ナイコンさん:2016/04/28(木) 13:54:32.53 .net
>Z80だとリロケータブルなコードがものすごく書きにくい

普通に書けるだろ。この前提でなぜレスが進むんだ。馬鹿なのか。

673 :ナイコンさん:2016/04/28(木) 14:09:05.59 .net
相対分岐が+-127って狭いからなスタックに現アドレス積んで分岐量加算してRETすれば何とかなるのかやったことないけど

674 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 14:42:13.45 .net
>>672ワロタw

そこで感情的になるおまえはアホだなw

675 :ナイコンさん:2016/04/28(木) 15:59:27.77 .net
8086も条件分岐は1バイト内だろ。

676 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 16:06:46.13 .net
セグメントあるから関係ないよw

677 :ナイコンさん:2016/04/28(木) 16:09:43.17 .net
すごい知ったかw

セグメントが何か分かってないwww

678 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 16:28:16.23 .net
そこで感情的になるおまえは無知だなw

679 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 16:29:20.39 .net
1976〜 TK-80 →ハンドアセンブルの勃興w
1977〜 PET-2001、Apple II、TRS-80、L-kit 16、H68TR ←ここがアメリカのピークw
1978〜 MZ-80K、BASIC MASTER LEVEL2 . ┐
1979〜 PC-8001                 ┴→BASICブームw
1981〜 VIC-1001、PC-6001、PC-8801、FM-8、MZ-80B、 ←ここがマイコン時代のピークw
1982〜 PC-9801、COMMODORE 64
1983〜 MSX
1984〜 IBM PC/AT ──────┐
1985〜 MSX2、AMIGA、Atari ST... ┴→ここがアメリカの新御三家w
1987〜 MSX-DOS Tools →ハンドアセンブルからの解放w
      PSAC(コナミ)、X68000 ←アニオタ出現w       ┐
1988〜 SYSTEM II(ナムコ)、ギャラクシーフォース(セガ) ┴→回転、拡大、縮小ブームw
1989〜 FM-TOWNS ←まがい物出現w
1994〜 サターン、3DO、プレイステーション ←キーボードを捨てて養分になった図w
1996〜 Nintendo64
1998〜 ドリカス
      GAME BASIC for SEGASATURN ────┐
1999〜 99BASIC..               ────┤
2000〜 プレステ2 →ソニー=ナムコ王朝w .→ポ . │リゴンブームw →養分から信者へw
      DarkBASIC                   ────┤
2001〜 ゲームキューブ、Xbox             │
      BASIC STUDIO パワフルゲーム工房...   ┴→第二次BASICブーム到来w
2005〜 Xbox360            ─┐
2006〜 Wii、PS3、WindowsVista ┴→旧世代の切り捨てw 
2008〜 DarkGDK →VC++がBASIC並みに簡単に記述可能なゲーム用補助ライブラリーw
2009〜 Windows7
2011〜 AppGameKit →モバイル用の豊富なコマンド群を揃えた簡単な開発ツールw
2012〜 Nexus7、Androidの台頭 →従来のPC/AT機から主流となるプラットフォームへ移管w
      iPad mini →Androidの台頭で焦って出すw       Windows8 →Going My Way(笑)
2014〜 PG278Q →ゲーム用に特化された秒間144コマ出力モニターw
2015〜 Windows10、MenuetOS 64bit版v1.00
2016〜 Raspberry Pi用AppGameKit無料配布開始w http://www.appgamekit.com/agk-pi/

680 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 16:30:22.49 .net
こうして見ると、40年間は長くて短いような…基本的には連続してるよなw

681 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 16:33:57.37 .net
1レスで40年間をまとめる偉業を達成w

682 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 16:36:26.85 .net
な、途中で切り捨てられた連中もいるし、うまいこと乗っかってる奴もいるし、40年間の歴史だなw

683 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 16:37:55.01 .net
今日は ” マイコン40周年の日 ” に制定しよう。

684 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 16:46:40.78 .net
記念にゲハ板でスレ建ててやったぞw

2016.4.28.Thu 今日はマイコン40周年の日(c)2ch.net
http://wktk.2ch.net/test/read.cgi/ghard/1461829488/

685 :ナイコンさん:2016/04/28(木) 16:55:50.12 .net
>>677
セグメントが有れば、同一セグメント内ならオフセットアドレスのみでジャンプ/コール出来るから
実アドレスの何処にロードされても正常に動作する。
従って674の言う事は正しい。

686 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 17:02:21.85 .net
なんか40年前と霊界通信してるみたいだなw

687 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 17:04:54.72 .net
また40年後に同じこと書いてると思うと笑えるよなw

688 :ナイコンさん:2016/04/28(木) 17:24:24.89 .net
>>685
条件ジャンプの話なんだがw 知ったか乙w

689 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 17:27:39.52 .net
>>688
揚げ足取りじゃ人生空しいぞw

690 :ナイコンさん:2016/04/28(木) 18:48:21.74 .net
別にリロケータブルじゃなくてもバンク切り替えでマルチタスクするシステムあったし

691 :ナイコンさん:2016/04/28(木) 18:48:24.56 .net
>>672
ld a, (L1)
ret
L1: db 10

リロケータブルにしてくれ

692 :ナイコンさん:2016/04/28(木) 18:53:31.77 .net
LD A, 10
RET

693 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 19:02:21.59 .net
いい味だなw

694 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 19:03:21.93 .net
インダイレクトアドレッシングがあると、固定アドレスの問題は解決しやすいねw

695 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 19:05:56.20 .net
要するに、

LD A, [ [ L1 ] ]
RET

L1: DW VAR1

VAR1: DB 10

696 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 19:11:07.82 .net
プロシージャー本体

LD HL, L1
LD HL, [ HL ]

LD A, [ HL ]
RET

L1: DW VAR1

----
ワークエリア

VAR1: DB 10

697 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 19:16:06.51 .net
あ、LD HL,[ HL ]ってないんだなw

698 :Office & Gamers @ 試験運用中(トリなしw:2016/04/28(木) 19:20:48.64 .net
プロシージャー本体

LD HL, [ L1 ]
LD A, [ HL ]
RET

L1: DW VAR1

----
ワークエリア

VAR1: DB 10

699 :ナイコンさん:2016/04/28(木) 19:42:47.11 .net
>>692
L1 のメモリー書き換えられたら動作が違う
やり直し

700 :ナイコンさん:2016/04/28(木) 19:52:11.09 .net
アロケート時にベースアドレス設定するなり、呼ぶ前にレジスタ設定して渡せばいいだけ。呼ぶんだからアドレスは知ってるよな。
LD A, (IX+4)
RET

701 :ナイコンさん:2016/04/28(木) 20:33:44.09 .net
>>699
L1のアドレス位置はベースアドレスから2バイト目だよ。書き変えてもok
3E 0A C9

702 :ナイコンさん:2016/04/28(木) 21:21:49.72 .net
リロケータブル(コード位置が独立的)とスレッドセーフ(データの参照が他のスレッド/タスクから独立的)の違いが判ってないニワカが居る、と思うのは俺の気のせいか?

703 :ナイコンさん:2016/04/28(木) 21:32:38.62 .net
スレッドセーフってw 8bitCPUですよw アドレス空間は64KBですよw 世界はすべてあなたのものですよwww

704 :ナイコンさん:2016/04/28(木) 22:48:15.95 .net
Z80だと、
LD DE,MSG
LD C,9
CALL 5
RET
MSG: DB 'HELLO WORLD$'
これくらい普通のコードでもリロケータブルにならないからな。

リロケータブルにするなら、
LD DE,MSG

CALL L1
L1: POP HL
LD DE,MSG - L1
ADD HL,DE
EX DE,HL
とか、自前でPC相対アドレスを求めなきゃならない。

705 :ナイコンさん:2016/04/28(木) 23:08:43.49 .net
自前でPC取得したきゃすればいいいが、自前である必要がない。
アロケートした側はベースアドレスを把握してるのだから。渡せばいいだけ。

706 :ナイコンさん:2016/04/28(木) 23:12:45.11 .net
>>705
なにやら根本的に理解して無い様子、しばらくROMってたほうがいいんじゃないか?

707 :ナイコンさん:2016/04/28(木) 23:15:35.10 .net
根本ねぇ。馬鹿なの?必死こいてPC取得とかアホの極みだろw なんだそのコードw

708 :ナイコンさん:2016/04/28(木) 23:17:12.06 .net
>>707
馬鹿なのはあきらかにお前。また恥をかく前に撤退しろよw

709 :ナイコンさん:2016/04/28(木) 23:23:58.56 .net
じゃあその根本とやらを説明してみてよ。
なぜベースアドレスを渡せばいいだけなのに、それをやらない根本的理由をw

710 :ナイコンさん:2016/04/28(木) 23:26:50.99 .net
> ベースアドレスを渡せばいいだけ
というのが根本的な間違い。

711 :ナイコンさん:2016/04/28(木) 23:30:43.61 .net
その理由を聞いてるのに答えれないのは根本が何も分かってないからだよw

ほんとおまえ恥ばかりかいてるけどメンタル大丈夫かw

712 :ナイコンさん:2016/04/28(木) 23:32:03.22 .net
>>711
そこまで言うなら
ベースアドレスを渡せばいいだけ
というコードを書いてみろよw

713 :ナイコンさん:2016/04/28(木) 23:38:23.99 .net
理由を聞いてるのにコード書いてみろってなに逆ギレ左翼論法w

714 :ナイコンさん:2016/04/28(木) 23:42:16.21 .net
書いてみれば理由(の半分くらい)はわかると思うよ?

715 :ナイコンさん:2016/04/28(木) 23:49:24.88 .net
なるほど。おまえは自分が挫折した理由を半分くらい理解したわけだな。
残り半分を教えてやろう。スキル不足だ。

716 :Office & Gamers @ 試験運用中(トリなしw:2016/04/29(金) 00:03:25.68 .net
ムダな足引っ張りはやめて、素直にDarkGDK使いなさいw

717 :2016.4.28.Thu 今日はマイコン40周年の日:2016/04/29(金) 00:15:20.11 .net
http://s-sasaji.ddo.jp/pccata/vic1001.jpg

718 :ナイコンさん:2016/04/29(金) 02:00:49.77 .net
ベースアドレス、ベースアドレスって言ってるのは、IXに入れておけばどうとでもなるって意味?
あまり >>704と大差無い結果になる気がするが?

それと、Z80で相対アドレスCALLって出来るんだっけ?
x86ならばこういうバイナリパッチは常套手段だけど…

719 :Office & Gamers @ 試験運用中(トリなしw:2016/04/29(金) 02:07:58.70 .net
     CALL NEXT
NEXT: POP HL
     どうぞw

720 :Office & Gamers @ 試験運用中(トリなしw:2016/04/29(金) 02:22:33.09 .net
自分で計算することになるけど、相対アドレスCALLができるのは8048系統ぐらいだろうなw

>>718は何の用途で使ってるんだ?wwww”

721 :ナイコンさん:2016/04/29(金) 03:01:57.71 .net
>>704
・・・
CALL L1
L1: POP HL
LD DE,MSG - L1
・・・

Z80のCALL命令は、絶対アドレス指定しかないから
そもそも提示のコードはリロケータブルにならない
Z80でPC相対が出来るのは、JR/JR xx のみ

残念でした。

722 :ナイコンさん:2016/04/29(金) 03:28:36.81 .net
やっぱそうだよねぇ。あとDJNZも相対指定可だった気がするけど、どうでもいいか

どうしてもやりたいなら
0038: POP HL
    JP (HL)
としておいて RST 38H とするとか…かな?
むかーし昔、これやって怒られた気もするけどw

723 :ナイコンさん:2016/04/29(金) 05:32:38.42 .net
>>702
たぶん君の気のせい
スレッドセーフに関係しそうなのはリエントラントっていってた奴ぐらいしかいないし

724 :720:2016/04/29(金) 06:37:41.28 .net
確かに気のせいだった・・・
マルチタスクは〜と新しい話題振られる。
リロケータブル書きにくいよね、と続く。
書けるだろ、と突込みが。
簡単に書けないないのは皆わかっててのやり取り(の様に見えるのだが)に「リロケータブル書くの簡単だろ(超意訳」とか本気で言ってるとしか思えん訳わからんバカが乱入した、と。

725 :ナイコンさん:2016/04/29(金) 07:49:17.39 .net
Z80でリロケータブルなコード書くのは面倒くさい。

726 :ナイコンさん:2016/04/29(金) 08:25:03.19 .net
ベースアドレス君 玉砕の巻き

727 :ナイコンさん:2016/04/29(金) 10:16:38.05 .net
>>721
うわ…その通りだw
>>722のようなコードを用意して置いてそれを呼び出すしかないのかな。
固定アドレスで呼び出せるBIOSかOSにコードを用意しておけば38HじゃなくてもOKだと思うけど。

728 :ナイコンさん:2016/04/29(金) 11:24:21.15 .net
>>726
いやおまえがまた論破されたんだよ。
JP (IX) で飛んでくるんだから、ベースアドレスは普通に分かってるから。昔のコードはそうなってるでしょ。

729 :ナイコンさん:2016/04/29(金) 12:13:18.14 .net
リロケータブル書けない君、面倒君は単に開発経験ないのだろう。

730 :ナイコンさん:2016/04/29(金) 12:40:54.36 .net
>>724
馬鹿はおまえだよw

731 :ナイコンさん:2016/04/29(金) 13:09:22.52 .net
>>728
ほうほう

Entry:
...
call L1
...
L1:
...
ret

リロケータブルにしてくれ
(IX = Entry のアドレスでいいよ)

732 :ナイコンさん:2016/04/29(金) 14:08:03.26 .net
Entry:
...
LD A, 0_;taskID
call _dispach
...

_dispatch:
LD HL, _table
ADD L,A
ADD L,A
JP (HL)


L1:
...
ret

733 :ナイコンさん:2016/04/29(金) 15:58:15.56 .net
>>728 >>729
実例の一つも出せばそれで終わりなのに、残念な書き込みだな

734 :ナイコンさん:2016/04/29(金) 16:12:02.34 .net
できない理由を説明しろ → コード書けば分かる。おまえがコードだぜ → コードです → 実例出せ 

馬鹿なのか?

735 :ナイコンさん:2016/04/29(金) 16:38:03.20 .net
>>734
> コードです
ひょっとして >>732 のことを言ってるのか?
> call _dispach
> LD HL, _table
笑うしかないんだが w

736 :ナイコンさん:2016/04/29(金) 16:50:44.72 .net
>>735
何を勘違いしてるかだいたいわかってきた。FreeBSDのコードが参考になるよ。

737 :ナイコンさん:2016/04/29(金) 16:54:20.38 .net
>>735
それリロケータブルタスクの外のディスパッチルーチンやでwww

738 :ナイコンさん:2016/04/29(金) 16:54:52.20 .net
FreeBSD/z80 ?

739 :ナイコンさん:2016/04/29(金) 17:28:18.29 .net
>>732
ああ、これが>>731の「実例」なのかw
すべてのサブルーチンをこうやって呼ぶのかw
毎回テーブル作ってw メモリ食うしw OS側は面倒で仕方ないねw
ディスパッチルーチンのオーバーヘッドもあるしw

その上このディスパッチルーチンだと_tableの下位8bitは0固定、_taskIDは127まで
とか、色々涙ぐましい制限まで要りそうだねw

何というか…面倒くさい事の見本だねw

740 :ナイコンさん:2016/04/29(金) 17:41:54.11 .net
Z80なんて64KBしかないのにTASKなんて数個だし、アロケートテーブルは16byteもあれば足りる。
ほんと8bitCPUで何をやらせる気だよ。OS側ってなんだよw
いつからマルチタスクOSを作る話になってんだよw 典型的な無能SEの後出し仕様じゃねーか。

スレッドセーフ言い出したりZ80にMMUあると勘違いしてた馬鹿でしょ?

741 :ナイコンさん:2016/04/29(金) 17:55:49.08 .net
>>737
要するに完全にリロケータブルにはできないってことだろ
まあそれはいいとしても
・サブルーチンの数だけエントリー作る必要ある
・プログラム修正する度にエントリーの内容を変更しないとダメ
・サブルーチン番号を渡す必要あるのでレジスタがひとつつぶれる
とても普通に書けるってレベルじゃないわな

742 :ナイコンさん:2016/04/29(金) 18:05:07.98 .net
共用するものをサブルーチンにするんだから、それはコア部分に置くのでリロケータブルにしないね。
メモリが64kbしかないんだから一回走らせたら破棄するコードをリロケータブルにするんだよ。
管理コードもとにかくシンプル。8bitCPUじゃ常識。

>レジスタがひとつつぶれる → とても普通に書けるってレベルじゃない

というかアセンブラ経験ないど素人かよw 馬鹿なんだから素直にBASIC使っとけw

743 :ナイコンさん:2016/04/29(金) 18:05:20.94 .net
>>731ってTASK呼び出しのサンプルなのか?
なんか、凄く都合よく解釈してないか?

744 :ナイコンさん:2016/04/29(金) 18:12:59.00 .net
どや顔でだしてきたコードが >>732 ww
サブルーチンは共用しか認めないとか、レジスタがつぶれることにはまともな反論できないとか
恥ずかしすぎるだろ

745 :ナイコンさん:2016/04/29(金) 18:18:25.00 .net
反論する馬鹿はいない。元からレジスタなんてほとんどないCPUばかりだろw 8086もz80も6809も6502もwwww

746 :ナイコンさん:2016/04/29(金) 18:26:14.31 .net
LD HL, _table
ADD L,A
ADD L,A
JP (HL)

JP (HL) の動作は(表記からわかりにくいけど) PC←HL だから、
Aが0の場合そのままJP _tableと等価の命令になる、
この場合確実に暴走するんじゃね?

そもそも全タスク共通で一つのテーブルというのも現実味がない。
タスクごとにローカルなテーブルを持って、
dispatchルーチンではそれをIXに格納されてるアドレス相対で参照するべき。

747 :ナイコンさん:2016/04/29(金) 18:28:58.67 .net
ADD L,A なんて命令ないし、やっつけ杉だろw

748 :ナイコンさん:2016/04/29(金) 18:35:05.06 .net
そういや間接が一段足りないなw
ADD L,Aも無いなw

>アセンブラ経験ないど素人
なんだ、自己紹介だったのかw

>馬鹿なんだから素直にBASIC使っとけw
特大ブーメランだったなw

749 :ナイコンさん:2016/04/29(金) 19:29:49.12 .net
気づかないおまえが馬鹿w

750 :ナイコンさん:2016/04/29(金) 20:08:24.00 .net
結局玉砕の巻じゃねーか w

751 :ナイコンさん:2016/04/29(金) 20:47:05.75 .net
俺のチン子はベクトル型

752 :ナイコンさん:2016/04/29(金) 20:51:20.48 .net
無理とか面倒とか「不可能じゃないけど」ってスタンスばかりの中「Z80でリロケータブルなコードが簡単だろ」と主張した奴は一度もコード例を出してないのな。

753 :ナイコンさん:2016/04/29(金) 20:52:54.34 .net
懲りもせず孫持ちジジイが暴れているのか。老害。

754 :ナイコンさん:2016/04/29(金) 21:24:39.83 .net
68000が話題にならないからってハエみたいに煩くするなよ、クソ餓鬼。
ママのおっぱいでもしゃぶってろ。

755 :ナイコンさん:2016/04/29(金) 21:50:15.32 .net
>>752

>レジスタがひとつつぶれる → とても普通に書けるってレベルじゃない

756 :ナイコンさん:2016/04/29(金) 21:58:14.19 .net
初心者だろうな。初めはみんなレジスタ少ないって文句を言うのさ。
でもRISC-CPUで書くと分かる。レジスタが32個あっても結局足りないのさ。ボスキャラの吐く弾幕すら保持できない。結局メモリにデータ置く。
するとRISCの糞さが浮かび上がる。メモリに対して演算ができない。CISCの強力なアドレッシングがいかに効率的かに気づく。

757 :ナイコンさん:2016/04/29(金) 22:33:09.51 .net
ベースアドレス君はごまかしモードに入りました

758 :ナイコンさん:2016/04/29(金) 22:36:00.03 .net
ベースアドレスが渡せない理由を挙げるとこれだけある。理解したかね? ベースアドレス君。

・サブルーチンの数だけエントリー作る必要ある
・プログラム修正する度にエントリーの内容を変更しないとダメ
・サブルーチン番号を渡す必要あるのでレジスタがひとつつぶれる

とても普通に書けるってレベルじゃないわな

759 :ナイコンさん:2016/04/29(金) 22:40:51.60 .net
>サブルーチンの数だけエントリー作る必要ある

ベースアドレスあれば戻りアドレスPushしてジャンプするだけじゃん。

760 :ナイコンさん:2016/04/29(金) 22:41:41.30 .net
>プログラム修正する度にエントリーの内容を変更しないとダメ

これは意味が分からん。

761 :ナイコンさん:2016/04/29(金) 23:22:38.27 .net
こんなんでいいんじゃね?

      RST  38H
      DEFW SUB1-LABEL1
LABEL1: NEXT_OP

SUB1:

      RET


0038:  POP HL
      LD  E,(HL)
      INC HL
      LD  D,(HL)
      INC HL
      PUSH HL
      ADD HL,DE
      JP  (HL)

Z80ニワカがZ80小馬鹿にしながら書きなぐってみたよw
レジスタが盛大に潰れるし、オーバーヘッドもデカイけど、普通のアセンブラで書けるよw
テーブルも作らなくていいしw

762 :ナイコンさん:2016/04/29(金) 23:30:32.16 .net
香具師の多いスレだなあ

763 :ナイコンさん:2016/04/29(金) 23:43:53.12 .net
ああ、なんとなく判ってきたw ベースアドレス爺の言いたいことがw

>>704 の例は
  LEA DE,(IX+(MSG-BASE_ADDR))

って1命令で終わりだろって感じじゃないか?
齢のせいで幻聴、幻覚、無い命令が見えるっていう症状が激しいんだろw

764 :ナイコンさん:2016/04/30(土) 00:05:18.32 .net
1命令か複数命令だろうができるってだけなんだけど。なんでそんなにゆとりは発狂してるんだ?

1バイトの青春なんて言葉も知らないガキのくせに、
レジスタ一つ使うだけでなんでそんなに発狂するのかおじーちゃんにはさっぱり分からん。

765 :ナイコンさん:2016/04/30(土) 00:34:27.03 .net
恥の多い人生だったんだろうね。もう無理しなくていいよ。

766 :ナイコンさん:2016/04/30(土) 00:48:00.06 .net
>>763
LD D,(IX+d)
LD E,(IX+d)

あるけど? 一体何を指摘したいんだい?
ベースアドレスがダメな理由は今のところレジスタ使うからとか、複数命令だからとかアホな反論以外ないけど?
ただの機械語全否定。

767 :ナイコンさん:2016/04/30(土) 01:03:54.34 .net
>>766
あのさw そのLD命令で >>704を書き換えてくれよw
もう耄碌して会話もままならないの?

768 :ナイコンさん:2016/04/30(土) 01:10:02.30 .net
>>767
だからさぁ。なぜダメな理由を説明しないの?コード書け、実例だせってアホかと。
説明したと思ったら、レジスタ使った。複数命令だったとか。それが根本的理由なのか?だから馬鹿にされる。

LD D,(IX+d)
LD E,(IX+d)

って書いたろ。一体何が足りないんだ?はっきり理由言え。

769 :ナイコンさん:2016/04/30(土) 01:15:33.12 .net
あんまり面白いんで思わず書き込みボタン押しちゃったけど、そのLD命令2つと
>>763のLEA 命令が等価だとでも?w ま、無い命令だけどさw
ホントに機械語やったことあるの?w
>>704をちゃんと書き換えてみなってw 出来ないの?w

770 :ナイコンさん:2016/04/30(土) 01:23:19.81 .net
>>768
何一つ説明できない馬鹿はスルーしたほうがいい。自分で書けないから他人も書けないというアホ論理だから。

たがら書いてみろとしか言えない。

771 :ナイコンさん:2016/04/30(土) 01:28:46.75 .net
先に理由は絶対に言わないよな。典型的な左翼。論破されるのが怖くて言えないのだろうな。

772 :ナイコンさん:2016/04/30(土) 01:32:03.64 .net
横から失礼するが>>704をリロケータブル化って
IYにプログラムの開始アドレスが入ってるとして

PUSH IY
POP HL
LD DE, MSG
ADD HL, DE
EX DE, HL
LD C,9
CALL 5
RET
MSG: DB 'HELLO WORLD$'

この程度のことなんでないの? 何そんな草生やしてるのかわけわからん。

773 :ナイコンさん:2016/04/30(土) 01:45:24.07 .net
>>772
まさにそれなんだけど。
>>718書いたのも俺。>>704の最初のCALL命令がPUSHに変わる程度だから「大差無い」って
指摘してるんだけど、LD D,(IX+d)とLD E,(IX+d) で簡潔に書けるって言い張っている爺さんが居るのよw
ま、どうせZ80はニワカだからもっとステップ数の少ない書き方もあると思うんだけど、それを示してくれれば
それまでの話なのにw

774 :ナイコンさん:2016/04/30(土) 01:49:49.73 .net
Z80のインデクスレジスタは -128〜+127 の範囲でしか相対アドレスが使えないし、
プログラムのサイズを256バイト以内に制限するとかでなければあんまいい方法
にはならんのじゃないかな。

775 :ナイコンさん:2016/04/30(土) 01:54:16.42 .net
>>773
キミねぇ。さっきから開始アドレスを渡すのがダメな理由を全然説明してないよ。
草ばかり生やしてないで少しは説明しなよ。それじゃ誰も理解しないよ。頭悪すぎだよ。

776 :ナイコンさん:2016/04/30(土) 01:58:39.01 .net
>>773
まさにそれってできないんじゃなかったの? アホの子なの?

777 :ナイコンさん:2016/04/30(土) 02:02:57.52 .net
書いてる途中で正解が来ちゃったから後付けだけど、LEA命令があればこれは動くよ

  LEA  DE,(IX+(MSG-BASE_ADDR))
  LD   C,9
  CALL 5
  RET
MSG: DB 'HELLO WORLD$'

ディスプレースメントに16bit取れるならMSGとベースアドレスがどんな位置関係でも
普通問題ないでしょう。

ベースアドレス爺の発言を斟酌すると、どうもこうなるんだがw
  LD  D,(IX+d)
  LD  E,(IX+d)
  LD  C,9
  CALL 5
  RET
MSG: DB 'HELLO WORLD$'

これは動かないよね。2命令になるのは問題じゃない!ってさっきから怒られてるけど、
いや、問題はそこじゃないんだけどw
LD D,IX+d
ってのがあれば >>774の言う通りベースアドレス-128〜+127バイトの範囲で動くとは
思う。

778 :ナイコンさん:2016/04/30(土) 02:08:56.49 .net
うん。アホの子だ。間違いない。

779 :ナイコンさん:2016/04/30(土) 02:14:38.90 .net
>>775
あなたがこの発言をしたと思っているんだが

703 名前: ナイコンさん [sage] 投稿日: 2016/04/28(木) 23:08:43.49
自前でPC取得したきゃすればいいいが、自前である必要がない。
アロケートした側はベースアドレスを把握してるのだから。渡せばいいだけ。

705 名前: ナイコンさん [sage] 投稿日: 2016/04/28(木) 23:15:35.10
根本ねぇ。馬鹿なの?必死こいてPC取得とかアホの極みだろw なんだそのコードw

>>704 の書き換えが問題無かったとして、>>772との違いはCALL命令とPUSH命令の
1命令だけ。人をアホの極みとまで呼べるほどの差は出ないだろ?って思ったまでよ。

780 :ナイコンさん:2016/04/30(土) 02:15:35.59 .net
>>777
あのねぇ。無い命令は他の命令と組み合わせたら実現できる話でしょ。機械語の基本でしょ。
その程度でベースアドレスは渡せないと発狂してたの?

結局、最初のレジスタ使うからダメ、複数命令はダメと同じレベルの指摘なんだけど。アホくさ

781 :ナイコンさん:2016/04/30(土) 02:23:02.14 .net
だめだ、このジジイもう恍惚の人になってるw
自分の発言も忘れているし、どうしたって話かみ合わないw
自分は介護職目指すつもりないからもうどうでもいいやw

782 :ナイコンさん:2016/04/30(土) 02:33:51.51 .net
>>780
おそらく8086から入ったから8bitの命令の少なさに耐えられないんだろう。
ない命令は実装する方法がないとか勘違いしてるのだろう。
LD D,IX+d がないから無理とかおまえは幼稚園児かってレベル。

783 :ナイコンさん:2016/04/30(土) 02:39:26.39 .net
マスホを手にしたゆとりが自らデジタルネイティブと名乗り、パソコンを馬鹿にしてるみたいなものか。

784 :ナイコンさん:2016/04/30(土) 03:22:23.47 .net
出来る出来ないで言えば「ベースアドレスなんか渡さなくても」出来るだろ。

785 :ナイコンさん:2016/04/30(土) 04:29:07.17 .net
どうやら、レジスタ一個取られたからボクのロジック破綻だよぉ、あの命令もこの命令も無いから難しくて書けないよぉ、
がベースアドレス渡しができない理由らしい。そりゃ理由書けと言われても恥ずかしくて書けないわなw
じゃあコード書いてみろという反論も納得、納得。

786 :ナイコンさん:2016/04/30(土) 08:00:10.05 .net
出来る出来ないで言えばたいていの事は「できる」からなぁ。

787 :ナイコンさん:2016/04/30(土) 08:29:34.91 .net
残念ながら「簡単に書く」ことは出来ないのがはっきりしただけだったな

788 :ナイコンさん:2016/04/30(土) 08:54:07.73 .net
ここで改めてはっきりさせる必要がある奴ってのは・・・だねぇ。

789 :ナイコンさん:2016/04/30(土) 09:43:08.92 .net
事実を書かれて顔真っ赤

おそまつ

790 :ナイコンさん:2016/04/30(土) 11:13:10.66 .net
だねぇ。ほとんおそまつ。
レジスタ一個使ったら、とても普通に書けないだもんねぇ。相手にしないほうがいいよ。高級言語と勘違いしてんじゃねーの?
LD D,(IX+d)はあるけど、LD D,IX+d ないから動かないって・・・ほんと簡便してよ。それがアドレス計算ができない理由とはいやはや。

791 :ナイコンさん:2016/04/30(土) 11:33:28.59 .net
香具師の多いスレだなぁ

792 :ナイコンさん:2016/04/30(土) 12:24:29.13 .net
小便くせーガキが昔の8bitCPUをディスってるようだけど、おれたちの世代はそんなCPUで月まで行った。
それに比べてなんなんだおまえらガキは。月まで行けないだけでなく、人は乗せれないは、
打ち上げたはいいが高性能CPU積んでるのにバグって姿勢制御できなくて高速スピンして木っ端微塵だって?

なめてんのか、糞ガキ。

793 :ナイコンさん:2016/04/30(土) 13:35:17.61 .net
世代が同じってだけで
自分でやったわけでもないのに
ここまで大口叩ける事に
同世代として恥ずかしい

794 :ナイコンさん:2016/04/30(土) 15:47:57.87 .net
ベースアドレス君が話題変えるのに必死なんだろ
察してやれよ

795 :ナイコンさん:2016/04/30(土) 16:25:31.70 .net
まだベース…いや、何でもない。
GWプロジェクトの合間にパズル感覚でまたZ80ニワカしてみたから貼っとく

      LD  HL,MSG-LABEL1
      RST 30H
LABEL1: LD  C,9
      CALL 5
      RET
MSG: DB 'HELLO WORLD$'

0030:  POP DE
     ADD  HL,DE
     EX    HL,DE
     JP    (HL)

まぁ例によって「必死こいてPC取得」なんで、「馬鹿なの?」とか「アホの極みだろw」
とか罵詈雑言が聞こえてくるようだけど。
それとお題からして30Hとか、そんな低位アドレス勝手に使えるのか判らんけど。

それにしてもなんだな、こうしてRUN TIMEルーチン揃えていくと「あと10年は戦える」
とか言っちゃった人の気持ちも少しだけ判…やっぱり判らん

796 :ナイコンさん:2016/04/30(土) 16:37:58.23 .net
プログラムのターゲットOSがCP/MならばRST 30Hは予約済み。
RST 08HからRST 28Hまでは使用可能。

797 :ナイコンさん:2016/04/30(土) 16:55:05.90 .net
> プログラムのターゲットOSがCP/MならばRST 30Hは予約済み。

というのはガセ

798 :ナイコンさん:2016/04/30(土) 17:02:01.02 .net
>>795 いやぁ、そんな事ないよ
> 「必死こいてPC取得」
問題の本質は、↑だから

Z80は、これが難しい、
今までに提示されたコード全てが、絶対アドレスを使ってるからな
RST xx にしても、絶対アドレスを使ってるわけで本質的には差が無いが
"誰かが、ベースアドレス渡してくれる"
って、本末転倒な 言い分に比べれば遥かにマシだ

このパズルの回答としては
絶対アドレスを一切使わずに、PC取得するコード
これを提示出来るレベルのヤツが、いつ出てくるかに興味があるな。

その他部分は、目糞鼻糞程度の差異であって、ハッキリ言ってどうでも良い

799 :ナイコンさん:2016/04/30(土) 17:03:23.53 .net
> プログラムのターゲットOSがCP/MならばRST 30Hは予約済み。

CP/Mでは0番地がプログラム終了に使われるのとDDTが内部でRST 38Hを
デフォルトで使ってるだけで他は自由。Z80を割り込みモード1で動作
しているシステムであればDDTにパッチを当てて30Hや28Hを使ってもいい。

800 :ナイコンさん:2016/04/30(土) 17:06:53.67 .net
>>798
> 今までに提示されたコード全てが、絶対アドレスを使ってるからな
> RST xx にしても、絶対アドレスを使ってるわけで本質的には差が無いが

文字列出力で5番地呼び出してる癖にバカなのかな?

801 :ナイコンさん:2016/04/30(土) 17:12:43.61 .net
まだやってんのか。
PUSH IX
JP (HL)
するだけじゃねーか。

802 :ナイコンさん:2016/04/30(土) 17:14:01.00 .net
> "誰かが、ベースアドレス渡してくれる"
> って、本末転倒な 言い分

そういう機能を実現したければそういう実装をするだけだろ。
ベースアドレスが欲しければ渡してくれるようローダを作るだけ。

803 :ナイコンさん:2016/04/30(土) 17:17:03.94 .net
実現のための仕組みを考えるんじゃなくて、できない理由を必死に探してるのは馬鹿としか言えない。

804 :ナイコンさん:2016/04/30(土) 17:18:08.75 .net
文字列出力のシステムコールが許されるならPC取得のシステムコールが許されない筈がない。

805 :ナイコンさん:2016/04/30(土) 17:32:06.26 .net
昔のバイナリとか見たらPC取得ルーチンとか普通にあるかもな。

806 :ナイコンさん:2016/04/30(土) 17:52:23.13 .net
Z80でPCの値が取得したいならRSTやCALL使うのが手っ取り早いと思うんだけど、それじゃダメなのか?
ダメだっていうならもっといい方法教えてくれよ。

807 :ナイコンさん:2016/04/30(土) 17:56:09.52 .net
呼ぶ側
 LD HL,L1
 CALL L1

呼ばれる側
L1:
 (呼ばれたときにHLにPCと同じ値が入ってる)
 RET

808 :ナイコンさん:2016/04/30(土) 18:26:12.56 .net
>>797,797
CP/Mの0ページメモリマップの参考資料
http://fast-uploader.com/file/7017563171321/ PASSWORD CPM
出典 オーム社刊 パーソナルコンピュータのためのCP/M入門より

まあNETで調べると使用可能としてるHPがあるから間違うのは仕方ないだろうけど
リアルでCP/Mを使ったことが無いのが判ってしまうね。

おまけ知識としてCP/M PLUSではRST 08Hから38Hは全てReserveになっている。

809 :ナイコンさん:2016/04/30(土) 18:27:38.63 .net
リアルに存在したとは思えないぐらい日本では影が薄かったからな。

810 :ナイコンさん:2016/04/30(土) 18:40:09.93 .net
>>806
> Z80でPCの値が取得したいならRSTやCALL使うのが手っ取り早いと思うんだけど、それじゃダメなのか?
手っ取り早いと言うよりそれしか方法がないだろ
どっちも固定番地を使うから完全リロケータブルにはならないって言うだけのこと

811 :ナイコンさん:2016/04/30(土) 18:40:12.22 .net
> 出典 オーム社刊 パーソナルコンピュータのためのCP/M入門より

英語が読めないので一次資料が出せないというのは分かったw

812 :ナイコンさん:2016/04/30(土) 18:42:08.12 .net
6809や8086のソフトウェア割り込みを含む割り込みベクタは固定番地だが
Z80のシステムコールが固定番地でダメな理由がわからない。

813 :ナイコンさん:2016/04/30(土) 18:46:13.29 .net
根本的にできないと先に言っちゃったから、できることはすべてダメなんだろう。
レジスタ一つ使ったぐらいで「とても普通に書けないレベル」って言うぐらいだし。

814 :ナイコンさん:2016/04/30(土) 18:46:49.16 .net
> まあNETで調べると使用可能としてるHPがあるから間違うのは仕方ないだろうけど
> リアルでCP/Mを使ったことが無いのが判ってしまうね。

リアルでCP/M使ったことない奴はマニュアルに予約とあるから使っちゃダメとか本気で信じてそうだなw

815 :ナイコンさん:2016/04/30(土) 18:49:27.72 .net
"骨までしゃぶる"使い方とか想像の範囲外なんだろう

816 :ナイコンさん:2016/04/30(土) 19:09:11.17 .net
>>810
> どっちも固定番地を使うから完全リロケータブルにはならないって言うだけのこと

システムが固定番地を占有するってだけで、その上で動作するプログラムは
完全リロケータブルでしょ。特定の領域がプログラムで使用されないということに
特別な意味はないよね。

817 :ナイコンさん:2016/04/30(土) 19:16:16.04 .net
完全リロケータブルという用語まで作り出したか。アロケートを管理する部分、システム共通ルーチンまでリロケータブルを要求してくるとは。

もうおまえの勝ちでいいよ。誰もおまえには勝てないよ。いくらでも後出しで仕様出してくるんだからw

818 :ナイコンさん:2016/04/30(土) 19:24:32.42 .net
> どっちも固定番地を使うから完全リロケータブルにはならないって言うだけのこと

システム呼び出しを例えば0038Hにしてそれを呼び出す命令をRST命令に限定し、
M1サイクルでRST 38Hを判定してバンク切り替えをする機構を用意すれば
固定番地を使用してもプログラムは64kBどこにでも配置できるしお前の言う
"完全リロケータブル"になるよ。

819 :ナイコンさん:2016/04/30(土) 19:29:28.58 .net
> どっちも固定番地を使うから完全リロケータブルにはならないって言うだけのこと

MS-DOSのEXEは0000:0000〜FFFF:FFFFすべてのアドレスにロードされる
わけではないので完全リロケータブルじゃない、くらいのバカ主張

820 :ナイコンさん:2016/04/30(土) 19:52:55.11 .net
670 : ナイコンさん2016/04/28(木) 13:54:32.53
 >Z80だとリロケータブルなコードがものすごく書きにくい

 普通に書けるだろ。この前提でなぜレスが進むんだ。馬鹿なのか。

821 :ナイコンさん:2016/04/30(土) 19:59:47.96 .net
> サブルーチン番号を渡す必要あるのでレジスタがひとつつぶれる

> とても普通に書けるってレベルじゃないわな

822 :ナイコンさん:2016/04/30(土) 20:22:36.29 .net
「リロケータブルなコード」の中から「リロケータブルなコードの中にある」サブルーチンをCALLするってどうやるんだ?
自己書き換え?

それだとやっぱりPCの値が必要で、PCの値を得るには・・・

823 :ナイコンさん:2016/04/30(土) 20:23:42.15 .net
PUSH IX
JP (HL)

824 :ナイコンさん:2016/04/30(土) 20:30:48.01 .net
それで逝けるのか・・・
IXとHLの求め方が結局PCの値をとってきてって手間がかかるのか。
メンドイ・・

825 :ナイコンさん:2016/04/30(土) 20:34:30.95 .net
面倒ならマクロでも作っとけ。

826 :ナイコンさん:2016/04/30(土) 20:53:39.54 .net
面倒なら8086でも使っとけ。

827 :ナイコンさん:2016/04/30(土) 20:56:29.66 .net
いちいちPCとってきて計算してとかかったりー。
ケアレスミスの類だが、127バイト以上の距離のジャンプとかもしちゃいそうだ。

8086のセグメントに慣れてると正直「やってられっかぁ!」って言うレベルにかったりー

828 :ナイコンさん:2016/04/30(土) 21:29:11.25 .net
>いちいちPCとってきて計算してとかかったりー。
>ケアレスミスの類だが、127バイト以上の距離のジャンプとかもしちゃいそうだ。

マクロアセンブラ知らんのかな?

829 :ナイコンさん:2016/04/30(土) 21:31:49.77 .net
>>816-817
言い訳してるところ申し訳ないけど、システムかなんか知らんけど固定番地のルーチンが必要なんだよね?
それさえ認めてくれればあとはどうでもいいよ

830 :ナイコンさん:2016/04/30(土) 21:38:35.37 .net
>言い訳してるところ申し訳ないけど、システムかなんか知らんけど固定番地のルーチンが必要なんだよね?

番地固定のナントカなんてどんなシステムにもあると思うけどそれ言うと言い訳になるのかな? 理解できない話だな

831 :ナイコンさん:2016/04/30(土) 21:40:01.94 .net
>>829
固定番地が完全に排除されたシステムってなんか例挙げてちょ 5個くらいでいいよ

832 :ナイコンさん:2016/04/30(土) 21:52:26.66 .net
>>829
もちろん必要だよ。当然だね。どこにアロートされたか分からんものを呼びようがないからね。
アドレス管理してるところは固定じゃないと間接的に呼びようがない。当たり前だね。

833 :ナイコンさん:2016/04/30(土) 21:59:45.80 .net
>>828
マクロアセンブラなら128バイト以上の距離の相対ジャンプが自動的に作られるのかい?

834 :ナイコンさん:2016/04/30(土) 22:05:46.53 .net
絶対ジャンプのアドレスを自己書換でもしとけよ。
8086の条件ジャンプも128バイト以上飛べないし。そのときはどうやってるのかと。

835 :ナイコンさん:2016/04/30(土) 22:17:15.21 .net
>>833
>マクロアセンブラなら128バイト以上の距離の相対ジャンプが自動的に作られるのかい?

そういうのが可能なマクロアセンブラは普通に存在するけどそれが何?

836 :ナイコンさん:2016/04/30(土) 22:30:35.28 .net
> マクロアセンブラなら128バイト以上の距離の相対ジャンプが自動的に作られるのかい?

ジャンプ命令の最適化なんて8bitの頃のマクロのないアセンブラでもあった程度の機能だけどなあ? この人馬鹿なのかな?

837 :ナイコンさん:2016/04/30(土) 23:39:03.17 .net
>>811
判りやすい資料をと思ったが御希望のようなので。

http://www.cpm.z80.de/manuals/cpm22-m.pdf 6-26

>>814
リスクを犯してまで使う必要は無いから素直に安全なRST 08H〜28Hを使うな。
ちなみにCP/M互換と言ってるMSX-DOSではRST 30Hには機能が与えられているから
覚えておいた方が良いよ。

838 :ナイコンさん:2016/04/30(土) 23:49:57.13 .net
> ちなみにCP/M互換と言ってるMSX-DOSではRST 30Hには機能が与えられているから
> 覚えておいた方が良いよ。

インタースロットコールはMSX-DOSの機能じゃないぞ

839 :ナイコンさん:2016/04/30(土) 23:51:59.83 .net
>>837
> 素直に安全なRST 08H〜28Hを使うな。

君の大好きなMSX-DOSのデバッガってCP/MのRST 38Hの代わりにその辺使ってね?

840 :ナイコンさん:2016/05/01(日) 01:12:38.29 .net
>>838
手元のMSX-DOSの資料では
000CH JP RDSLT
0014H JP WRSLT
001CH JP CALSLT
0024H JP ENASLT
0030H JP CALLF (RST 30H)
とインタースロットコールをサポートしているが。
反論をするならば調べてからした方が良いよ。

841 :ナイコンさん:2016/05/01(日) 01:15:01.90 .net
BIOSの機能とDOSのそれの区別がつかない人ねw

842 :ナイコンさん:2016/05/01(日) 01:46:05.98 .net
BIOSのエントリなだけだよなあ。
MSX datapack volume1「第3部 MSX-DOS」見てもファンクションコールや
FCBの解説はあるけどインタースロットコールについては「BIOSと同じ」
以上の説明がないし。

843 :ナイコンさん:2016/05/01(日) 01:54:17.71 .net
> ちなみにCP/M互換と言ってるMSX-DOSではRST 30Hには機能が与えられているから
> 覚えておいた方が良いよ。

「MSX-DOSではRST 30Hを使用しているから」だったら良かったのにね。

844 :ナイコンさん:2016/05/01(日) 02:03:36.77 .net
ではMSX-DOSのシステムスクラッチエリア(CP/Mでの0ページに相当)に誰がUserの為に
わざわざインタースロットコールのエントリーアドレスを設定してるんだろうね?
MSX-DOSがその機能を提供するために設定してるんじゃないのかね?

845 :ナイコンさん:2016/05/01(日) 02:24:41.95 .net
MSX-DOSって既にPC98+MS-DOS全盛時代だろ。おまえら貧乏だったんだな。

846 :ナイコンさん:2016/05/01(日) 02:42:26.02 .net
98、X68、FM-TOWNS、DOS/V機、全部持っててもMSX持ってるだけで貧乏人のレッテル貼られる時代。

847 :ナイコンさん:2016/05/01(日) 03:13:23.74 .net
> ではMSX-DOSのシステムスクラッチエリア(CP/Mでの0ページに相当)に誰がUserの為に
> わざわざインタースロットコールのエントリーアドレスを設定してるんだろうね?

え? Userの為??
MSX-DOS自身がBIOS使うからに決まってるじゃん。Datapackにも書いてあるぞ?

848 :ナイコンさん:2016/05/01(日) 06:49:51.45 .net
>>831-832
ごめんねー
システムの話しはしてないからそう言う反応はいらないっす
まあシステムの話しにしないと悔しくて眠れない
って言うのはわかったよ w

849 :ナイコンさん:2016/05/01(日) 07:24:05.33 .net
なにしろ、持ってたマシンが日立のS1だったもんで・・・

850 :ナイコンさん:2016/05/01(日) 08:15:22.61 .net
Z80なら無理してリロケータブルなコードを書くより、
最初にセルフリロケートを実行する方が良いんじゃないかな、
リロケート情報の分コードサイズが増えたとしても、
非効率なリロケータブルコードよりは小さくなりそうな気がするんだが。

もちろんOSのローダがやればそういう問題も無く、もっと良いんだけど。

851 :ナイコンさん:2016/05/01(日) 10:07:25.38 .net
機械語なんて単純なコードは勝手にリロケータブルになってんだろ。

852 :ナイコンさん:2016/05/01(日) 11:34:48.78 .net
DIGITAL RESEARCH TM CP/M Operating System Manual
http://www.cpm.z80.de/manuals/cpm22-m.pdf
■317Page
PRL:
Page relocatable program. A page relocatable program is stored on disk with a PRL
filetype. Page relocatable programs are easily relocated to any page boundary and
thus are suitable for execution in a nonbanked MP/M system.

MP/Mは8ビットOSね。DESPOOLみたいなチャイルド系とかCP/M地震も再配置可能だったような。

853 :ナイコンさん:2016/05/01(日) 12:09:42.60 .net
>>850
実行ファイルに、リローケション・テーブル付けてそれを元に再配置する
実際、それが歴史の答えだよ

Windowsの.exe / .dll 等もそういう仕組みになってる
セルフじゃなくて、リロケーション自体ははOSがやってくれるけど
ファイルにはリローケション・テーブルがくっ付いている。

Z80でPCさせ取得できれば、それ以外は目糞鼻糞の議論
結局、誰も提示出来ないようだな

854 :ナイコンさん:2016/05/01(日) 13:29:45.68 .net
>>850
どんだけ周回遅れの話してんの?

855 :ナイコンさん:2016/05/01(日) 14:05:27.33 .net
>>854
先頭横入り、ズルズル

856 :ナイコンさん:2016/05/01(日) 14:36:08.17 .net
>>652
>それなら実行ファイルにコード本体とは別にリロケート情報を持って置いて、
>それを使ってローダーが再配置すれば解決する話だけどな。

857 :ナイコンさん:2016/05/01(日) 15:05:17.94 ID:PD909S4bN
もう既出かもしれないが
ttps://groups.google.com/forum/#!msg/comp.os.cpm/hCIqluCYRGg/tlTDBE3QP50J
ttps://groups.google.com/forum/#!topic/comp.os.cpm/9BVctCgStB8

> LD HL,0E9E1h ;E1h=POP HL, E9h=JP (HL)
> LD (0008h),HL
> RST 08h
>REL0 EQU $
>
>Which would put the value of the PC into HL. The code could now
>be based relative to location REL0, for which the address would be
>in HL.

これ短くて好き。

858 :ナイコンさん:2016/05/01(日) 14:53:32.59 .net
>>853
> Z80でPCさせ取得できれば、それ以外は目糞鼻糞の議論

Z80のIX、IYレジスタを使ってベースアドレスを渡せば、
>>707 必死こいてPC取得とかアホの極みだろw なんだそのコードw
とまで言えるくらい優れた方法があって、それを使えば

> 実行ファイルに、リローケション・テーブル付けてそれを元に再配置する 実際、それが歴史の答えだよ
そんなことをする必用も無くなる、

らしいんだよね、それが本当ならちょっと凄くね?

859 :ナイコンさん:2016/05/01(日) 14:56:28.83 .net
> > Z80でPCさせ取得できれば、それ以外は目糞鼻糞の議論
>
> Z80のIX、IYレジスタを使ってベースアドレスを渡せば、
> >>707 必死こいてPC取得とかアホの極みだろw なんだそのコードw
> とまで言えるくらい優れた方法があって、それを使えば
>
> > 実行ファイルに、リローケション・テーブル付けてそれを元に再配置する 実際、それが歴史の答えだよ
> そんなことをする必用も無くなる、
>
> らしいんだよね、それが本当ならちょっと凄くね?

>>858がキチガイすぎて何言いたいんだかわからん

860 :ナイコンさん:2016/05/01(日) 15:01:38.79 .net
単にコードサイズ、速度の問題。再配置計算、ベースアドレス計算で比較するだけ。そんなの仕様による。

ベースアドレス渡しは根本的にできない連呼してた無能SEみたいに次々と後出し仕様ださないかぎり、
仕様が出ればがどっちが効率か判断できる。仕様、要件次第。

861 :ナイコンさん:2016/05/01(日) 15:15:22.27 .net
>>859
ごめん、引用が多すぎて読みにくかったな、まとめると、

・渡されたベースアドレスを使ったリロケータブルコードは、自前でPCを取得して行うリロケータブルコードよりもかなり優れている

その手法を使えば
・リローケション・テーブルによる再配置をしなくても十分に効率的なコードを記述できる

ということみたいよ。

862 :ナイコンさん:2016/05/01(日) 15:23:45.60 .net
>>861
> 渡されたベースアドレスを使ったリロケータブルコードは、自前でPCを取得して行うリロケータブルコードよりもかなり優れている

えっ誰かそんな馬鹿なこと言ってる? >>858にもそんなこと書かれてないよな?

> その手法を使えば
> ・リローケション・テーブルによる再配置をしなくても十分に効率的なコードを記述できる

えっ誰かそんな馬鹿なこと言ってる? >>858にもそんなこと書かれてないよな?(2回目)

結論: >>861は馬鹿

863 :ナイコンさん:2016/05/01(日) 15:39:05.96 .net
>>860
ベースアドレス渡しは根本的に出来ない、
とは言われてなくて、

ベースアドレス渡しは根本的に「意味が無い」、なぜならPC取得とコードがほとんど変わらないから
と言われてる。
>>718 >>772 >>773 >>779 とか。

そもそもレジスタに入れれば良いだけなんだから「渡せない」とか意味不明。

仮にベースアドレスが渡されなくても、プログラムの先頭でPCを取得して、
そこから自前でベースアドレスを求めてレジスタに入れればいいだけなので渡す意味も特に無い。

さらに必用な都度PCを取得すればいいだけなので、ベースアドレスを保持して置く意味も無い。

864 :ナイコンさん:2016/05/01(日) 15:48:43.59 .net
> さらに必用な都度PCを取得すればいいだけなので、ベースアドレスを保持して置く意味も無い。

レジスタに余裕があり、ベースアドレスからの相対アドレスを計算する
コストをある程度小さくしたいのであればベースアドレスを保持して置く
ことに意味はあるぞ。

865 :ナイコンさん:2016/05/01(日) 15:49:25.05 .net
>>862
普通は馬鹿なことだと思うよね。
それが居るんだよ、ベースアドレス君とかベースアドレス爺とか呼ばれてる奴。

866 :ナイコンさん:2016/05/01(日) 15:51:21.98 .net
>>865 こいつです。

867 :ナイコンさん:2016/05/01(日) 15:52:09.94 .net
>>865
まだいたのか。恥ずかしくなって逃げたと思ってた。

868 :ナイコンさん:2016/05/01(日) 16:03:38.44 ID:PD909S4bN
ld hl,pcか
add hl,pc
あたりを用意しておいてくれればよかったのにね。

869 :ナイコンさん:2016/05/01(日) 16:23:12.14 .net
>>864
あらかじめ相対値としてPCからの相対値を持って置けば、
計算コストの面でもベースアドレスは必要ないと思うけど。

870 :ナイコンさん:2016/05/01(日) 16:24:56.15 .net
>>732 のような恥を晒してものうのうと出来る、それが団塊というものです。

871 :ナイコンさん:2016/05/01(日) 16:43:46.74 .net
>>869
システムコール等でPC値を取得するよりはレジスタに保存してある値を
参照する方がコストは低かろう。

872 :ナイコンさん:2016/05/01(日) 17:03:37.78 .net
>>871
(11) RST 38H
0038:
(10) POP HL
(4) JP (HL)
計 (25)クロック

(15) PUSH IX
(10) POP HL
計 (25)クロック
だと速度に差は無いな、バイト数も前者の方が有利だね。

873 :ナイコンさん:2016/05/01(日) 17:10:57.26 .net
(8) LD D, IXH
(8) LD E, IXL
計 (16)クロック

ならこっちの方が速いかな。バイト数は負けているが。

874 :ナイコンさん:2016/05/01(日) 17:16:57.37 .net
(10) LD SP, IX
計 (10)クロック

一番速いのがこれかな。SPを使うのが玉に瑕だが。

875 :ナイコンさん:2016/05/01(日) 17:22:14.20 .net
> (15) PUSH IX
> (10) POP HL
> 計 (25)クロック
> だと速度に差は無いな、

HL以外のレジスタにも対応できるという点では利点はあるね。

876 :ナイコンさん:2016/05/01(日) 17:30:23.54 .net
>>873
それは未定義命令かな?

>>874
SPを使うのがありなら、SPは常にベースアドレス保持用に予約すれば
LD HL,MSG
ADD HL,SP
だけで実効アドレスを計算できるねw

877 :ナイコンさん:2016/05/01(日) 17:33:44.89 .net
IX(かIY)をプログラムの先頭番地の格納に専用すると、プログラムの先頭付近を
データ領域に使用してそれへのアクセスを比較的低コストで行える、というのは
考えられるな。

878 :ナイコンさん:2016/05/01(日) 17:48:29.92 .net
なにまだリロケータブルやってんの?
「リロケータブルなコードは書ける」でFAだろ。

モニタっつかOSの仕様までいちゃもんつけてまで「できねー」「かけねー」やってんの?

ところでさ、+127バイト以上の距離の「相対ジャンプ」ってどう実現するんだ?
マクロアセンブラとやらが展開した後のコードがちゃんと「リロケータブル」になってんの?
CP/MについてたASMしか使ったこと無いから想像付かん。

879 :ナイコンさん:2016/05/01(日) 17:51:12.41 .net
こういうことだよね

      JP (IX)   IX:BASE_ADR
    ・・・・

      DS 128
BASE_ADR:
      JR ENTRY
      DS 125
ENTRY:

ローカル変数としてアリっぽいけど、LD r,(IX+d) とか使ったら途端に
非難轟々になりそう。

880 :ナイコンさん:2016/05/01(日) 18:08:18.52 .net
リロケータブルコードの場合データアクセスも難問なんだよな、
6809ならゼロページを普通に使えるが、
Z80だと(IX+n)(Z80最遅命令かと思われる)を使わざるを得ないんじゃないかな…

881 :ナイコンさん:2016/05/01(日) 18:17:42.95 .net
>>878
多段ジャンプ。8086でも同じ。

882 :ナイコンさん:2016/05/01(日) 18:22:42.85 .net
>>878
大抵はリロケータブルロングジャンプになるわけではなく、
JR Z,LONGJMP

JR NZ,SKIP
JP LONGJMP
SKIP:
になるだけじゃないかと、それでも無いよりは大分使いやすいと思うけどw

リロケータブルロングジャンプ自体はPC取得して〜で可能だろうから、
それをサポートした特殊なアセンブラが実在しなかったとも言い切れないが。

883 :ナイコンさん:2016/05/01(日) 18:40:19.71 .net
ベースアドレスは渡せない言ってた糞ガキがまた暴れてるのか。

884 :ナイコンさん:2016/05/01(日) 18:46:15.17 .net
最後にはベースアドレス+相対位置の計算が必要で面倒で使えないという理由だったみたい。

885 :ナイコンさん:2016/05/01(日) 18:55:18.20 .net
え? レジスタ一個消費するからダメって言ってたよ。

886 :ナイコンさん:2016/05/01(日) 19:02:07.24 .net
相対ロングジャンプ(全レジスタ、フラグを保存)
PUSH HL
RST 38H ;HL←PC
L1:
PUSH AF
PUSH DE
LD DE,LONGJMP - L1
ADD HL,DE
POP DE
POP AF
EX (SP),HL
RET
で良いかな?

887 :ナイコンさん:2016/05/01(日) 19:52:21.49 .net
相対ロングコール(全レジスタ、フラグを保存)
>>731 への答え版

Entry:
...
PUSH HL
PUSH IX
POP HL ;HL←ベースアドレス
PUSH AF
PUSH DE
LD DE,RETADDR - Entry
ADD HL,DE
POP DE
POP AF
EX (SP),HL ;戻りアドレスをスタックへ積む(同時にHLを復帰)
PUSH HL
PUSH IX
POP HL ;HL←ベースアドレス
PUSH AF
PUSH DE
LD DE,L1 - Entry
ADD HL,DE
POP DE
POP AF
EX (SP),HL ;呼び出しアドレスをスタックへ積む(同時にHLを復帰)
RET ;呼び出しアドレスへジャンプ
RETADDR:
...

L1:
...
ret

888 :ナイコンさん:2016/05/01(日) 19:54:08.16 .net
>>880
普通にスタックフレームを使ってもいいし、いかようにでも。

>>879
125じゃなくて126までいけるか

889 :ナイコンさん:2016/05/01(日) 20:20:32.89 .net
簡単に書けるって言っちゃった割には出てきたコードが >>732 w
もうできるできないにするしかなくて必死になってるだけだろ

> マクロアセンブラとやらが展開した後のコードがちゃんと「リロケータブル」になってんの?
これは俺も興味あるわ
そんな賢いアセンブラあったっけ?

890 :ナイコンさん:2016/05/01(日) 20:21:48.55 .net
>>889
どした? 急に思い出したように興奮してからに。

891 :ナイコンさん:2016/05/01(日) 20:39:23.86 .net
http://hanabi.2ch.net/test/read.cgi/i4004/1458450955/467
> キミは歴史を勉強する気があるのかないのかどっちだ? ないなら出て行け。

892 :ナイコンさん:2016/05/01(日) 20:42:43.99 .net
他スレでも馬鹿にされたのか。落ち着けよ。

893 :ナイコンさん:2016/05/01(日) 20:58:23.45 .net
>>878
cp/mのasm.comはアブソリュートアセンブラ。m$のMacro80とかはアセンブラとリンカーに
分かれている二段構成。Intel謹製のアセンブラはM$のリンカーの先にロケーターという
絶対番地コードに落とすユーティリティがあって、いわゆるHEXファイルを生成しロムライター
にダウンロードしてロム焼きする。いずれにせよ、アセンブラが吐き出すコードは中間コード。
ラベルに対応するアドレスはリンカ或いはロケーターを通すまで決定されない。それゆえ
リ・ロケータブルだと言われてた。

894 :ナイコンさん:2016/05/01(日) 22:15:00.61 .net
出来ることを証明するのは簡単だけどできないことを証明するのは容易ではないから
できると主張してる人が先に証拠を出すべき

895 :ナイコンさん:2016/05/01(日) 22:33:58.58 .net
ここにもレス乞食が

896 :ナイコンさん:2016/05/02(月) 11:41:01.63 .net
> できると主張してる人が先に証拠を出すべき

これがリロケータブルのコードが書けるかどうかって言うなら「書ける」とさんざんこのスレにも出てるだろ。
実務でZ80使ったこと無い俺でも判ることが何で理解できないのかねぇ・・・
しかたない、Z80未経験の俺が纏めてやるよ。(経験者にお願い:間違ってたり足りないところあったら補足してくれ)。

ただし、リロケータブルなコードが「OS等の管理プログラムから呼出しされ機能する、一連りのコードとそのコードのみが参照、更新するデータからなるユーザープログラム」と言う解釈とする。
コレには当然「OS下で管理され、ロードと起動はリロケータブルなコードを書くプログラマの責任範疇外である」「リロケータブルコードが実行される環境は既定のものが存在する(プログラマが干渉できないという意味で)」も含まれる。
以後の条件後出しは許さん。

Z80で「位置に依存する命令」ってのは、ちょと調べれば判るが6種類ある(レジスタrは8ビット16ビットは「レジスタには変わりないから」と1種類とカウント、JPもJP ccの仲間だから、とすれば5種類)。
下のim16は「16ビット即値」ね。

CALL im16
JP im16
JP cc,im16
LD (im16),r
LD r,(im16)
RST x

このたった6種類の命令が使われてなければ、それは「完全にリロケータブルなコード」だ、メモリ上のどこにおいてもOK。
どこに、といっても固有アドレスを使うRST命令や、(「OSはこれ」と特に言われてないが)OSの縛りもあるから実環境にあわせた制限は当然出てくるが。
リロケータブルコードの中で、PCの位置が欲しいならOSにCALLやRST使ってPCを返すサービスファンクションとかシステムコールを用意すればいいし、呼び出す側で16ビットレジスタにアドレスに入れて呼び出してやってもいい。
OS呼出しだめ、アドレス渡しだめ、というなら、それは「絵の具も筆も使わずにキャンパスに絵を描け」と言ってるに等しい、ただの言いがかりだ。

897 :ナイコンさん:2016/05/02(月) 12:19:33.26 .net
つまりできないってことでいいのかな?

898 :ナイコンさん:2016/05/02(月) 12:56:54.56 .net
「完全リロケータブル」の定義がないから言い逃れはいくらでもできるのです(キリっ!

899 :ナイコンさん:2016/05/02(月) 13:16:12.62 .net
>>896
LD A,(im16)

PUSH HL
LD HL,im16
LD A,(HL)
POP HL
と、その6種類を使わないコードに置換できるけど、
そうしたところでリロケータブルにはならないよ。

900 :892:2016/05/02(月) 13:24:55.18 .net
>>899
前後の流れでの位置依存までは頭になかった。

LD HL,im16

の時点でim16がPC相対なりOSから渡されたベースアドレスからの相対なら、

LD A,(HL)

ではリロケータブルと言う発想しかなかったんで。
> 種類の命令が使われてなければ、それは「完全にリロケータブルなコード」だ
が間違っていると言うか、不十分だったかぁ。
うぅむ、「リロケータブルなコード」にするためには除外しなきゃいけないものが他にもありそうだなぁ。

901 :ナイコンさん:2016/05/02(月) 13:55:36.19 .net
>>896
> このたった6種類の命令が使われてなければ、それは「完全にリロケータブルなコード」だ、メモリ上のどこにおいてもOK。
なるほど
ret
は確かにリロケータブルだな
お前賢いな w

902 :ナイコンさん:2016/05/02(月) 14:00:15.37 .net
>>896
要するに
> OS呼出しだめ、アドレス渡しだめ
なら、書けないんだろ

903 :ナイコンさん:2016/05/02(月) 14:11:10.93 .net
> 要するに
>> OS呼出しだめ、アドレス渡しだめ
>なら、書けないんだろ

そこまで言ったら、世の中全て、どんなCPUであろうとリロケータブルのコードが書けないことになる。
「リロケータブルではない」「リロケータブルである」の条件決めないままできないできない言ってるのは、ただのいちゃもん。
チンピラの所業だね。
そもそも「う゛〜!ボクチンの意見否定する奴ゆ゛る゛せ゛ね゛ぇ゛!」って後だしばっかしてる低脳だけだし、できないとかほざいてるの。

904 :ナイコンさん:2016/05/02(月) 14:38:21.23 .net
効率度外視すれば
1. 実行中のPCの値を取得
2. その値に対してオフセット計算する
3. 計算されたアドレスのメモリーに対して読み書きする
4. 計算されたアドレスにジャンプする(PCに代入する)
の機能があればリロケータブルなコードは書けるだろ
Z80 は
> OS呼出しだめ、アドレス渡しだめ
なら 1. を実現できないってだけのこと

905 :ナイコンさん:2016/05/02(月) 15:06:08.93 .net
>効率度外視すれば
これはコーディング時に大層な負担が掛かるのでは。
そんな努力を払ってまでリロケータブルなコードを
書かなきゃイケナイのか。

906 :ナイコンさん:2016/05/02(月) 15:11:59.52 .net
>>904-905は馬鹿

907 :ナイコンさん:2016/05/02(月) 15:12:30.99 .net
別に書かなくていいよ。世の中はにレジスタ一つ使っただけで絶望してもう書けないなんて言う人もいるぐらいだし。

キミは無理しなくていい。

908 :ナイコンさん:2016/05/02(月) 15:19:53.56 .net
>以後の条件後出しは許さん。
Z80基準を8080基準にしてちょ。

909 :ナイコンさん:2016/05/02(月) 15:27:58.82 .net
>>905
それは書ける書けないとは別の話

>>906
馬鹿としか書けないなら黙ってろ

910 :ナイコンさん:2016/05/02(月) 16:37:50.20 .net
>>909は阿呆

911 :ナイコンさん:2016/05/02(月) 19:13:47.58 .net
>>905
その一例が >>887

912 :ナイコンさん:2016/05/02(月) 19:46:00.52 .net
ここの住人は3つのタイプがいる。
ひとつはリロケータブルなコードは書けないと言うキチガイ。
ひとつはリロケータブルは簡単に書けると言うニワカ。
ひとつは、書けるが面倒くさいと言う正常な感性の持ち主。

913 :ナイコンさん:2016/05/02(月) 19:48:46.09 .net
>>911
64Kbという枠組み(領域)の中で、そこまで苦労して
コーディングする必要は感じない。

914 :ナイコンさん:2016/05/02(月) 19:56:48.04 .net
わいわいやってたのは、可能か不可能か、だよ。
現実的か現実的ではないか、なんて最初から非現実的と言うのばかりだろ。
違うのは不可能キチガイと簡単ニワカだけ。

915 :ナイコンさん:2016/05/02(月) 20:04:09.14 .net
>わいわいやってたのは、可能か不可能か、だよ。
バカだなあ。
そんな事の前に、コーディングしてて楽しいかどうかも
考えられないなんて。

オレは御免だね。

916 :ナイコンさん:2016/05/02(月) 20:09:10.64 .net
バカはあんただらずwww。
最初から非現実、つまり面倒くさいとか手間ばっかりとか、否定的な意見ばかりだ。
少しばかりスレ見れば分かる事にいちいち肯定しながらバカとか、間抜けすぎだずら。

917 :ナイコンさん:2016/05/02(月) 20:21:13.46 .net
連休中に決着つきそうもねえな

918 :ナイコンさん:2016/05/02(月) 20:32:33.46 .net
>>886 >>887 にインスパイア()されたので、ニワカもパズル再挑戦しようとしたんだが…
全レジスタ・フラグ保存版
      RST  38H
      DEFW SUB1-LABEL1
LABEL1: NEXT_OP

SUB1:
      RET

0038:  JP RELCALL
RELCALL: PUSH HL
      PUSH AF
      PUSH DE
      PUSH IX
      LD   IX,0
      ADD  IX,SP
      LD   L,(IX+8)
      LD   H,(IX+9)
      LD   E,(HL)
      INC   HL
      LD   D,(HL)   ; DE:16bit リラティブ
      INC   HL
      LD   (IX+8),L  ; リターンアドレス補正
      LD   (IX+9),H
      ADD  HL,DE
      POP  IX
      POP  DE
      POP  AF
      EX   (SP),HL
      RET
うーん、単なる力ずくw ニワカなのでそろそろ無い命令を踏んでるやもしれず…
モデルは6809の LBSR 命令。雰囲気は出たのでこれでいいか。

919 :ナイコンさん:2016/05/02(月) 21:06:56.26 .net
決着もなにも、最初から結論出てるって言うか、実務経験あれば常識の範疇なのに
違うという不可能クンと簡単クンが粘着してるだけよ?

920 :ナイコンさん:2016/05/02(月) 21:33:26.67 .net
>>915
>>887 をマクロにでも登録すれば? サクサク書けて楽しいよ

921 :ナイコンさん:2016/05/02(月) 21:43:22.52 .net
↑ ↑ ↑
粘着し過ぎ

922 :ナイコンさん:2016/05/02(月) 21:52:32.33 .net
可能か不可能かといえば可能。
簡単か面倒かはスキルの差でしかない。

不可能 → アセンブラ知らない知ったかの詐欺師
可能だが面倒 → 馬鹿
可能だし朝飯前 → 天才

923 :ナイコンさん:2016/05/02(月) 22:07:53.27 .net
可能っていう奴がいる割にはまともな例が出てこない不思議

924 :ナイコンさん:2016/05/02(月) 22:10:02.28 .net
コード出せ厨 → アフィカス

925 :ナイコンさん:2016/05/02(月) 23:05:32.77 .net
>バカはあんただらずwww。
8080、Z80でのコーディングなんて面白みが
無いからね。
そんなコードを見て「得意に」なられても
苦笑しか涌かないんだが。

926 :ナイコンさん:2016/05/03(火) 00:06:20.66 .net
>>925
お前このスレで何したいの?

927 :ナイコンさん:2016/05/03(火) 04:10:43.09 .net
> 簡単か面倒かはスキルの差でしかない。
こいつこそが「アセンブラ知らない知ったかの詐欺師」だな。

928 :ナイコンさん:2016/05/03(火) 06:16:39.58 .net
コードも出さずにうだうだ言ってる奴見たら >>732 ですらまともに見えてきた w

929 :ナイコンさん:2016/05/03(火) 07:24:04.00 .net
いっそのこと、OS側で
0038: JP EMU6809
EMU6809:
; 6809 emurator
...

として、

ユーザープログラムは6809アセンブラで
 DEFB $ff
ENTRY:

と書いてけばいいんじゃね?

930 :ナイコンさん:2016/05/03(火) 08:18:41.84 .net
>>928
コード出せとか必死な奴って、ガチャゲーにレア出せと大金ぶっ込んでるアホと同類。役立たず

931 :ナイコンさん:2016/05/03(火) 08:21:42.42 .net
天才現る

932 :ナイコンさん:2016/05/03(火) 08:40:33.14 .net
>>930
たまに >>732 のような大物も釣れるから案外馬鹿に出来ない

933 :ナイコンさん:2016/05/03(火) 08:41:45.41 .net
>>929
究極はそう言うことだからシステム云々言ってる奴は単なるアホか必死すぎる奴
そこまでやらなくてもロード時にリロケーションするようなルーチン呼び出せば実用的には問題ないだろうしね

934 :ナイコンさん:2016/05/03(火) 08:45:00.40 .net
>>930
ガチャってやったことないから 何を言ってるのかさっぱりわからん
まあ必死なのはわかったよ w

935 :892:2016/05/03(火) 12:40:06.88 .net
再挑戦するのは正直自己満足に過ぎないんだけど、やるだけやってみた。
まず>>896に書いた3つの条件はそのままとする。
あとここでいう「ユーザープログラム」は>>896で言ってる「一連りの〜からなるユーザープログラム」のことね。

・CALL im16 、JP im16 、JP cc,im16 、LD (im16),r 、LD r,(im16) 、RST x の6種類の命令を含まない。
 892の時には意識してなかったからCALLでファンクションコールきないトラップになってる。
・ユーザプログラムに含まれるデータに対する処理で指定するアドレスはベースアドレス相対、PC相対等で求め固定値を使わない。
 ADC r,(r16)、ADD r,(r16)、AND (r16)、BIT b,(r16)、CP (r16)、DEC (r16)、INC (r16)、
 LD (r16),n、LD (r16),r、LD r,(r16)、OR (r16)、RES b,(r16)、RL (r16)、RLC (r16)、
 RR (r16)、RRC (r16)、SBC r,(r16)、SET b,(r16)、SLA (r16)、SRA (r16)、SRL (r16)、
 SUB (r16)、XOR (r16)
 以上アルファベット順に23種類(のハズ)。
 rは8ビットレジスタ、r16は16ビットレジスタ(IX+d)は分けて書くのが面倒だったんでHLとニアリイコールと考えr16に含めた。
 (本文長いと怒られたので分割)

936 :892:2016/05/03(火) 12:40:41.89 .net
(続き)
・ユーザプログラム内にジャンプする命令で指定するアドレスはベースアドレス相対、PC相対等で求め固定値を使わない。
 JP (r16)および複数命令組み合わせで同様機能を実現する場合(ちょっと考えたけどEX (SP),r16してRETするしか思い浮かばなかった)
・上記の「ベースアドレス相対、PC相対等で求め」はコード実行時に実現できていればどのタイミングで求めるか限定しない。

条件だけ抜き出してみたけどこれの縛りで書かれたコードは、どこに配置してもちゃんと動く。
実際こんな無茶な要求がされることはまず無いけどパズルとして要求仕様風に考えてみた。
まだ抜けてるところがあるかもしれないけど「リロケータブルのコードは書ける」の証明にはなるでしょ。

実は「つっこみしてくるかな〜」と少しばかり期待して、リロケータブルなコードに「含まれない」データへの参照についてはワザと書かなかったけどスルーされたね。

937 :ナイコンさん:2016/05/03(火) 14:20:05.42 .net
歌丸 : 山田くん座布団全部持って行って

938 :ナイコンさん:2016/05/03(火) 18:26:27.11 .net
これが歌丸師匠の最後の笑点になるとは...

939 :ナイコンさん:2016/05/03(火) 19:03:28.99 ID:zdDB/ZTdY
ルーチンの頭で自分と同じ内容を
0000からffffまで探して見つけるというのはどうだろう。

940 :ナイコンさん:2016/05/03(火) 22:04:47.49 .net
死んだの?

941 :ナイコンさん:2016/05/03(火) 22:14:44.16 .net
勝手に殺しちゃダメだって。
引退だよ。

942 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 03:16:34.62 .net
…このスレ的にはZ80リロケータブルしか引っ張るネタがないからなw

MZ-80K全盛期(1980年頃)にI/O、ASCIIでリロケータブルプログラミングはチラッと
出てるけど、テープベースでリローケータブルをやる意味がなかったようで、すぐに
この話題は消えたなw

MZ-80K全盛期w

今から36年前w

まだ生まれてないイキモノの方が多いw

943 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 03:20:23.43 .net
んで、1980年と言うと、MZ-80K用のテープベースのエディタアセンブラーが2万円w
これを買えるのは一部の富裕層で、普通の民間人はハンドアセンブル必須w

944 :ナイコンさん:2016/05/04(水) 08:23:53.83 .net
んでZ8リロケータの完璧な実例まだ?

945 :ナイコンさん:2016/05/04(水) 08:53:08.77 .net
> テープベースでリローケータブルをやる意味がなかったようで、すぐに
> この話題は消えたなw

> んで、1980年と言うと、MZ-80K用のテープベースのエディタアセンブラーが2万円w
> これを買えるのは一部の富裕層で、普通の民間人はハンドアセンブル必須w

これだけ分かっててリロケータブルのメリット理解してないってアホだわ。

946 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 09:01:02.04 .net
もはや化石でしかないZ80に何を求めてるのか知らないけどさw

947 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 09:03:33.35 .net
MZ-80K全盛期からハンドアセンブル一筋でやってきたとすれば、今頃MenuetOSの作者と同じ境地だろうなw
当時の世代はx86に移ってるよw

948 :ナイコンさん:2016/05/04(水) 10:20:14.06 .net
>>945
> これだけ分かっててリロケータブルのメリット理解してないってアホだわ。
どう見ても関係なさげなんだがメリットあると言うなら説明してほしいわ

949 :ナイコンさん:2016/05/04(水) 10:47:38.31 .net
>>948
おいおい、それを明らかにしてしまうと、
ここ一週間の熱い議論が無駄になってしまうと思うぞ。

950 :ナイコンさん:2016/05/04(水) 11:01:58.52 .net
>>949
知的好奇心の無い奴にはナニ言っても無駄だよw

951 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 11:10:03.67 .net
>>949
おまえの独り言に付き合うアホはいないよw

952 :ナイコンさん:2016/05/04(水) 11:39:21.05 .net
DLLのように動的にロードして使うコードならリロケータブルの方が便利だな。
メインアプリの都合にあった位置にロードすることが出来るし、
AとB、2つのDLLを同時に使いたいとき等も問題が出ない。

その場合でもローダーがリロケートすればいいので、リロケータブルなコードである必要は無いが。

953 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 11:44:23.91 .net
テープで動的にリロードする時代なんてなかったよw

954 :ナイコンさん:2016/05/04(水) 11:54:13.78 .net
テープ時代ならMZ80Kのセルフリロケータブルデバッガは良く使った。
メモリの先頭で動くプログラムもあれば、
BASICとの共存を考えてメモリの末尾で動くプログラムもあり、
リロケートできるデバッガーは便利だった。

955 :ナイコンさん:2016/05/04(水) 12:45:03.41 .net
OS自体がドライバ組み込みやメモリーの切り貼りに対応してないとバイナリが疑似リロケートでも大変だわな

956 :ナイコンさん:2016/05/04(水) 14:41:33.50 .net
大変だな、面倒な、無理だな、 →こいつずっとこればっかだなw

957 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 14:42:33.99 .net
>>954
そんな便利なモンなかったぞw
歴史をクリエイトするのはやめようなw

958 :ナイコンさん:2016/05/04(水) 15:09:29.74 .net
>>957
雑誌(1980年11月号のI/O)に掲載された奴ね。

一応スクショもあった、あんまり意味が無いけどw
http://coolrip.b.ribbon.to/ueno.cool.ne.jp/magicallogic/MZ80KC11.HTM
↑の一番下の画像

959 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 15:39:36.87 .net
>>958
それデバッガ本体がリロケータブル名乗ってるだけで何の意味もないぞw

960 :ナイコンさん:2016/05/04(水) 15:41:30.75 .net
にわかだろ

961 :ナイコンさん:2016/05/04(水) 15:44:00.99 .net
死ねよ

962 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 15:45:31.41 .net
さあ笑う用意をしよう♪(アハ♪”

963 :ナイコンさん:2016/05/04(水) 15:59:04.12 .net
>>959
単純なアルゴリズム
(多分逆アセンブルしつつ16ビット即値がアドレスの範囲内ならオフセットを加算するだけ?)
のリロケート(メモリコピー&パッチ当て)コマンドが付いてて、
デバッガー自身はそれで「正常に」リロケートできるようになってた。

そのアルゴリズムだと全てのプログラムを確実にリロケートできるわけではないけど、
ハンドアセンブルした自作のプログラム程度なら、
「リロケートした後、逆アセンブラで確認して、リロケートに失敗してるところがあれば手で直す」
という手順で手間を省く手段にはなった。

964 :ナイコンさん:2016/05/04(水) 17:43:42.41 .net
>>948
>どう見ても関係なさげなんだがメリットあると言うなら説明してほしいわ

小さいサブルーチンちまちま作ったうえでそれ呼び出す形で大きいプログラム作ること想像してみ。

それか↓でも読んで勉強すれ。
https://ja.wikipedia.org/wiki/%E4%BD%8D%E7%BD%AE%E7%8B%AC%E7%AB%8B%E3%82%B3%E3%83%BC%E3%83%89

965 :ナイコンさん:2016/05/04(水) 17:46:35.97 .net
> それデバッガ本体がリロケータブル名乗ってるだけで何の意味もないぞw

どんな番地に配置されるプログラムをデバグするとも限らないからデバガが
リロケータブルなのは普通に意味があるんだよなあ、ニワカは馬鹿だから
理解できないかもしれんが。

966 :ナイコンさん:2016/05/04(水) 17:47:15.16 .net
掛け算ルーチンとかそうだよな。

967 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 17:58:50.31 .net
>>963
あのな、その頃はGAME-MZとFORMが流行っててマシン語なんか誰もやらなかったんだよw

968 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 18:14:48.48 .net
Windows版F1スピリットでもどうぞw
http://www.braingames.getput.com/f1spirit/default.asp

969 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 18:16:48.62 .net
http://www.braingames.getput.com/f1spirit/pics/screenshot1.jpg
http://www.braingames.getput.com/f1spirit/pics/screenshot2.jpg
http://www.braingames.getput.com/f1spirit/pics/screenshot3.jpg
http://www.braingames.getput.com/f1spirit/pics/screenshot4.jpg
http://www.braingames.getput.com/f1spirit/pics/screenshot5.jpg
http://www.braingames.getput.com/f1spirit/pics/screenshot6.jpg
http://www.braingames.getput.com/f1spirit/pics/screenshot7.jpg
http://www.braingames.getput.com/f1spirit/pics/screenshot8.jpg

うはwwww”

970 :ナイコンさん:2016/05/04(水) 19:14:46.39 .net
>>964
> 小さいサブルーチンちまちま作ったうえでそれ呼び出す形で大きいプログラム作ること想像してみ。
え〜っと、リンカーも知らないアホ
って言うことでいいですか? w
あとその Wikipedia は位置独立コードとリロケータブルコードを別のものとして扱ってるからちゃんと読まないと恥かくよ

971 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 19:21:07.47 .net
>小さいサブルーチンちまちま作ったうえでそれ呼び出す形で大きいプログラム作ること想像してみ。

つまり車輪の再発明かwwwwやめとけwwwwwwwwwwwwwうえっwwwwwwwwwwwwwww”

972 :ナイコンさん:2016/05/04(水) 19:57:06.08 .net
ここ1週間の話題は、OSがメモリに展開するときに最終的に位置を決めて、一度展開したら場所を動かさない、という一般的で当たり前のWindowsやLinuxが当たりまえにやってることじゃない。
「OSがメモリに配置するときに、読み込んできたバイナリをそのまま展開する」という架空のOSでリロケータブルを実現する方法。

973 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:11:55.43 .net
はいっ、終わりっ♪(アハ♪”

974 :ナイコンさん:2016/05/04(水) 20:13:14.81 .net
>>970
> え〜っと、リンカーも知らないアホ
> って言うことでいいですか? w

↓読んで内容理解できてる?

> テープベースでリローケータブルをやる意味がなかったようで、すぐに
> この話題は消えたなw

> んで、1980年と言うと、MZ-80K用のテープベースのエディタアセンブラーが2万円w
> これを買えるのは一部の富裕層で、普通の民間人はハンドアセンブル必須w

975 :ナイコンさん:2016/05/04(水) 20:13:57.24 .net
>>970
> あとその Wikipedia は位置独立コードとリロケータブルコードを別のものとして扱ってるからちゃんと読まないと恥かくよ

Wikipedia の記事に書かれてる
> リロケータブルコードは、指定されたアドレスで実行可能にするために
> リンケージエディタやローダが特別な処理を施すが、位置独立コードでは
> それが不要である。

読めて内容理解できてる?

976 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:16:34.30 .net
糞スレ埋め立て開始♪(アハ〜っ♪”

977 :ナイコンさん:2016/05/04(水) 20:16:48.66 .net
>>972
> 「OSがメモリに配置するときに、読み込んできたバイナリをそのまま展開する」という架空のOSでリロケータブルを実現する方法。
OS-9 も知らない知ったか君は黙ってなよ

978 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:17:23.17 .net
>Wikipedia の記事に書かれてる

他力本願wwwww”

979 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:17:42.34 .net
ほらっ♪ ほらっ♪”

980 :ナイコンさん:2016/05/04(水) 20:19:12.17 .net
>>974
内容理解できてるけど、それがどうかしたのか?

>>975
理解できてるから、書いてあるんだが?
それも理解できてないのか?

981 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:19:17.78 .net
アハ♪ アハ♪”

982 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:19:42.23 .net
ヘーイ♪ 飛ばそうぜ〜♪(ギャハハ!!wwww”

983 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:20:34.97 .net
だがだが♪”

984 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:20:53.29 .net
よいこらしょっと♪”

985 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:21:51.87 .net
980

986 :ナイコンさん:2016/05/04(水) 20:22:24.91 .net
次スレ
http://hanabi.2ch.net/test/read.cgi/i4004/1357048546/

987 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:22:47.66 .net
982

988 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:23:02.01 .net
983

989 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:23:16.39 .net
HGC

990 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:23:49.30 .net
九八五♪”

991 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:24:07.52 .net
\[Y♪”

992 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:24:39.92 .net
HGF♪(亜波♪”

993 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:25:18.01 .net
98



8

994 :ナイコンさん:2016/05/04(水) 20:28:48.63 .net
クソコテw
こんなところで生き恥晒してないで、ベースアドレス爺と一緒に終活でもしろw

995 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:29:24.38 .net
次スレ

2016: VICプログラマーをDarkGDKに移行させるスレ
http://hanabi.2ch.net/test/read.cgi/i4004/1460821051/

996 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:29:43.17 .net
勝ったw
圧倒的に勝ったw

997 :ナイコンさん:2016/05/04(水) 20:29:55.72 .net
>>974
> 内容理解できてるけど、それがどうかしたのか?

で、その時代にリンカがどうこう寝言言ってんの?

998 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:30:11.73 .net
亜波♪”

999 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:30:55.24 .net
このスレの勝利者: 俺様♪(ペロリっ♪”

1000 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:31:26.68 .net
敗北者: MZうyちゃーーーーーーん♪(ぎゃはは!!wwww”

1001 :ナイコンさん:2016/05/04(水) 20:31:36.52 .net
>>975
> 理解できてるから、書いてあるんだが?

理解できてたら「あとその Wikipedia は位置独立コードとリロケータブルコードを別のものとして扱ってるからちゃんと読まないと恥かくよ」なんて恥ずかしいこと書けない罠。あの記事で書かれてる「位置独立コード」が何意味してるか分かっとらんだろお前。

1002 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:31:44.76 .net
996

1003 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:32:01.40 .net
998

1004 :ナイコンさん:2016/05/04(水) 20:32:11.11 .net
またベースアドレス爺の負けかw

1005 :Office & Gamers @ 試験運用中(トリなしw:2016/05/04(水) 20:32:27.44 .net
1000ならDarkGDK移行♪(アハ♪”

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

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

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