トップ «前の日記(2007-09-07) 最新 次の日記(2007-09-09)» 編集

はじめてのにき

ここの位置付け

2004|11|
2005|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|

ToDo:


2007-09-08

_ pipe

http://d.hatena.ne.jp/sumim/20070907/p1

FYI

http://d.hatena.ne.jp/mb2sync/20061205#p1

に衝撃を受けたことが。

あと Haskell の $ とも雰囲気は似てるよな。 結合順序変えるみたいな点で。

(00:11)

_ 30秒

http://alohakun.blog7.fc2.com/blog-entry-834.html

のコンパイル速度とか正直気にも止めない速さだな…

sdmkun 作ってた時はソースいじって3分ヘッダいじったら10分、 フルビルド30分って感じだったとおもう。

(11:52)

_ あと

誰もつっこんでないから書いとくと .L2 とかは お察しの通り自動生成してるラベルかと。

i@um ~/test> cat branch.c
main(a) {
    if (a < 1) {
        return 1;
    }
    else {
        return 0;
    }
}
i@um ~/test>gcc branch.c -S
i@um ~/test> cat branch.s
        .text
.globl _main
_main:
        pushl   %ebp
        movl    %esp, %ebp
        subl    $24, %esp
        cmpl    $0, 8(%ebp)
        jg      L2
        movl    $1, -12(%ebp)
        jmp     L4
L2:
        movl    $0, -12(%ebp)
L4:
        movl    -12(%ebp), %eax
        leave
        ret
        .subsections_via_symbols

ちゃんと分岐作ってくれたか。

@um ~/test> gcc branch.c -S -O
@um ~/test> cat branch.s
       .text
globl _main
main:
       pushl   %ebp
       movl    %esp, %ebp
       cmpl    $0, 8(%ebp)
       setle   %al
       movzbl  %al, %eax
       popl    %ebp
       ret
       .subsections_via_symbols

return 1 を 2 に

i@um ~/test> cat branch.s
        .text
.globl _main
_main:
        pushl   %ebp
        movl    %esp, %ebp
        cmpl    $0, 8(%ebp)
        setle   %al
        movzbl  %al, %eax
        addl    %eax, %eax
        popl    %ebp
        ret
        .subsections_via_symbols

3 に

i@um ~/test> cat branch.s
        .text
.globl _main
_main:
        pushl   %ebp
        movl    %esp, %ebp
        cmpl    $0, 8(%ebp)
        setle   %al
        movzbl  %al, %eax
        leal    (%eax,%eax,2), %eax
        popl    %ebp
        ret
        .subsections_via_symbols

4

	.text
.globl _main
_main:
	pushl	%ebp
	movl	%esp, %ebp
	cmpl	$0, 8(%ebp)
	setle	%al
	movzbl	%al, %eax
	sall	$2, %eax
	popl	%ebp
	ret
	.subsections_via_symbols

5

	.text
.globl _main
_main:
	pushl	%ebp
	movl	%esp, %ebp
	cmpl	$0, 8(%ebp)
	setle	%al
	movzbl	%al, %eax
	leal	(%eax,%eax,4), %eax
	popl	%ebp
	ret
	.subsections_via_symbols

6

	.text
.globl _main
_main:
	pushl	%ebp
	movl	%esp, %ebp
	cmpl	$0, 8(%ebp)
	movl	$0, %eax
	movl	$6, %edx
	cmovle	%edx, %eax
	popl	%ebp
	ret
	.subsections_via_symbols

return 7 と return 2 とかだと

	.text
.globl _main
_main:
	pushl	%ebp
	movl	%esp, %ebp
	cmpl	$0, 8(%ebp)
	setle	%al
	movzbl	%al, %eax
	leal	2(%eax,%eax,4), %eax
	popl	%ebp
	ret
	.subsections_via_symbols

なんか面白いなー

(12:05)

_ じゃあ

http://yowaken.dip.jp/tdiary/20070908.html#p06

なんか京ぽんでゴルフするか…! 問題は使い放題とかじゃないことだろう

(14:52)

_ 出社

とりあえず渋谷近辺に

(15:12)

本日のツッコミ(全6件) [ツッコミを入れる]
_ kt3k (2014-05-24 01:30)

おつかれさまでした〜。

_ shinh (2014-05-24 01:30)

どうもでした。特に最初とか色々適当ですいませんでした。

_ YT (2014-05-24 01:30)

ありがとうございましたー。
さあ対Perl,Ruby撃墜問題其の1……普通に解答埋め込みで突破されそうな気がしてきましたorz

_ YT (2014-05-24 01:30)

Sample Outputの桁が足りてないことに気付きました……ieee754を削除していただければ幸いです。

_ shinh (2014-05-24 01:30)

とりあえず消しました。

_ YT (2014-05-24 01:30)

ありがとうございます。修正した問題をアップさせていただきました。
……全桁出力するようにして発覚したのですが、strtoldがgolf.shinh.orgサーバーと手元のマシンで微妙に違う罠が……libcめ……問題としては成立していますので構わないのですが……orz
以後気をつけます。

お名前:
E-mail:
コメント:
人生、宇宙、すべての答え
本日のリンク元

2007年
9月
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
1.あろは(2014-05-24 01:30) 2.shinh(2014-05-24 01:30) 3.あろは(2014-05-24 01:30)
search / home / index

全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。

shinichiro.hamaji _at_ gmail.com / shinichiro.h