したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | メール | |

管理人の独り言(プログラミング関連)

1みみず★:2008/08/10(日) 23:28:15
あまりにもプログラミングの内容が増えすぎた。
よって隔離スレの中を更に隔離。

2273774さん:2010/05/03(月) 14:49:40
アレ用の何か
http://hp.vector.co.jp/authors/VA050396/index.html

2274774さん:2010/05/05(水) 18:53:19
高木浩光@自宅の日記 - 共用SSLサーバの危険性が理解されていない
http://takagi-hiromitsu.jp/diary/20100501.html#p01

2275774さん:2010/05/08(土) 09:19:21
やりたいこと。
1.PEファイルを手動で読み込む
2.PEファイルにPEファイルの挿入
3.逆アセの開発

2276774さん:2010/05/08(土) 20:38:37
OAuthプロトコルの中身をざっくり解説してみるよ - ゆろよろ日記
http://d.hatena.ne.jp/yuroyoro/20100506/1273137673

2277774さん:2010/05/08(土) 20:42:54
伝送速度1Gbps以上、NTTが超高速無線LANの伝送実験に成功 - GIGAZINE
http://gigazine.net/index.php?/news/comments/20100508_ntt_1gbps_wlan/

2278774さん:2010/05/08(土) 22:15:41
VC++ 2010の話。
-----
int main(int argc, char **argv){
for(unsigned int i = 0; i <= 300; ++i){
}
}
---
01111000 xor eax,eax
01111002 ret
-----
妥当な最適化。
-----
int main(int argc, char **argv){
for(unsigned int i = 0; i <= 300; ++i){
if(i & 2){
if(!(i & 2)){
std::cout << i << std::endl;
}
}
}
}
---
01031000 xor eax,eax
01031002 inc eax
01031003 cmp eax,12Ch
01031008 jbe main+2 (1031002h)
0103100A xor eax,eax
0103100C ret
-----
ぇ・・・
こんなソースを書く人が悪いですが。

2279774さん:2010/05/08(土) 22:25:53
これは、定数だけれども、最適化しないのか。
-----
int main(int argc, char **argv){
unsigned int sum = 0;
for(unsigned int i = 0; i < 300; ++i){
for(unsigned int j = 0; j < 300; ++j){
sum += i + j;
}
}

std::cout << sum << std::endl;
}

2280774さん:2010/05/08(土) 22:51:26
switch使うと、大体定数時間で飛ぶようにしてくれるなあ。
jmp dword ptr [eax * 4 + offset]

2281774さん:2010/05/09(日) 21:43:12
CPU Disasm
Address Hex dump Command Comments
488956AA |. FF15 50108848 |CALL DWORD PTR DS:[<&FenrirLib_fx.?FfxGetCl
488956B0 |. 8B10 |MOV EDX,DWORD PTR DS:[EAX]
488956B2 |. 68 EC748A48 |PUSH OFFSET SagittariusDock_fx.488A74EC
488956B7 |. 68 802B8848 |PUSH SagittariusDock_fx.48882B80
488956BC |. 50 |PUSH EAX
488956BD |. FF52 18 |CALL DWORD PTR DS:[EDX+18]

2282774さん:2010/05/09(日) 21:43:59
CPU Dump
Address Hex dump ASCII
48882B80 86 6B 2F 34|CD B0 33 40|A2 09 3A 39|83 F0 3B 66| �k/4Ͱ3@�.:9��;f

2283774さん:2010/05/11(火) 02:08:58
Google、「ハッキング学習用Webアプリ」を公開 - スラッシュドット・ジャパン
http://slashdot.jp/security/article.pl?sid=10/05/10/116206
WEBプログラマー必見!WEB脆弱性基礎知識最速マスター - 燈明日記
http://d.hatena.ne.jp/chaichanPaPa/20100509/1273376018

2284774さん:2010/05/12(水) 21:28:38
VC++2010がenum classを実装してなくて残念な感じ。

2285774さん:2010/05/12(水) 22:05:30
私が厳選して愛用するGoogleChromeエクステンション12個+消した奴36個*ホームページを作る人のネタ帳
http://e0166.blog89.fc2.com/blog-entry-773.html

2286774さん:2010/05/14(金) 22:21:46
>>2278
下のソース間違ってるね。
std::cout云々の行はナシで。

2287774さん:2010/05/17(月) 08:42:34
取り敢えず、基本的な命令は全部処理できる逆アセ(これはMOV命令だとか分かるだけ)は出来た。
これだけ出来れば、バイナリを直接書き換えるAPIフックも出来るはずである。というかそのためだけに作った。

2288774さん:2010/05/17(月) 08:44:55
IAT書き換えによるAPIフックでは、書き換える前に取得されたアドレスは書き換えれないので駄目なのである。
VC++では何度もインポートされた関数を呼び出すときに、関数のアドレスをレジスタに読み込んで最適化するので、それでもフックをするようにするにはこうするしかないのである。

2289774さん:2010/05/17(月) 16:36:38
多分。

2290774さん:2010/05/17(月) 22:04:46
やりたいこと。
1.PEファイルを手動で読み込む 大体済 -> 専用のC++クラスでも作る?
2.PEファイルにPEファイルの挿入 未着手
3.逆アセの開発 大体済 -> 完全に逆アセして、文字列に落とせるようにする?
4.WAVを読み込んで、フーリエ級数展開

2291774さん:2010/05/18(火) 22:42:27
やりたいこと。
1.PEファイルを手動で読み込む 大体済 -> 専用のC++クラスでも作る?
2.PEファイルにPEファイルの挿入 未着手
3.逆アセの開発 大体済 -> 完全に逆アセして、文字列に落とせるようにする?
4.WAVを読み込んで、フーリエ級数展開
5.ゲーム(?)

2292774さん:2010/05/18(火) 22:43:59
取り敢えず、面倒だったからやっていなかったMACアドレスの登録を行った。
行わないと大学側の無線LANが利用できないと言う。
WEPとかやばくね?

2293774さん:2010/05/19(水) 20:59:40
CSSセレクタの高速化の話し - Webtech Walker
http://webtech-walker.com/archive/2010/05/18162034.html
-----
右から左に解釈されるか。

2294774さん:2010/05/20(木) 19:27:21
やりたいこと。
1.PEファイルを手動で読み込む 大体済 -> 専用のC++クラスでも作る?
2.PEファイルにPEファイルの挿入 未着手
3.逆アセの開発 大体済 -> 完全に逆アセして、文字列に落とせるようにする?
4.WAVを読み込んで、フーリエ級数展開
5.スクリプト言語(?)
6.ゲーム作る(?)作曲とかも暗に含んでいたりする
7.ひぐらしやる。若しくは適当にどっかにいれれるようにする。

2295774さん:2010/05/20(木) 19:34:48
Googleが出してきたFont APIのすごさを体感したいなら…『Font Previewer』 - IDEA*IDEA 〜 百式管理人のライフハックブログ
http://www.ideaxidea.com/archives/2010/05/font_previewer.html

2296774さん:2010/05/20(木) 19:35:26
Google Font API - Google Code
http://code.google.com/intl/ja/apis/webfonts/

2297774さん:2010/05/20(木) 20:19:23
やりたいこと。
1.PEファイルを手動で読み込む 大体済 -> 専用のC++クラスでも作る?
2.PEファイルにPEファイルの挿入 未着手
3.逆アセの開発 済 -> もう満足。MessageBoxAのフック余裕でした。今の所必要なさそうなのでこれで完。
4.WAVを読み込んで、フーリエ級数展開
5.スクリプト言語(?)
6.ゲーム作る(?)作曲とかも暗に含んでいたりする
7.ひぐらしやる。若しくは適当にどっかにいれれるようにする。

2298774さん:2010/05/20(木) 20:25:12
ttp://mimizu.karou.jp/lab/DisAsm.rar

現状では使い物にならないことは重々理解している。
でも、ここまで作ってしまえば改造は楽である。
SleipnirのPanelになっているのは、適当に(ry

2299774さん:2010/05/20(木) 23:18:33
今やってること。
1.某ソフトの解析。意味がない。だけれども面白そうだからやってる。

2300774さん:2010/05/23(日) 03:17:34
乗りで、行列の逆行列やら、余因子行列やら求めるライブラリを二時間で作った。
かかり杉ワロタ。

2301774さん:2010/05/26(水) 23:54:22
いっぱい書いたソースが一発でコンパイルを通るのは怖いw

2302774さん:2010/05/28(金) 22:51:03
spx解放早すぎ。

2303774さん:2010/05/29(土) 22:07:24
別のプロセスにコードを割り込ませる3つの方法 - japan.internet.com デベロッパー
http://japan.internet.com/developer/20050830/26.html

2304774さん:2010/05/29(土) 23:12:57
VC++に_forceinlineとか言う奴が追加されているwwwww

2305774さん:2010/05/29(土) 23:15:14
__forceinlineだった

2306774さん:2010/05/30(日) 00:33:45
__forceinlineが前から欲しいと思ってました。
templateと一緒に用いれば最強の武器になる。

2307774さん:2010/05/31(月) 15:41:12
libdisasm: x86 disassembler library
http://bastard.sourceforge.net/libdisasm.html
-----
ライブラリあったんだなあ。
まあ、作るのも面白かったからいいですが。

2308774さん:2010/06/01(火) 08:27:59
Firefox に outerHTML を実装する - IT戦記
http://d.hatena.ne.jp/amachang/20100531/1275270877
-----
設定できてなんぼじゃないの?

2309774さん:2010/06/02(水) 15:21:08
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JButton;
import java.awt.Container;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JLabel;
import javax.swing.JOptionPane;

public class Test extends JFrame{
static Test test;

static public void main(String[] arg){
test = new Test("ばか");
test.setVisible(true);
}

Test(String title){
setTitle(title);
setBounds(100, 100, 300, 250);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel p = new JPanel();

JButton button1 = new JButton("OK");
button1.setForeground(Color.GREEN);
button1.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
JLabel msg = new JLabel("TEST");
JOptionPane.showMessageDialog(test, msg);
}
}
);
JButton button2 = new JButton("Cancel");
JButton button3 = new JButton("Retry");

p.add(button1);
p.add(button2);
p.add(button3);

Container contentPane = getContentPane();
contentPane.add(p, BorderLayout.CENTER);
}
}

2310774さん:2010/06/02(水) 15:26:19
JavaのSwingを使って、適当にウィンドウを出してみたのだが、Windowsプログラミングに比べて非常に簡単にウィンドウが出せて本当に楽でいいと思います。
これでマルチプラットフォーるなんだから、本当にJavaってすごいなあと今更ながら実感している次第であります。
これでもっとスピートが出るようだったらC++から写ってもいいかなと思いますが、しかし、やはり解析に対して弱々しいのはもうちょっとなんとかできないものか。
まあ、普通にコード難読化ツールを使えばいいような気もしますが、そこまでやるとさらに動作が遅くなるという。
まあ、そういうワケで、逆コンパイラがあまり存在しないネイティブだからこそ、いいということもあるわけです。
しかし、一応Javaも中間コードに落とすわけだから、そのVM内で自己書換え型プログラムも可能なのかなあ。しらないけれども。

2311774さん:2010/06/02(水) 16:01:47
初級C言語Q&A[index]
http://www.st.rim.or.jp/~phinloda/cqa/cqaindex.html

2312774さん:2010/06/02(水) 16:07:34
noocyte のプログラミング研究室
http://www5d.biglobe.ne.jp/~noocyte/

2313774さん:2010/06/02(水) 20:42:47
400万行のコードを15分で見える化! プログラム解析ツール『Understand』で開発効率アップ(2/2):CodeZine
http://codezine.jp/article/detail/5204?p=2
「プログラミングの魔導書」の情報公開 - Faith and Brave - C++で遊ぼう
http://d.hatena.ne.jp/faith_and_brave/20100601/1275386397

2314774さん:2010/06/02(水) 20:44:30
>>2313
後者は出たら買いたいと思います。

2315qnighy:2010/06/02(水) 21:03:23
>>2310
Qtのことも忘れないであげてください

2316774さん:2010/06/02(水) 21:41:51
>>2315
へー。こんなものもあるんですか。
忘れるも何も、初めから頭に入ってないと言う・・・

2317774さん:2010/06/03(木) 07:05:57
あれ、俺は何を言っているんだ。
初めから頭に入っていないから、忘れないで(ryと言われているんじゃないか。

2318774さん:2010/06/03(木) 09:07:14
コンパイラの最適化の話。
-----
static wchar_t *GetFfxAllocString(const wchar_t *str){
const int len = std::wcslen(str);
const unsigned int size = (len + 1) * sizeof(wchar_t);
wchar_t *ret = (wchar_t*)FfxAlloc(size);
if(ret){
std::wcscpy(ret, str);
}
return ret;
}
-----
こんなソースを書いた。ここで“FfxAlloc”は指定したバイトのメモリを確保してくる関数である。
で、この関数は現状文字列リテラルしか与えてないので、関数呼び出し部ではインライン展開されて、wcslenは呼び出されすらしない(すべて即値になる。)。
まあ、その最適化は良いんだ。問題は、wcscpyである。何故VC++はこれを即値で展開してくれないかなあ。
つまりNASM風に書くならば、
-----
mov eax, dword [ret]
mov dword [eax], 0x42004100
mov dword [eax+4], 0x00004300
-----
みたいにさ(この場合はL"abc"。多分。)。
で、これが出来ないから無駄に条件分岐が多くなったり、call命令が多くなって遅くなる。まあ、現状のCPUならば気にならないだろうが・・・

2319774さん:2010/06/04(金) 00:58:36
仕事をしないからSleepなのさ
http://blogs.wankuma.com/episteme/archive/2010/05/08/188833.aspx
-----
俺の解釈では、そんなにSleepの精度は宜しくない。
自分のタイムスライスをプレゼントするだけ。

正確に計りたいならば、普通に無限ループさせておけばいいと思う。

2320774さん:2010/06/05(土) 00:11:29
どうでもいいが、コードサイズ優先でコンパイルするのか。
mov eax, 3

push 3
pop eax
だったら、絶対後者のほうが遅い気がするのだが、気のせいなのだろうか。

2321774さん:2010/06/05(土) 00:12:03
>>2320
“何故”が抜けた

2322774さん:2010/06/10(木) 00:58:48
俺のやる気が出たらだが、サーバー借りて何かやらかしたい。

2323774さん:2010/06/10(木) 03:28:23
【HTML5】新規でサイトを作るのに使えそうなの一式。Ver 1|CSS HappyLife
http://css-happylife.com/log/css-template/000766.shtml

2324774さん:2010/06/10(木) 03:28:59
より早くcssやhtmlのコーディングが行えそうな情報いろいろ - かちびと.net
-----
NGワードでURIが貼れない

2325774さん:2010/06/10(木) 04:55:07
なんだかんだで、完徹してしまった。

2326774さん:2010/06/10(木) 20:11:55
取り敢えず、phpを動かせる環境を用意しなければ。

2327774さん:2010/06/10(木) 20:26:04
やりたいことは多いのに、何も進んでいない。
そろそろちゃんとフーリエ変換について勉強するか。

2328774さん:2010/06/10(木) 20:28:04
NANDは単体でどんな論理回路でも作れるんだったけな。

2329774さん:2010/06/17(木) 22:08:45
jQueryプラグインを探す際にだいたい見て回る巡回サイトまとめ - かちびと.net

2330774さん:2010/06/18(金) 22:45:01
>>2329
は、URLが貼れなかった。

2331774さん:2010/06/18(金) 23:00:59
取り敢えず、SleipnirのDockに自分の作ったウィンドウは表示できるようになった。

2332774さん:2010/06/19(土) 17:06:02
jsdo.it - share JavaScript, HTML5 and CSS

2333774さん:2010/06/19(土) 17:06:16
h t t p : / / j s d o . i t /

2334774さん:2010/06/19(土) 17:06:27
何故URLが貼れないし。

2335774さん:2010/06/20(日) 00:29:07
個人的にswitchでdefaultに行かないことを宣言できる構文が欲しい。

2336774さん:2010/06/20(日) 13:29:57
うーん。
いっぱいやりたい事があるんだけれども、手が付かない。
どんなプラグインが有ったら良いのかが分からない。

つまりいらないと言うことなのだろう。

2337774さん:2010/06/20(日) 17:58:05
PHPでPDOを用いてDBを使おうと思ったら、なんかうまく動かない。

2338774さん:2010/06/20(日) 19:22:39
今まで、キーボードカバーなるものを利用していたわけだが、あれはやはり無い方がいい。
まず、だんだん肥大化してくる。意味が分からん。ずっと入力しているうちに汗が出てくるのは当たり前ではないか。
で、そうなるとキーボードが見えない。
個人的には致命的である。
別に普通にブラインドタッチは出来るのだが、記号類は全く覚えていない。
特にプログラミングなんてしていると+-*/=がよく出てくる。それは全く何も無しで打てるようになってしまった。
今からやろうとしている言語はPHPであり、Perlから影響を受けていて$を入力しなければならない。
全く$なんてC++じゃ利用しない。故に位置など覚えているはずが無い。ということで、非常に邪魔だったキーボードカバーを3月31日以降始めて外した。
ぬるぬるする。死ね。

2339774さん:2010/06/20(日) 19:24:24
全く、キーボードカバーがキーボードを汚すとは全く意味がないではないか。
そんなことは前使ってわかっていたのだが、以前と違って改善しただろうと思っていたのが悪かった。
そのせいで画面も汚れるし。もう絶対キーボードカバー何ぞ使うことはないだろう。死ね。

2340774さん:2010/06/20(日) 19:25:48
でも、キーボードの上から水をかけるとか非常に心配だなあ。
と言っても、大学生協を利用すれば5000円でなんとかなるからいいかもしれないが。
でもその前にデータを取っておかないといけないかぁ。

2341774さん:2010/06/20(日) 19:27:44
というか、明日提出のレポートやってねー

2342774さん:2010/06/20(日) 19:28:00
取り敢えず、PDOが動くようになってからやるか。

2343774さん:2010/06/20(日) 19:35:32
データベースが使えないと何も作れないって言う。

2344774さん:2010/06/20(日) 19:50:55
上手く言った。
PHPIniDirが二重に指定されていて、二番目の方が変なpathになっていたのがいけなかったっぽい。

2345774さん:2010/06/20(日) 21:07:31
しかしデータベースに接続出来ないトラップ。

2346774さん:2010/06/22(火) 23:19:17
「ルール」を打ち破るWebデザイン | Webクリエイターボックス
http://www.webcreatorbox.com/tech/break-rule-web-design/
今からでも遅くない これから始めるScala(前編)(1/7):CodeZine
http://codezine.jp/article/detail/5193

2347774さん:2010/06/23(水) 01:26:36
データベースのパスワードは適当にbinにした。

2348774さん:2010/06/23(水) 01:30:27
データベースが無いと起こられていたのに気付かなかった。
なもん、MySQLをインストールしていないのに、どうしてMySQLが使えるのかと。

個人的にはPHPインストール時にMySQLを選択してインストールした気になっていたが、そんなわけは無かった。

2349774さん:2010/06/23(水) 01:53:01
取り敢えず、データベースとかの設定は全部やった。
まあ、自分のパソコンだし、そんな大切なデータが置いてあるわけでもないので、多少セキュリティー甘くても大丈夫だろう。
これで死んだら、自己責任である。

2350774さん:2010/06/24(木) 20:05:46
まずは基本から・HTML5のCanvasについて参考になったサイトまとめ - かちびと.net

2351774さん:2010/06/24(木) 20:06:42
NGワード死ね。
まじ意味分からん。
そろそろサーバー借りて掲示板立てないといけないか。

2352774さん:2010/06/26(土) 22:14:47
機械学習 はじめよう:第1回 機械学習 ことはじめ|gihyo.jp … 技術評論社
http://gihyo.jp/dev/serial/01/machine-learning/0001

今夜こそわかる安全なSQLの呼び出し方 〜 高木浩光氏に聞いてみた − @IT
http://www.atmarkit.co.jp/fsecurity/column/ueno/60.html

2353774さん:2010/06/27(日) 22:58:54
Firefox Nightly Builds
h t t p : / / n i g h t l y . m o z i l l a . o r g /

2354774さん:2010/06/27(日) 23:00:58
FirefoxがGoogleChromeを追従している感じ。

2355774さん:2010/06/28(月) 16:45:55
javascript:ShowMessage=function(){};void 0;for(i=0;i<1000;++i){ShowHint();}void 0;for(i=0;i<State.length;++i){State[i].HintsAndChecks=0;}void 0;

2356774さん:2010/06/28(月) 23:10:03
マジコン対策 方法
と調べると、回避する方法しか載ってない。
個人的には、どのようなシステムでマジコン対策しているか知りたい。

2357774さん:2010/06/29(火) 00:14:36
PHPで予め許可したタグと属性以外を除去できるライブラリ「kses」:phpspot開発日誌
http://phpspot.org/blog/archives/2010/06/phpkses.html

「HTML5 Rocks」だけじゃない、ブラウザ各社のHTML5チュートリアルを集めました − Publickey
http://www.publickey1.jp/blog/10/html5_rockshtml5.html

2358774さん:2010/06/29(火) 00:19:45
北畠徹也氏、宣戦布告。「Perlは株式会社テラ・インターナショナルの登録商標ですと書け」
http://neta.ywcafe.net/001103.html
-----
本文読んでないが、これは酷い。

2359774さん:2010/06/29(火) 22:36:34
PHPで大規模ブラウザゲームを開発してわかったこと
http://www.slideshare.net/ketaiorg/php-4638298

2360774さん:2010/07/03(土) 22:13:51
Fx4のほうがGoogleChrome5より0から10000000の和を愚直に計算する点では早い。

2361774さん:2010/07/03(土) 22:18:18
なんかGoogleChromeの方がevalが遅いという話が以前あったが、
an overview of TraceMonkey ✩ Mozilla Hacks – the Web developer blog
http://hacks.mozilla.org/2009/07/tracemonkey-overview/
の二番目の奴だとGoogleChromeの方がFx4より早い。
まあ、Fxはpre betaだから?まあChromeもbetaだが。

2362774さん:2010/07/03(土) 22:23:41
三番目の奴。
GoogleChromeは常に10-11ms。
Firefox4は初め5ms秒を出したが、ボタンを連打するごとにだんだん遅延。
300msを超えるようになった。
恐らくバグだろう。まあpre betaだし。

2363774さん:2010/07/03(土) 22:23:58
嘘130msだった。

2364774さん:2010/07/06(火) 00:41:50
グーグルがWebを高速化するために何をしているか − Publickey
http://www.publickey1.jp/blog/10/web_3.html
竹取 JS
http://taketori.org/js.html

2365774さん:2010/07/06(火) 01:04:28
サイトを公開する際に最低限抑えておきたい Apache の設定 | バシャログ。
http://c-brains.jp/blog/wsg/10/07/05-115821.php

2366774さん:2010/07/06(火) 01:05:33
Developer's Guide - Google AJAX APIs - Google Code
http://code.google.com/apis/ajax/documentation/

2367774さん:2010/07/10(土) 01:10:14
この動作は怖いわ・・・
-----
namespace N {
int i = 4;
extern int j;
}
int i = 2;
int N::j = i; // N::j == 4

2368774さん:2010/07/10(土) 22:25:00
早くIE9出ろ。

2369774さん:2010/07/11(日) 14:59:26
どうして、配置newはあるのに、配置deleteが無いのか不思議。
確かに構文は変だが、個人的には
extern Class *p;

p->~Class();
と書かないといけないのが嫌い。

2370774さん:2010/07/12(月) 02:48:49
そうか。
Lambdaを渡すのに、わざわざstd::functionなど使う必要性は無いのか。

template<typename FuncType>
func(FuncType fun){
fun();
}

でいいのか。

2371774さん:2010/07/12(月) 02:52:17
lambdaをmutableにして、変数を変更すると、その変数はまた呼び出したときに変わったままなんだよね?

2372774さん:2010/07/12(月) 20:38:58
遅延評価によるエラトステネスの篩のお話 - 簡潔で覚えやすいタイトルを3秒で思いつく程度の能力
http://d.hatena.ne.jp/qnighy/20100712/1278931460


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板