忍者ブログ
[PR]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


2026/06/17 12:59 |
ビット演算やってみる【C言語】
C言語によるプログラミング 応用編」を最近ちょこちょこ見ている。
…トイレにも持ち込む…
そこに「ビットごとの演算」が載っていたので、自分でやってみた。

論理積
ABA & B
111
100
010
000

例:ある整数から下位4ビットを抜き出す
【考え方】
 ある整数として、(123)10=(01111011)2
 この整数と、(0f)16=(00001111)2
 との論理積は(11)10=(00001011)2となり、
 ある整数の下位4ビットのみを抜き出したことになる。

【ソース】
#include‹stdio.h›

int main(){
	char x,y;
	x=123;
	y=x & 0x0f;
	printf("%d\n",y);
	return 0;
}

それでは実行結果
11
でもなんで、変数をchar型にしてたのかな?int型でも同じ結果になったんだけど。

*** 「かめかめPHP」運営中 ***

こちらも応援していただけるとうれしいです
↓↓↓ ヽ(^◇^*)/ ↓↓↓
ブログランキング・にほんブログ村へ 人気ブログランキング

PR

2009/03/08 06:44 | Comments(0) | TrackBack() | プログラム
プリプロセスの実行 Borland C++ Compiler
昨日調べていたら、Borland C++ Compilerでは、プリプロセスのみの実行はコマンドプロンプトに cpp32 filename で実行できることを知りました。なるほど…
で、早速
#include‹stdio.h›
int main(){
    printf("test\n");
    return 0;
}
なる test.c ファイルを作成し、実行してみる。

すんなり終了し、test.i というファイルが作られていました。 なるほど、プリプロセス後の中間ファイルは *****.i なのか。ちょっと覗いてみる…
/* test.c 1: */

/* c:\Borland\Bcc55\include\stdio.h 1: */

/* c:\Borland\Bcc55\include\stdio.h 2: */
/* c:\Borland\Bcc55\include\stdio.h 3: */
/* c:\Borland\Bcc55\include\stdio.h 4: */
 …
 …
/* c:\Borland\Bcc55\include\stdio.h 494: */
/* c:\Borland\Bcc55\include\stdio.h 495: */
/* test.c 2: */
/* test.c 3: */int main(){
/* test.c 4: */printf("test\n");
/* test.c 5: */return 0;
/* test.c 6: */}
/* test.c 7: */
…のところにコメント以外の記述があり、これがプリプロセスの正体か…とちょっと納得。
コメント以外の記述が理解できているわけではない ヽ('ー`)ノ

ところで、プロのプログラマの人たちは言語やコンピュータのことをいったいどこまで知っているのでしょうか。相当勉強しないと良いシステムやアプリケーションって作れないんですよね。


*** 「かめかめPHP」運営中 ***

こちらも応援していただけるとうれしいです
↓↓↓ ヽ(^◇^*)/ ↓↓↓
ブログランキング・にほんブログ村へ 人気ブログランキング


2009/03/07 05:57 | Comments(0) | TrackBack() | プログラム
プリプロセスの正体を求めて…
昨日「C言語によるプログラミング 応用編」を見返していると、ソースファイルから実行ファイル作成までは、大きく分けると
 ①プリプロセス
 ②コンパイル
 ③リンク
とありました。

ふむふむ φ(..)
しろうとはここまであまり考えないけど、ちょっと興味あり!!

プリプロセス

この本には「#includeや#ifdefなどの#ではじまる前処理指令の処理」と書いてあり、「コンパイル時に、プリプロセスのみを行い終了するモードがあります。」と書いてあったんですが…
私は今「Borland C++ Compiler」を使用してるのだけれど、そんなオプションあるんかな?と思い、 オプションの一覧を出してみるもそれらしきものが見当たらない (ノ_<。)

今日の課題はプリプロセスのみを行って、それによってできる中間ファイルとやらを見てみることです。


*** 「かめかめPHP」運営中 ***

こちらも応援していただけるとうれしいです
↓↓↓ ヽ(^◇^*)/ ↓↓↓
ブログランキング・にほんブログ村へ 人気ブログランキング


2009/03/06 05:13 | Comments(0) | TrackBack() | プログラム
0と1のみの文字列から連続する1の個数の最大値を求める【C言語】
パソコン甲子園2007予選問題04問と関連して、以下の問題を考えていたのですが、
0と1のみの文字列から連続する1の個数の最大値を求める
ひとまず、そのコードが書けたので記録しておきます。


*** 「かめかめPHP」運営中 ***

こちらも応援していただけるとうれしいです
↓↓↓ ヽ(^◇^*)/ ↓↓↓
ブログランキング・にほんブログ村へ 人気ブログランキング

ここからソース
#include‹stdio.h›
#include‹string.h›

int main(){
	char st[100];
	int sum,max,i,n;

	scanf("%s",st);

	n=strlen(st);
	sum=0;
	max=0;

	for(i=0;i‹n;i++){
		if(st[i]=='0' && sum!=0){
			if(max‹sum) max=sum;
			sum=0;
		}else if(st[i]=='1'){
			sum++;
		}
		if(i==n-1 && sum!=0){
			if(max‹sum) max=sum;
			sum=0;
		}
	}

	printf("%d\n",max);
	return 0;
}

それでは実行結果
1110011001
3

2009/03/04 19:01 | Comments(0) | TrackBack() | プログラム
"(ノ_・、)" ついに…
愛用のvaio君がご臨終になりました。

今まで、このvaio君でプログラムや自宅サーバの練習機として使用していただけに、言葉が出ません。
と言いながら、書き込みは欠かさず!

この前、eeepc701を2,9800円で購入したばかりなのに… この時は、妻には「コンピュータの研究のため!」と言って購入のOKをもらいました。

しかし、それから2ヶ月もたたないのにもう一台ほしいとは言えずにいたのですが、昨日思い切って「買おうかな~」って言ってみたら、「メインのパソコンが壊れたのなら買えば~」と意外な反応。

ということで、何にしようかな~  ☆⌒(*^∇゜)v
快適にプログラム組みたいです!!

*** 「かめかめPHP」運営中 ***

こちらも応援していただけるとうれしいです
↓↓↓ ヽ(^◇^*)/ ↓↓↓
ブログランキング・にほんブログ村へ 人気ブログランキング


2009/03/04 05:39 | Comments(0) | TrackBack() | 日記

<<前のページ | HOME | 次のページ>>
忍者ブログ[PR]