アセンブラ… Part 12 ..
522:デフォルトの名無しさん
08/05/22 20:51:11
>>521
Windowsでも大文字小文字を区別できなかったっけ?
レジストリの設定にそんなのがあった気がする
523:デフォルトの名無しさん
08/05/22 21:36:27
Win32サブシステムがDOSとの互換性のために区別してないだけで
カーネルやファイルシステムレベルじゃ区別されてるな
524:デフォルトの名無しさん
08/05/22 21:39:23
Win32サブシステムでも区別する設定はあるけど
区別しない前提で作ってるアプリばっかりだから
きっとまともに動かないんじゃないだろうか
525:デフォルトの名無しさん
08/05/22 21:48:11
Aとaは区別されない
えーっ
526:ヽ・´∀`・,,)っ━━━━━━┓
08/05/22 21:55:19
大小違い同名ファイルが作れるかどうかは別だよな
527:デフォルトの名無しさん
08/05/22 21:56:18
NTカーネル(つかNTFS)で
全角アルファベットが酷い扱いだった時代があったことを知らないのかね。
528:デフォルトの名無しさん
08/05/22 21:57:55
うわ知ったか消防が来た
529:デフォルトの名無しさん
08/05/22 22:03:40
晒しage
530:デフォルトの名無しさん
08/05/23 07:52:14
ケースの話してるのに、なぜ「全角」が出てくるのか、まずはそこからだ。
531:デフォルトの名無しさん
08/05/23 09:21:35
だんごさんのせいでオヤジギャグがスルーされたな。
532:デフォルトの名無しさん
08/05/23 09:40:54
>>530
全角Aとaのcaseが区別されない、と言うことを525が言ってるからだろ
533:デフォルトの名無しさん
08/05/23 11:37:28
そういうケースもあるさ
534:デフォルトの名無しさん
08/05/24 02:48:18
団子とやりあってたヤシだがしばらく書き込めなかった。
予想通り俺の説得スキルが足りないようなのでもうやめる。
続けたければ隔離スレでも立ててくれ。
535:デフォルトの名無しさん
08/05/24 04:26:55
SBB AL,[EAX]
ADD [EAX],AL
XCHG [EAX],EAX
ADD [EAX],AL
あるゲームのHPの格納アドレスの近くにあるのですが
これってどういう意味があるのでしょうか
536:デフォルトの名無しさん
08/05/24 07:53:07
ただのデータじゃね?
537:ヽ・´∀`・,,)っ━━━━━━┓
08/05/24 08:27:58
>>534
お前が無知なだけだろ。モダンなx86の物理レジスタは100本以上あるんだよ。
538:ヽ・´∀`・,,)っ━━━━━━┓
08/05/24 08:41:39
俺を説得とか馬鹿にもほどがある。
釈迦に説法と言う気はないが、俺に無意味に噛みついて質問者を混乱させてどうするんだ。
「重要なこと」さっさと答えろよ
539:デフォルトの名無しさん
08/05/24 09:20:27
>>538
無意味に噛みつていたのはおまえだろ
540:ヽ・´∀`・,,)っ━━━━━━┓
08/05/24 09:24:41
「重要なこと」があると言いつつ、それを言わないこと自体が論理矛盾じゃないか。
俺は「無い」と断言したがな
541:デフォルトの名無しさん
08/05/24 09:30:04
ここで聞くことかどうかわかりませんが、電子手帳とかそういうのもマイコン
使ってますよね。そういうのに入っているデータもアセンブラがわかれば
吸い出せるんですか。昔のやつが何台もあるので。
542:ヽ・´∀`・,,)っ━━━━━━┓
08/05/24 09:31:44
データそのものは機械語で保存されてるわけではない。どっちかというと構造体が解析できればOK。
543:デフォルトの名無しさん
08/05/24 09:32:50
>>542
もう少しヒントを教えてくれるとありがいです。または参考となるURLなど
あれば。お願いいたします。
544:デフォルトの名無しさん
08/05/24 09:41:39
せめて機種を書け。
545:デフォルトの名無しさん
08/05/24 09:47:18
URLリンク(www.wotsit.org) くらいは読みこなせるようになって、
日本語漢字コードのあれこれを理解できたら
独自解析も夢ではないと思うよ
546:デフォルトの名無しさん
08/05/24 10:41:11
団子さんのカキコでスレが猛烈にヒートアップしたな
547:デフォルトの名無しさん
08/05/24 11:20:44
>>546
あんたよく飽きないねぇ
548:ヽ・´∀`・,,)っ━━━━━━┓
08/05/24 11:30:52
レス番飛んでる
549:デフォルトの名無しさん
08/05/24 15:19:25
お宝鑑定団子供大会
550:ヽ・´∀`・,,)っ━━━━━━┓
08/05/24 15:34:56
「さんの(レス|カキコ)」
551:デフォルトの名無しさん
08/05/24 17:33:19
みんなが
団子さんのカキコでスレが云々
とか書いておけば団子ハブにできるのか。いいな。
552:デフォルトの名無しさん
08/05/24 18:19:49
団子さん兄弟
553:デフォルトの名無しさん
08/05/24 20:35:16
もうこの板の名無しを「団子さん」にすりゃいいんじゃね?
554:デフォルトの名無しさん
08/05/25 08:54:41
そもそも彼奴が名無しで書き込めば解決なのだから
今後もハンドル付きで書き込むようなら
内容にかかわらず荒らし扱いで問題ないよな
555:デフォルトの名無しさん
08/05/25 11:32:52
.text:0040135A loc_40135A: ; CODE XREF: sub_401350+28j
.text:0040135A cmp [ebp+arg_4], 0
.text:0040135E jz short loc_40137A
.text:00401360 mov ecx, [ebp+var_4]
.text:00401363 mov byte ptr [ecx], 0
.text:00401366 mov edx, [ebp+var_4]
.text:00401369 add edx, 1
.text:0040136C mov [ebp+var_4], edx
.text:0040136F mov eax, [ebp+arg_4]
.text:00401372 sub eax, 1
.text:00401375 mov [ebp+arg_4], eax
.text:00401378 jmp short loc_40135A
.text:0040137A loc_40137A:
ループで文字列の比較をしてるんでしょうか?
インクリメントしてる方の処理が何をしているのか。
556:デフォルトの名無しさん
08/05/25 11:59:34
// >>555
for (; arg > 0; ++var, --arg) {
* var = 0;
}
// ただの配列のクリアだね。随分と無駄なコードだけれど。
557:デフォルトの名無しさん
08/05/25 12:09:37
>>556
ありがとうございます。
558:デフォルトの名無しさん
08/05/25 15:48:45
x86やAMD64向けの、NUL文字の位置を最速で求めるコードって何ですか?
559:デフォルトの名無しさん
08/05/25 15:57:03
ダンゴ様のピリっとしたベンチマークが求められているな
560:デフォルトの名無しさん
08/05/25 16:31:16
ダンゴちゃんの愛されっぷりがわかるスレだな
561:デフォルトの名無しさん
08/05/25 17:17:41
みんなツンデレすぎ
562:ヽ・´∀`・,,)っ━━━━━━┓
08/05/25 19:18:01
長い文字列なら16byteごとに一気に判定してしまうのが吉
lea edx, [str]
pxor xmm0, xmm0
loop1:
movdqu xmm1, [edx]
pcmpeqb xmm1, xmm0
pmovmskb ecx, xmm1
test ecx,ecx
jnz skip1
add edx, 16
jmp loop1
skip1:
bsf eax, ecx
add eax, edx ; eaxに結果格納
SSE4.1対応ならpcmpeqb+ptestでNULLが含まれる16バイトを検出可能。
SSE4.2に対応してればATAを使えばNULL文字の位置まで特定できる。
まあレイテンシ隠蔽とかの最適化は各自でやれ
563:デフォルトの名無しさん
08/05/25 19:25:54
SSSE3だのSSE4.1、4.2だの…
最近わけわかめ
564:デフォルトの名無しさん
08/05/25 22:33:37
そんなことよりMIPSやろうぜ。
565:デフォルトの名無しさん
08/05/25 23:35:56
Intel 64 and IA-32 Architectures Software Developer’s Manual の日本語版ない?
566:ヽ・´∀`・,,)っ━━━━━━┓
08/05/25 23:41:06
URLリンク(www.intel.com)
日本法人は変なFlashゲーム以外仕事しねーな
567:デフォルトの名無しさん
08/05/26 00:43:04
>>562
すげー倍以上速くなった。
568:デフォルトの名無しさん
08/05/26 09:14:22
>>567
想像で勝手な事言うが、メモリがボトルネックで流石に倍は無いだろう。
そら自力で1byteずつ調べてたらxmm使った場合の16倍の調査が必要になって
メモリアクセスに隠蔽されないくらい遅くなるかも知れないが
strlen使ったら普通4byteずつ調べてくれるから比較とかの時間はメモリアクセスの時間に隠蔽されるはず。
よく話題に上がる高速版memcpyを考えるのと同じで
ハードウェアプリフェッチを邪魔しない程度にプリフェッチの方法を考えた方がスピード上がるはず。
569:デフォルトの名無しさん
08/05/26 12:09:40
Windows上で動くCASL2のアセンブラを探しているんですが、何かありませんか?
ソースプログラムと実行結果をテキストで出力可能なら良いのですが。
570:デフォルトの名無しさん
08/05/26 12:27:03
>>569
いくらでもあんじゃない?
URLリンク(www.vector.co.jp)
571:ヽ・´∀`・,,)っ━━━━━━┓
08/05/26 12:30:32
stlrenで4バイト同時って可能なの?
dword単位で0が含まれるバイトを検索する命令なんてないと思うんだが。
基本的に巡回操作の場合は明示的な prefetch* 命令は使う必要ない。
文字列が全部キャッシュに載ってるなら尚更だし。
むしろmovdquの方に突っ込み入るかと思ったが(16byte境界からの探索にしてmovdqaしたほうがいいかも)
>>569
ここは良いGoogle検索代行スレですね。
URLリンク(www.vector.co.jp)
572:ヽ・´∀`・,,)っ━━━━━━┓
08/05/26 12:35:07
ああ、MSVCRTのstlren.asm見たらようやく理解できた。
1バイト毎にbranch命令じゃ確かにパイプラインハザードで性能でない罠。
573:ヽ・´∀`・,,)っ━━━━━━┓
08/05/26 22:35:00
まあ、俺は性能どころかまともに動くかすら全然確かめてなかったんで
とりあえず実験してみましたよ。
URLリンク(smallcode.weblogs.us)
のソース一式を改造して俺仕様stlrenベンチを作成。
NULL文字検出方法自体は>>562をベースに小改良をしたものね。
で、それぞれ一番最後のスコアだけ抽出
strlen - short strings
Microsoft: 1625 ticks, a = 145
Peter: 1093 ticks, a = 145
A.Fog: 1273 ticks, a = 145
DQN(SSE2): 674 ticks, a = 145←ここ
strlen - long string
Microsoft: 1225 ticks, a = 926
Peter: 1225 ticks, a = 926
A.Fog: 874 ticks, a = 926
DQN(SSE2): 437 ticks, a = 926←ここ
とまあ、MSVCRT版strlenの倍以上は余裕で速い。
もっとも、pmovmskbの性能によって前後するみたいだが(Pen4とかAMDのプロセッサなんかだと全力で遅いかも)
ちなみにうちの環境はCore 2 Duo (Wolfdale) 3.17GHz, Windows Vista Ultimate x64 Editionその他諸々ね
改造ソースとバイナリ一式→URLリンク(download.kousaku.in)
ちなみにSSE4.1(ptestを使う方法)だとSSE2と比べても伸びなかった。
574:デフォルトの名無しさん
08/05/26 23:11:38
OoOやら予測分岐やらでかい口叩いてもCPUがメモリに負けてるってことか。
てかMacBook Pro (Merom)でWinXP(32bit) on VirtualPCだとDQNおせぇ。
VMWareにデュアルコア割り当てちゃってるけどバッテリ駆動じゃねえのになあ。
(VMWareは片コアだけにした方が速いと言われている)
strlen - short strings
Microsoft: 6024 ticks, a = 145
Peter: 6708 ticks, a = 145
A.Fog: 6036 ticks, a = 145
DQN(SSE2): 12792 ticks, a = 145
strlen - long string
Microsoft: 6612 ticks, a = 926
Peter: 6792 ticks, a = 926
A.Fog: 4716 ticks, a = 926
DQN(SSE2): 12936 ticks, a = 926
イレギュラーな使い方だが、何故遅くなるのかは興味あるな。
575:ヽ・´∀`・,,)っ━━━━━━┓
08/05/26 23:22:02
ああ、うちのMerom機(T5500 Vista Home Premium (32bit))でも遅くなる。
【実行結果】
URLリンク(www.vipper.org)
pass [1234]
ちなみに答えはわかってる。
Merom/ConroeはShuffle Engineの実装がしょぼくて
pmovmskb reg, xmmがアホみたいに遅い。
MMXでやったほうがかえって速いかも知れない。
576:ヽ・´∀`・,,)っ━━━━━━┓
08/05/26 23:48:49
あれ?まともだ。
コンソール出力をリダイレクトすると何故かまともな結果が出るらしい。
そして、Meromでもシャッフルは思ったよりネックじゃない。
原因が別のところにありそう。
MMX(+SSE1 64bit整数SIMD)版追加版
URLリンク(download.kousaku.in)
Merom機で追試
URLリンク(www.vipper.org) PASS: [1234]
577:デフォルトの名無しさん
08/05/27 01:33:24
576をWindows Vista 32bit + T5600 (Merom) で実行したけど、ほぼ同じ結果なのだが、
short stringsのDQN(MMX)が a = 145 だった。
あとMMXとSSE2に限り、1/20くらいの割合で平均の3倍以上かかる時があった。
大体649ticksや660ticks前後なのに、突然1738ticksになったり。
でもMMX/SSE2はMSVCRTの倍を超えている。
L2キャッシュがあふれるほど長い文字列なら話は別だろうけど。
578:デフォルトの名無しさん
08/05/27 01:40:51
レジスタ退避コスト?
579:デフォルトの名無しさん
08/05/27 02:07:18
参考までにログをうp。fast_strlen > result.logとして出力。
パスは1234。Core 2 Duo T5600 Merom
Vista HomePremium SP1 32bit
URLリンク(www.dotup.org)
+ VirtualPC XP Pro SP2 32bit
URLリンク(www.dotup.org)
580:ヽ・´∀`・,,)っ━━━━━━┓
08/05/27 02:17:30
>>576の追試結果のテキストファイルはミスで、MMXのはShortのほうでLongを実行しちゃってるオチ。
今上げてるEXEとソースは修正済み。
PenM(Banias)でも計ってみたんだけど僅差でSSE2>MMXになってる。
並列度の低いコードではベクトル長の引き伸ばしはある程度有効ということがわかる。
>>578
あーそれもありそうだな。
Windowsってコンソールへの描画すらなにげに重たいようだ。
(ファイルだと軽いと思われる)
何周か回して平均値で算出したほうがよさそうかも。
581:デフォルトの名無しさん
08/05/27 07:42:01
こんなタイトなループで並列度が低いとか
582:デフォルトの名無しさん
08/05/27 09:53:49
>>570
ありがとうございます
583:デフォルトの名無しさん
08/05/27 10:00:07
いまどきアセンブラよりJavaのほうが速い。
JNI使えばハードの機能もフルアクセスだし。
584:デフォルトの名無しさん
08/05/27 10:18:41
つ、釣られるもんか!
585:デフォルトの名無しさん
08/05/27 11:20:27
>>583
開発速度のことですね、わかります。
586:デフォルトの名無しさん
08/05/27 11:41:02
Core2Quad Q9450でPS2エミュをやると、実機と違い処理オチせず、激ムズになることが判明
スレリンク(news板)l50
587:デフォルトの名無しさん
08/05/27 20:09:50
>>583
wwwwwwwwwwwwwwwwwwwwwww
588:ヽ・´∀`・,,)っ━━━━━━┓
08/05/27 20:31:16
JNIでfast_strlen.cppの関数をコールですね。わかります。
589:デフォルトの名無しさん
08/05/28 22:05:50
このスレを見ている人はこんなスレも見ています。(ver 0.20)
フロントミッション総合 - FRONT MISSION - 105th [家ゲーSRPG]
この会社辞めようと思った腐れ上司の一言0x21 [プログラマー]
590:デフォルトの名無しさん
08/05/29 16:29:58
すいません。アセンブラの宿題が終わらなくて。。。
どうか、手伝ってください。。。
Define a character string named CO_NAME containing "Internet Service" as a content.
コレ分かる方います?
あ〜!わかんね〜!
591:デフォルトの名無しさん
08/05/29 18:33:02
自己解決しました
592:デフォルトの名無しさん
08/05/30 22:49:58
>>589
涙出てきた
593:デフォルトの名無しさん
08/06/03 00:55:58
アセンブラでポインタってできるんですか?
変数の値の番地のプログラムに飛びたいんですが
594:デフォルトの名無しさん
08/06/03 03:45:37
どの石よ?
595:デフォルトの名無しさん
08/06/03 05:16:21
PICです
596:デフォルトの名無しさん
08/06/03 06:28:13
>>595
間接アドレシングで出来るから、手元にあるデータシートに記載されてる説明を確認の事。
手元になければ↓からダウンロードして欲しい。
URLリンク(www.microchip.co.jp)
597:デフォルトの名無しさん
08/06/03 13:11:35
すごいですありがとうございます!
598:デフォルトの名無しさん
08/06/05 13:41:56
【算術演算結果による分岐】 N 番地の内容から M 番地の内容を引き,答えが負なら P 番地に -1(#FFFF)を,正なら +1(#0001)を格納するプログラムを作成しなさい.
599:デフォルトの名無しさん
08/06/05 13:46:02
>>598
だが断る
600:デフォルトの名無しさん
08/06/05 15:58:03
>>598
問題文が糞だから書き直せ屑
601:デフォルトの名無しさん
08/06/05 18:58:36
>>598
#define V(X) *(short *)(X)
r = V(N) - V(M), r < 0? V(P) = -1 : r > 0? V(P) = 1 : 0;
602:デフォルトの名無しさん
08/06/05 23:40:05
答えが 0 の時は、格納しちゃダメなんじゃないのか?
603:デフォルトの名無しさん
08/06/06 01:20:57
そーゆー問題のときは"0"=正で考えていいんでないかい。
特別扱いする必要があったらそういう注意書きがあると思う。
604:デフォルトの名無しさん
08/06/06 02:52:33
>>598
CLRX
INCX
LDD M
CPD N
SBEX #0
CPD N
SBEX #0
605:デフォルトの名無しさん
08/06/06 02:55:52
STX P
606:デフォルトの名無しさん
08/06/06 07:25:19
>>598
;うろおぼえ68000
START:
MOVE.W SR, -(SP)
MOVEM.L D0-D1, -(SP)
MOVEQ #1,D1
MOVE.W N(PC),D0
CMP.W M(PC),D0
;SUB.W M(PC),D0
BPL L_PLUS(PC)
NEG.W D1
L_PLUS:
MOVE.W D1,P(PC)
MOVEM.L (SP)+, D0-D1
MOVE.W (SP)+, SR
RTS
N: DC.W $FF00
M: DC.W $00FF
P: DS.W 1
607:デフォルトの名無しさん
08/06/06 10:50:12
しれっと特権命令使ってんじゃネーヨw
608:デフォルトの名無しさん
08/06/06 12:31:03
ああ、そうか。
MOVE.W (SP)+, SR
RTS
じゃなくて
RTR
で、いいんだ。
609:デフォルトの名無しさん
08/06/06 23:17:04
>>603
> そーゆー問題のときは"0"=正で考えていいんでないかい。
> 特別扱いする必要があったらそういう注意書きがあると思う。
そう言う思い込みはバグの元になるぞ。
610:デフォルトの名無しさん
08/06/06 23:21:17
68000だけはmove SRが一般命令だったり。
010になって特権命令になったが。
ところで、PC相対ってオペランドの右に使えたっけ?
なんか制限あったような気がするんだが。
611:デフォルトの名無しさん
08/06/06 23:52:58
>>610
> 68000だけは
68008 のこともたまには思い出してください。
> move SRが一般命令だったり。
move from SR の方だけね、move to SR は 68000 でも特権命令。
> ところで、PC相対ってオペランドの右に使えたっけ?
て言うか、CMP 命令は右にしか使えない。
Add/Sub なんかはどっちにでも使える (但し、反対側は Dn のみ)
けど、CMP はその後の条件判定を反対にすればいいので、片方しか
必要ないと判断したんだろうな。
612:デフォルトの名無しさん
08/06/08 12:25:06
;青い本みてやりなおした68000
START:
MOVE.W SR, -(SP)
MOVEM.L D0-D1/A0, -(SP)
MOVEQ #1,D1
MOVE.W N(PC),D0
CMP.W M(PC),D0
BPL L_PLUS(PC)
NEG.W D1
L_PLUS:
LEA P(PC), A0
MOVE.W D1, (A0)
MOVEM.L (SP)+, D0-D1/A0
RTR
dstにd16(PC)使えるの4命令しかなかた
613:607
08/06/08 15:33:43
* ステップ数を詰めてみた。
MOV.W N,D0
CMP.W M,D0
SMI D0 *(00/FF)
EXT.W D0 *(0000/FFFF)
ORI.W #1,D0 *(0001/FFFF)
MOV.W D0,P
* もっと変則にしてみたがステップ数縮まらず。
MOV.W N,D0
CMP.W M,D0
SPL D0 *(FF/00)
EXT.W D0 *(FFFF/0000)
ASL.W #1,D0 *(FFFE/0000)
NOT.W D0 *(0001/FFFF)
MOV.W D0,P
* Scc を用いない方法。
MOV.W N,D0
SUB.W M,D0
ASR.W #8,D0 (00??/FF??)
ASR.W #8,D0 (0000/FFFF)
ORI.W #1,D0 (0001/FFFF)
MOV.W D0,P
* そして分岐を使っていないことに気が付く。
614:デフォルトの名無しさん
08/06/08 17:27:20
素直な人間の思考から外れるものはコメント無いと泣けるので勘弁してください。
615:デフォルトの名無しさん
08/06/08 17:32:57
>>613
(PC)を使ったらもっと縮まるんじゃない?
616:デフォルトの名無しさん
08/06/08 18:55:49
直感的ではない技巧に走るのは厨房
617:デフォルトの名無しさん
08/06/08 19:35:35
それは実務に限った話だ。
618:>>611
08/06/08 20:52:52
>>612
> dstにd16(PC)使えるの4命令しかなかた
ほんとだ、俺もすっかり忘れてた。
そもそも、PC 相対はアクセスモードがプログラム参照 (FC=ユーザープログラム
or スーパーバイザプログラム) になるから、可変データを PC 相対でアクセスす
る領域に置くのは推奨されない。
さすがにデータ参照とプログラム参照で違うメモリをアクセスするシステムは見
たことないけど、プログラム参照領域は書込み禁止を設定しているシステムはあ
るのでちょっと注意した方がいいかも知れない。
> MOVE.W SR, -(SP)
move ccr, (-a7) でいいと思うが。
あと、68k は大抵の命令でコンディションコードが変化するから、サブルーチン
の前後でコンディションコードを保存しないと言う流儀の方が多いと思う。
619:デフォルトの名無しさん
08/06/08 22:23:20
コメントなしにいきなり殴り書きされてるんじゃない限り
技巧のうちにゃ入らんだろ
620:デフォルトの名無しさん
08/06/09 18:12:54
>>598
LEAX N
CMPX M
BPL L_PLUS+1
LDB #$FF
L_PLUS
CMPX #$C601
SEX
STD P
621:デフォルトの名無しさん
08/06/09 20:07:17
って最初からボケてる LDX N 或いはLEAX [N] か?
622:デフォルトの名無しさん
08/06/09 20:11:46
>>621
だね。6809は専門じゃないからつっこみかねてた。
ときに C6 01 にコメント振ってくれるとありがたい。
つか SEX 書きたかっただけじゃないか?
623:デフォルトの名無しさん
08/06/09 20:35:48
バレたか(w
C6 はLDBのつもりだった、反省はしてない。
624:ヽ・´∀`・,,)っ━━━━━━┓
08/06/09 20:39:00
Obj-Cでsuper freeとか書くようなノリか
625:デフォルトの名無しさん
08/06/09 21:05:43
ただ8bitCPUだから、コスト的にはどうなんだろうな?
クロック表が見当たらないぜ。
626:デフォルトの名無しさん
08/06/09 21:29:08
68系ばっかりになるのなw
627:デフォルトの名無しさん
08/06/09 21:59:12
このスレで最高にビューティフルなマシン語を持つ超エレガントなアーキテクチャのCPU仕様を作ってARM超えを目指そうぜ!
プロジェクトリーダーはダンゴさんに任せた!
628:デフォルトの名無しさん
08/06/10 08:46:38
Kaltfeuerとでも名付けよう。
629:デフォルトの名無しさん
08/06/11 03:19:05
沢村さんを推します
630:デフォルトの名無しさん
08/06/13 18:28:34
ある命令の実行に何クロックかかるかを知りたいんですが、
CPU毎に"命令Aにはnクロックかかるよ"っていうのがリストされた資料があるんですか、それとも実測ですか?
もし実測しかないならその方法を簡単に教えてください
631:デフォルトの名無しさん
08/06/13 18:33:45
自己解決しました
amdとintelの最近のプロセッサものはとりあえず見つけました
メーカーがwebで公開してるんですね・・・
632:デフォルトの名無しさん
08/06/13 19:28:44
なんか昨今はGoogleする前に2chって思考なのかね
人の脳みそをあんまり安く考えてると、働くようになってから
苦労するんじゃねーかな
まあ、半可通の糞ほど教えたがりなんだが
633:デフォルトの名無しさん
08/06/13 19:43:33
これがゆとりか・・・
634:デフォルトの名無しさん
08/06/13 20:05:52
普通に勉強してれば命令語一覧とかに載ってるのを知ってそうなものだが・・・
そのうち
「ある命令の実行でフラグがどう変わるか知りたいんですが?」
とかの質問も来るのかな。
635:デフォルトの名無しさん
08/06/13 20:54:57
>>632
逆に半可通だからこそそういう疑問が出るんじゃないかな?
ビンゴワードを知らないと何回か周辺ワードでググってそれを探さないといけないから意外と難しい。
昔は頭使わなくてもマイコン雑誌の特集とかで載ってて必修みたいなものだったけどさ。
636:ヽ・´∀`・,,)っ━━━━━━┓
08/06/13 21:14:19
実測するためのCソースもIntelが提供してるな。
アレもわかりにくいところにあるけど
637:デフォルトの名無しさん
08/06/14 01:40:46
>>635
> 逆に半可通だからこそそういう疑問が出るんじゃないかな?
半可通の酋長ダんゴ先生をバカにシュルナ!!!!
638:デフォルトの名無しさん
08/06/14 03:53:12
知っているのならさっさと教えろやクズどもが。
639:デフォルトの名無しさん
08/06/14 09:32:33
>>638
あんただれ?
640:デフォルトの名無しさん
08/06/14 12:38:30
俺だよ俺俺
641:デフォルトの名無しさん
08/06/14 12:43:50
あちこちで、教えるクンがオナニーしすぎて>>638みたいな機知外
が本当に増えている
642:デフォルトの名無しさん
08/06/14 13:36:40
>>634
それも実験して調べるのです(Z80の隠し命令かよ・・・)。
643:デフォルトの名無しさん
08/06/14 18:00:18
>>641
それ以上にそいつ等をスルーできないやつ等のほうが増えて内科医。
644:デフォルトの名無しさん
08/06/14 18:11:17
おっさんくさいスレになりました
645:デフォルトの名無しさん
08/06/14 22:23:13
まあアセンブラなんて今時の若い者はあまりやらんからな。
646:デフォルトの名無しさん
08/06/14 23:17:34
つPIC
647:デフォルトの名無しさん
08/06/14 23:22:19
最近の若い奴はJVMとCLRのアセンブラ(バイトコード)は結構読めるよ。
648:デフォルトの名無しさん
08/06/15 08:17:07
NASM のドキュメントの Appendix B って消えた?
あれ便利してたんだが。
649:デフォルトの名無しさん
08/06/17 22:28:15
今時アセンブラの需要はあるのかねえ
650:デフォルトの名無しさん
08/06/17 22:34:13
コンパイラベンダにゃ必須だろう。
651:デフォルトの名無しさん
08/06/17 22:36:25
エンコーダとか
652:デフォルトの名無しさん
08/06/17 22:40:54
ベクトル化ガリガリやりたいなら必要だね
653:デフォルトの名無しさん
08/06/17 23:03:58
組み込みで、ブートローダー書く人とか。
654:デフォルトの名無しさん
08/06/17 23:31:20
高級言語で書けない命令がどれだけあると思ってるんだ?
655:デフォルトの名無しさん
08/06/18 00:10:10
ローテート命令。
なんでC言語にはローテート演算子が無いんだ。
何度欲しいと思ったことか…
656:デフォルトの名無しさん
08/06/18 00:13:10
ローテートってそんなに速くなかったような気がするよ
657:デフォルトの名無しさん
08/06/18 00:45:22
シフトと論理和もしくは加算で書くより速いだろJK
何でもかんでもアセンブラで書きたがるのは昔の厨二病
658:デフォルトの名無しさん
08/06/18 00:47:15
結果をすぐ使わないのであれば
うまく並列実行されれば
ローテートより速いんじゃね?
659:デフォルトの名無しさん
08/06/18 00:48:59
>>657
それがだな、昔シフト系の命令がクソ遅い Pentium4 とかいう CPU があってだな。
x86 の rol/ror 命令使うよりも mmx シフトと mmxor で書いたほうが速いとかいう
ふざけたこともあったのだよ。フツーの 32bit の SISD でね。
660:デフォルトの名無しさん
08/06/18 01:00:51
つーか、ローテート命令が遅いなんてデマを流さないでほしい。
661:デフォルトの名無しさん
08/06/18 01:53:52
>>660
CPU によるけど、ローテート命令が速くない環境はあるよ。
intel の 24896604_j.pdf からの引用だけど、x86 では
add : レイテンシ 0.5clk, スループット 0.5clk
shl/shr: レイテンシ 4clk, スループット 1clk
rol/ror: レイテンシ 4clk, スループット 1clk
でー mmx だと
pslld: レイテンシ 2clk, スループット 1clk
psrld: レイテンシ 2clk, スループット 1clk
por: レイテンシ 2clk, スループット 1ckl
ね。
SISD で rol/ror より速いっつーのは記憶違いで嘘だったけど。
まーこういう糞な石はメインストリームじゃなければ無視できる
のだけど、一時期多数派を占めてたりしたから無視するわけにも
いかんのよ。
662:デフォルトの名無しさん
08/06/18 03:25:13
そんなにCがいいならインラインアセンブラつかえよ
663:デフォルトの名無しさん
08/06/18 03:31:41
ローテートぐらいならgccの拡張で使えたような気がする
664:デフォルトの名無しさん
08/06/18 13:26:14
rol や ror はintrinsicであるんだけどrolxやrorxのようにキャリーと一緒に回すのが無いんだよね
665:デフォルトの名無しさん
08/06/18 13:45:41
そもそもCにはキャリーの概念すらないし。
666:デフォルトの名無しさん
08/06/20 09:47:19
Cのソースからアセンブラ吐いたんだけど,Cのソースではhoge(0,1)って引数で関数
呼び出してるけど、アセンブラでは
movl $1, 4(%esp)
movl $0, (%esp)
という風に引数を逆に処理してるのは、どういう意味があるの?ご教示お願いします
667:デフォルトの名無しさん
08/06/20 09:54:29
>>666 悪魔乙
gas の記法だろ。アセンブラによってオペランドを書く順番が違ってくるのさ
668:デフォルトの名無しさん
08/06/20 10:02:58
いや,オペランドじゃなくて引数の順序だろ.
C では良くあること.
669:デフォルトの名無しさん
08/06/20 10:05:04
>>666
・スタックは数が減る方に向かって伸びる。
・その例でも引数1が %esp+0, 引数2が %esp+4 になってるでしょ?
・引数のポインタを取ったとき、スタック上の引数列が配列になるでしょ?
hoge(int foo, int bar) を例に取ると
int *p = &foo; によって
p[0] == foo
p[1] == bar
となる。
で、このことは、引数不定とか可変長引数を実装するときに
すごく都合がいい。スタックトップが必ず引数1になる。
K&Rの頃は引数不定がまかり通ってたし。
なお、>>666 の例では、%esp はあらかじめ減じられていると思われるため
movl $0, (%esp)
movl $1, 4(%esp)
のように引数順に処理することもできるが、コンパイラの都合上それをやっていない。
670:デフォルトの名無しさん
08/06/20 11:45:08
処理系によるんじゃないか?
671:デフォルトの名無しさん
08/06/20 12:04:24
>>666
Cの引数の評価順は特に決められていないので、コンパイラの都合で好きな順序で処理してよいわけだが、
たまたま逆順の方がコンパイラを作りやすかったとか、特に気にしないで作ったらたまたま逆順になったとか、
そんなとこだろうと思うよ
特に意味はないかと
672:デフォルトの名無しさん
08/06/20 12:12:48
厳格に決まっているわけではなく、
>>669
の述べているような理由などから、私が使っている処理系では引数がたまたま
決まっているということでいいんですか?
673:デフォルトの名無しさん
08/06/20 12:13:51
↑訂正、
引数がたまたま逆に処理されている
674:デフォルトの名無しさん
08/06/20 12:55:25
>たまたま逆に
いや単に右から左なだけで,逆順とか正順とか決まってないから
675:デフォルトの名無しさん
08/06/20 13:34:07
カウントダウン方向で繰り返し処理すれば
フラグ見るだけで処理の終わりがわかる
676:デフォルトの名無しさん
08/06/20 15:03:55
コード生成とスタックに積む都合から言うと、スタックに先に積むほうから
評価をしたいわけだ。
それと、可変長引数のことを考えると、Cの引数は右から左の順で積んだ
ほうが都合が良い、ということ。
677:デフォルトの名無しさん
08/06/20 18:12:47
やり方は、複数あるが後々都合が良い
ってことですね。ありがとうございます。
678:デフォルトの名無しさん
08/06/20 18:21:36
富の目キモすぎ。バケモン。身障。DQN男。死ね 富の目キモすぎ。バケモン。身障。DQN男。死ね 富の目キモすぎ。バケモン。身障。DQN男。死ね 富の目キモすぎ。バケモン。身障。DQN男。死ね
富の目キモすぎ。バケモン。身障。DQN男。死ね 富の目キモすぎ。バケモン。身障。DQN男。死ね 富の目キモすぎ。バケモン。身障。DQN男。死ね 富の目キモすぎ。バケモン。身障。DQN男。死ね
富の目キモすぎ。バケモン。身障。DQN男。死ね 富の目キモすぎ。バケモン。身障。DQN男。死ね 富の目キモすぎ。バケモン。身障。DQN男。死ね 富の目キモすぎ。バケモン。身障。DQN男。死ね
富の目キモすぎ。バケモン。身障。DQN男。死ね 富の目キモすぎ。バケモン。身障。DQN男。死ね 富の目キモすぎ。バケモン。身障。DQN男。死ね 富の目キモすぎ。バケモン。身障。DQN男。死ね
679:デフォルトの名無しさん
08/06/20 18:45:53
呼出し規約とかは関係してこないの?
680:ヽ・´∀`・,,)っ━━━━━━┓
08/06/20 18:47:45
push/pop命令の動きはABI云々じゃなくてCPUの動作仕様だからな
681:デフォルトの名無しさん
08/06/20 20:23:35
VC++ に限って言うなら、
普通の関数は右から左、
普通のメンバ関数は左から右、
可変長引数を持つメンバ関数は右から左、だな。
682:デフォルトの名無しさん
08/06/20 20:25:17
Cっていうか、WindowsAPIの仕様に引っ張られてるんじゃね?
683:ヽ・´∀`・,,)っ━━━━━━┓
08/06/20 20:28:54
thisポインタ=ecxは何とかならんかったのかと思う
まあ、他に無いっちゃないが
684:デフォルトの名無しさん
08/06/20 20:29:03
PASCALキーワード!!!
685:デフォルトの名無しさん
08/06/20 20:57:03
VC++のメンバはthisをecxに積んで右からスタックだったはずだが
686:デフォルトの名無しさん
08/06/20 22:39:15
なんか、引数をスタックに積む順序と引数の評価順序の区別が付いてない
奴がいるな。
687:デフォルトの名無しさん
08/06/20 22:48:48
↑どういうこと?
688:デフォルトの名無しさん
08/06/20 22:49:28
>>685
ごめん。まちがえてた。
689:デフォルトの名無しさん
08/06/21 00:59:53
引数の評価順序って決まってたっけ
690:デフォルトの名無しさん
08/06/21 01:07:38
68000での質問です。
cmpi.w #$1234, D0
や
cmpi.l #$12345678, D0
と同等な事をA0に対しても行いたく思い、
cmpaを使ってみましたが上手くいきません。
なぜでしょうか?
691:デフォルトの名無しさん
08/06/21 08:33:30
>>687
左から評価して、右から積んでも規約に違反はしてない。
評価した順にスタックに積んで行くほうが楽。
という「都合」が引数の評価とスタックに積む順序に影響しているってこと。
692:デフォルトの名無しさん
08/06/21 09:13:13
>>690
エスパーはいないぞ!
もっと詳しく書け。
693:デフォルトの名無しさん
08/06/21 16:40:04
>>687
スタックに積まれた引き数の配置は処理系で決まっている。
順番に詰まれるかどうかは分からない。
評価順序も決まっていない。
>>690
> 上手くいきません。
何をやって、どうなることを期待してて、どうなったかを書け。
694:690
08/06/21 17:07:42
解決しました。
理由もなんとなくわかりました。
ありがとうございました。
695:690
08/06/21 17:15:55
お前らの役立たずっぷりに呆れました。
もう二度と来ません。
696:690
08/06/21 17:18:51
>>695
まあそれが本音ですけどね。
もはや揚げ足取りですし。
ありがとうございます。
697:デフォルトの名無しさん
08/06/21 17:23:01
なんかね、どこからが釣りだったのかね、もうね
698:690
08/06/21 18:27:33
詰まらない偽者がスレ汚ししてすみません。
最終レスは>>695です。
ありがとうございました。
699:デフォルトの名無しさん
08/06/21 18:48:48
いいから消えろよクズ
700:デフォルトの名無しさん
08/06/21 18:57:46
ほっとけ
構うな
701:690
08/06/21 19:16:46
>>700
まったく同意
702:690
08/06/21 20:47:38
誰だお前
703:デフォルトの名無しさん
08/06/21 22:33:55
もう誰が誰だかわやくちゃなんだけど、休日にわざわざこんなスレにまできて...
なんかかわいそうだな。
704:デフォルトの名無しさん
08/06/23 20:35:43
Re:> お前はなにを言っているのか
705:デフォルトの名無しさん
08/06/24 00:44:09
king、コテ付け忘れてるぞ
706:1stVirtue
08/06/24 21:10:58
Reply:>>705 お前に何がわかるというのか。
707:デフォルトの名無しさん
08/06/25 01:47:33
キングさんって、スクリプトですか。??
708:デフォルトの名無しさん
08/06/25 10:58:32
ん
数学板のking?
709:デフォルトの名無しさん
08/06/26 21:27:12
いきなりkingネタかよ
数学板以外にもたまーに顔出してるよ、奴は
710:デフォルトの名無しさん
08/06/30 16:29:09
MASM MSからダウンロードしたけど、VC++ Express 2005が必要だと・・・
VC++ Express 2008じゃだめ?なの?
711:デフォルトの名無しさん
08/06/30 16:53:44
>>710
強制解凍してけば長いファイル名のが出てくるからそれを拡張子exeにリネーム
712:ヽ・´∀`・,,)っ━━━━━━┓
08/06/30 17:07:48
もうNASMでえーやん
713:デフォルトの名無しさん
08/06/30 17:32:54
>>711
thnx・・・thnx......
冷静に考えて
そうだ、ここは俊足なレスポンスを期待しちゃいけない、
と思い、
無い頭で考えて、
オーソドックスにプロンプトの指示に従い、
アンインストールをしたところで、
>>711発見 orz
あうぅぅぅ
714:デフォルトの名無しさん
08/06/30 17:35:23
JWasmってどうなんだろ?
715:デフォルトの名無しさん
08/06/30 17:41:44
>>712
YASMどうよ?
716:デフォルトの名無しさん
08/06/30 19:20:57
Yasm URLリンク(www.tortall.net) NASM/GAS互換 64bit対応 修正BSDライセンス
JWasm URLリンク(www.japheth.de) MASM v6/WASM互換 Open Watcomライセンス
717:デフォルトの名無しさん
08/07/01 08:54:17
ちょっと使ってみた個人的な感想など:
Jwasm: コマンドラインの引数など使い勝手がいいとは言い難い。
特にリンカは最悪で、設定ファイルが必要だとか訳が判らん。
結局、リンカだけ alink URLリンク(alink.sf.net) と
そこにある win32.lib を使うことでバイナリ作成した。
その後に使った fasm URLリンク(flatassembler.net) なら、
単体で実行バイナリまで生成することが判った。
記法も独特ではあるけども、ヘルパのインクルードが充実していて
あるAPIの挙動を確かめるようなテスト・ルーチンなんかをスクラッチするには
いい感じだと思った。
718:デフォルトの名無しさん
08/07/01 17:48:04
いや、互換物はオリジナルと比較しないと意味ないでしょ。
あと、wlinkはなんでもできる強力なリンカだよ。libだけ用意すれば(.aでも.libでも食べてくれる)
jwasm .\samples\windows1
wlink FORM Windows NT runtime CON F windows1 L kernel32.lib
みたいな感じでいける筈。
たしかwatcom本体の方にMSのlink互換の奴(ラッパー?)が入ってる筈だから
それの差し替え用なのかもね?
719:デフォルトの名無しさん
08/07/01 19:23:34
masm32のinc参照してるやつも導入pathを調整すれば同様に
jwasm .\samples\windows3
wlink FORM Windows NT F windows3 L kernel32.lib,user32.lib
でバイナリは出来るんだけと、これって豆腐窓が出れば成功なのかな?
窓プログラムはソース見てもいまいちわからないorz
720:デフォルトの名無しさん
08/07/02 19:58:28
lzasmってTASMのideal文法サポートだけで、MASM互換部分はごっそり抜けてるのかな?
それとも元々こんなもんなの? 共通ソースってどうやったら書けるんだろうこれ?
721:デフォルトの名無しさん
08/07/02 21:02:44
masm support なんて書いてないけど
722:デフォルトの名無しさん
08/07/02 21:30:44
っていうかTASMとMASMの共通ソースってことね。
ローカルラベルとか使わなきゃ出来るんだと思ってた。
723:デフォルトの名無しさん
08/07/02 22:30:47
TASM,MASM両用にしたい場合
TASMのMASM5.1互換モードだかなんだかを使っていた記憶がある
724:デフォルトの名無しさん
08/07/05 04:50:49
ゲームの解析をしているのですが
MOV EDX,exe.00666666
00666666 は XOR AL,31 となっています
近くに1〜31範囲外の定数ビットシフトというコメントが多く使われているのですが
どのような処理をしているのかわかりますでしょうか?
725:デフォルトの名無しさん
08/07/05 05:19:48
単なるデータじゃないってなんでわかったの?
726:ヽ・´∀`・,,)っ━━━━━━┓
08/07/05 15:53:04
つかDSに命令書くとDEPに殺されるだろJK萌え〜
その命令らしきものの後にretなりjmpがある?
727:724
08/07/06 02:01:18
>>725
00666666 はrdataセクションでしたorz
MOV EDX,exe.00666666のASCII"41C6tvejeNiWj・・・・"の中身が格納されてるだけでした
>>726
MOV EDX,exe.00666666
SUB EDX,EAX
CMP EDX,ESI
JNB SHORT exe.0050175C
0050175C TEST EDI,EDI
0050175E JNZ SHORT exe.00501764
00501769 MOV EAX,66666667
0050176E IMUL EDX
この↓にもジャンプ命令がたくさんあります。リターンはずっと後にでてきます。
728:デフォルトの名無しさん
08/07/10 07:03:07
うんこい質問で申し訳ないですが、
00401239 |. B9 64000000 MOV ECX,64
0040123E |. F7E1 MUL ECX
00401240 |. 83F8 00 CMP EAX,0
00401243 |. 75 06 JNZ SHORT xxx.0040124B
00401245 |. B8 01000000 MOV EAX,1
0040124A |. C3 RETN
0040124B |> 33C0 XOR EAX,EAX
0040124D \. C3 RETN
関数の末尾のコピペなんですが、
アドレス0x00401239時点でのEAXが0以外で、この関数が1を返す事はあり得ますか?
ECX(=0x64)を掛けている理由がよく分からないので、そういう可能性があるのかと思いまして。
729:デフォルトの名無しさん
08/07/10 10:26:35
eaxの値が0x04000000〜0xf4000000の範囲なら1
730:デフォルトの名無しさん
08/07/10 16:44:24
>>724
単なる難読化だろw
731:デフォルトの名無しさん
08/07/11 04:23:03
初歩的な質問ですが教えてください
MOV DWORD PTR DS:[ESI],00400000
例えば、00400000にはアドレスが入っています。この場合、00400000を移動するのか
格納されているアドレスを移動するのか、どちらでしょうか?
732:デフォルトの名無しさん
08/07/11 19:34:23
// ESIはポインタ
*ESI = 400000;
733:デフォルトの名無しさん
08/07/11 23:41:52
それだと誤解を招きそうなので
// ESIはポインタ
TYPE_T *ESI;
ESI = 0x400000;
って書いた方が
734:デフォルトの名無しさん
08/07/11 23:48:37
ポインタじゃなくて、ただのレジスタとメモリ領域。
ポインタって言ってると、わかり辛い。
735:デフォルトの名無しさん
08/07/12 00:19:54
>>731
セグメントアドレスがDSの値でオフセットアドレスがESIの値なメモリ領域に十進数の400000を入れているように見える
736:デフォルトの名無しさん
08/07/12 10:02:54
// DSの説明ははしょるけど DWORD PTRなんだから
DWORD* ESI;
*ESI = 0x400000;
// でええんでないか?
737:デフォルトの名無しさん
08/07/12 10:42:06
皆さんありがとうです
ESIにデータセグメントのアドレス00400000を示しているということですね
ではそのままなら[ESI+8]は00400008でよいのですか?
738:デフォルトの名無しさん
08/07/12 11:28:25
>>737
だめ
739:デフォルトの名無しさん
08/07/12 11:47:50
ddebでも落として飽きるまで実験しろ
740:デフォルトの名無しさん
08/07/13 07:45:00
だめだこりゃ
741:デフォルトの名無しさん
08/07/14 18:39:18
キャリーフラグの反転ができる CPU では、
コイツも使ってやってね(Z80 表記)。
CP 0AH
CCF
ADC 30H
DAA
742:デフォルトの名無しさん
08/07/17 13:12:01
URLリンク(www.computerworld.jp)
743:デフォルトの名無しさん
08/07/18 00:00:59
質問:アセンブラの除算
質問です。アセンブラの除算は、具体的に どのような処理をしているのでしょうか。
「ビット レベルの計算」のイメージができません。
また、除算は ほかの計算と比較して、クロック数を消費するとインターネットに書いてありました。
それが なぜなのか、理解できていません。
おそらく、どのような計算をしているかを把握できれば、理解できるとおもうのですが。
インターネットで「除算 アセンブラ div 」などで検索しましたが、求めている情報が入手できませんでした。
そのため、質問させていただきます。
また、読むべきサイト、書籍などがあれば、教えていただければ幸いです。
よろしく お願い致します。
744:デフォルトの名無しさん
08/07/18 00:06:58
除算器で検索
745:デフォルトの名無しさん
08/07/18 00:10:28
>>743
つ URLリンク(journal.mycom.co.jp)
ここを読んでまるっきり理解できなきゃ筋がないと見なす。
746:デフォルトの名無しさん
08/07/18 00:40:01
ありがとうございます。よんで勉強します。
論理回路の基礎は知っているので、何とか理解できそうです。
747:デフォルトの名無しさん
08/07/18 05:25:03
ビットレベルの計算って、要するに2進数で筆算してるだけの話じゃないか?
748:デフォルトの名無しさん
08/07/18 07:05:38
それ前にアセンブラの除算もCの除算もみな一緒だと思うが
749:デフォルトの名無しさん
08/07/18 09:00:46
>>747
筆算ってこたーない。。
750:デフォルトの名無しさん
08/07/18 09:51:37
>>749
マジなんか面白く上げ足とっただけか知らんが、イメージは筆算だ。
掛け算も同じ。
751:デフォルトの名無しさん
08/07/18 09:56:38
その人がどういうモデルで筆算というものを把握してるかに依るだろJK
752:デフォルトの名無しさん
08/07/18 10:30:08
>>745の84回で、モロに筆算の図が載っているわけだが
753:デフォルトの名無しさん
08/07/18 11:23:14
>>751
筆算にモデルもクソもあるか JC
754:デフォルトの名無しさん
08/07/18 11:40:04
夕食ってどうやって作るんですか->一例を回答->それは調理だな
755:デフォルトの名無しさん
08/07/18 16:51:24
CASLの問題のこと聞いてもおk?
756:デフォルトの名無しさん
08/07/18 18:43:28
レスがどんなアセンブラでも構わないならいいんじゃね?
っていうか専門スレないの?
757:デフォルトの名無しさん
08/07/18 18:51:47
情報処理試験のあれか、1バイトが16ビットだっけか。
758:デフォルトの名無しさん
08/07/18 19:26:11
おいおい
1バイトは8ビットだろ・・・。
759:デフォルトの名無しさん
08/07/18 19:32:52
情報処理技術者試験出題範囲を見る限りでは、1語16ビットとは書いてあるが「バイト」という単語は出てこないっぽい。
760:デフォルトの名無しさん
08/07/18 19:38:38
>>758
決まってるわけじゃないよ。多いだけ。
761:デフォルトの名無しさん
08/07/18 22:23:51
>>760
このスレの住人ならそんなこと百も承知だろう
762:デフォルトの名無しさん
08/07/18 22:36:07
ワードアドレッシングマシンなんだよな確か
763:デフォルトの名無しさん
08/07/18 22:54:27
CASL でシフトによる割り算がまったく思いつきません。どなたかお手本をみせていただけませんか?
764:デフォルトの名無しさん
08/07/18 23:21:16
>>763
とりあえず1ビット右シフトを考えてみて。
765:デフォルトの名無しさん
08/07/19 02:29:36
昔々あるところに、1byteが6bitや9bitのコンピュータがあってだな…
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4975日前に更新/195 KB
担当:undef