OCNのモバイルに新コース登場!キャンペーン続々開催中

1601は3021?
11が2B?
3が23?
よくわかりません。
教えてください。お願いします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

区点コードからJISコードへの変換が知りたいんですね。



区点コード 01601 であれば、
区番号=016 点番号=01 です。
JISコード=(区番号+20h)×100h+点番号+32h
(語尾にhが付く数値は16進数です。)
でJISコードを求められます。
20h=32
100h=256
ですので、10進数で表記すれば
JISコード=(区番号+32)×256+点番号+32

では、01601を入れてみましょう
区番号=016
点番号=01
ですので、
(16+32)×256+1+32=48×256+33=12321
12321を16進数で表すと3021hです。
    • good
    • 0
この回答へのお礼

ありがとうございました。とても分り易い説明で理解しやくかったです。

お礼日時:2003/05/23 01:28

文字コードには色々あります。


JISコード
シフトJISコード
区点コード
EUC
Unicode
等々です。

例えば漢字の「亜」ですが、
JIS 3021(16進数)
シフトJIS 889F(16進数)
区点 01601(10進数)
Unicode 4E9C(16進数)
です。
※区点コードは16進数で表現しません。

>1601は3021?
区点コード1601はJISコード3021

>11が2B?
区点コード1611はJISコード302B

>3が23?
ASCIIコードでの3が16進数23

という事ですね。
数字の前にコード名を書かないと何がなんだか解らないという事です。

ご理解頂けましたでしょうか。

この回答への補足

ありがとうございます。すいません質問の仕方が悪かったようです。区点コード1601からJISコード3021
の変換の仕方が知りたかったんです。10進法から16進法へどういう理屈でそうなるのか?よろしくお願いします。

補足日時:2003/05/14 21:02
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q差額地代説について

差額地代説というのが良く分かりません。検索してもほとんどなくて困ってます。一応、検索した中で一番分かり易そうなサイトで、
「リカードは肥沃な土地から順に生産を拡大すると仮定。価格は市場(「一物一価の法則」)により最劣等地の投下労働量によって決定される。すると肥沃な土地には余剰が発生することになり、それが地代を形成する。土地の収穫逓減が理論的基礎にある。」
と説明されていました。しかし、全くと言って良いほど分かりません。どなたか差額地代説について教えてください。

Aベストアンサー

 わたしもよくわかってるわけではないんですが……
 まず前提として、小作人が地主に地代を払って土地を借り、そこで農作物を作り、それを市場で売って生活している、という状況を想定します。
 小作人の労働力が同じでも、肥沃な土地からはたくさんの収穫が上がります。わかりやすくするために、いちばん痩せた土地でできる作物の市場価格を10、いちばん肥沃な土地でできる作物の市場価格を100としましょう(土地の面積、小作人の数、作物の品質はどちらも同じ)。小作人の生活費は5、小作人の利益は1と仮定します。そうすると、痩せた土地の地代は10-(5+1)=4、肥沃な土地の地代は100-(5+1)=94、となります。このように、小作人の取り分(労働投入量+一般利潤)が決まっていて、それと土地の生産力との差(=超過利潤)が地代になる、というのがいわゆる「差額地代」の考え方です。だから肥沃な土地ほど地代は高くなる、ということですね。
 で、これじゃ稼ぎが少ないからというので、小作人の数つまり労働投入量を倍にしても、収穫は倍になるわけではありません。土地の生産力の限度で頭打ちになりますから、そこから先はいくら小作人の人数を増やしても、一人あたりの収穫量は逆に減っていってしまいます。これが「収穫逓減の法則」ですね。
 リカードとマルクスで少し考え方が違っていたと思うんですが、差額地代論の基本はこんなところだろうと思います。わたしも考え違いがあるかもしれませんが……その場合は、すいません。

 わたしもよくわかってるわけではないんですが……
 まず前提として、小作人が地主に地代を払って土地を借り、そこで農作物を作り、それを市場で売って生活している、という状況を想定します。
 小作人の労働力が同じでも、肥沃な土地からはたくさんの収穫が上がります。わかりやすくするために、いちばん痩せた土地でできる作物の市場価格を10、いちばん肥沃な土地でできる作物の市場価格を100としましょう(土地の面積、小作人の数、作物の品質はどちらも同じ)。小作人の生活費は5、小作人の利益は1...続きを読む

Q1文字って1バイトだったっけ?

タイトルの通りなんですが
私の記憶では1文字1バイトで漢字が2バイトだったような・・・。
アルファベットは?数字は?わかんないので教えてください。
それと、1バイト=8ビットですよね?
ちょっと興味があるので暇のある方がおられましたら詳しく教えてほしいです。

よろしくおねがいいたします。

Aベストアンサー

全角文字(英語・漢字・数字問わず):2バイト
半角文字:1バイト
では無いでしょうか?

>1バイト=8ビット
その通りです

http://www.pc-view.net/Help/manual/0082.html
などもありますので参考までに

参考URL:http://www.pc-view.net/Help/manual/0082.html

Qファイルやディレクトリの存在確認を行う方法

ファイルをオープンするのはfopenでOKですが、ファイルやディレクトリの存在確認を行う方法が知りたいです。

何か組み合わせて作るものなのでしょうか?
perlとか便利な演算子があるのですが、C/C++って器用ではないですね。
これは処理系?依存の内容ですか?

私の環境は VC6, VC2005 Windows2000です。

Aベストアンサー

int access(const char* path, int mode);
int stat(const char* path, struct stat* sb);

かな?
MSDN を引くと _access_s() を使えとか書いてあるけど。

QJIS X 0201の7ビットと8ビットの区別

(1)JIS X 0201:1997ではアルファベットには7ビットの文字コードが与えられているが8ビットの文字コードは与えられていない、と思うのですが、それで正しいでしょうか。

(2)JIS X 0201:1997の図5ではアルファベットの上の方「7ビット符号」という欄と「8ビット符号」という欄が表示されています。もし上記(1)の御回答がyesであればここには「8ビット符号」の欄は不要だと思うのですが、なぜ「8ビット符号」の欄が表示されているのでしょうか。

Aベストアンサー

> (1)JIS X 0201:1997ではアルファベットには7ビットの文字コードが
> 与えられているが8ビットの文字コードは与えられていない、
> と思うのですが、それで正しいでしょうか。

どうしてそのように思われるのかさっぱり理解できません.
JIS X 0201 規格書の図5~6,表2には,
7ビット符号と8ビット符号の両方が併記されています.

8ビット符号が書かれているのに「与えられていない」と
いうのは何を意味しているのでしょうか?
またそれならば,7ビット符号も同様に書かれているのに
「与えられていない」と結論しないのはなぜでしょうか?



> すみません。
> 49(0x31)、48(0x30)などの意味が全く分かりません。

wakabakun さんがどういう目的で色々と文字コードのことを
調べておられるのかわかりませんが,(符号化) 文字集合に
どういう文字が含まれているかとか,何文字含まれているか
ということだけじゃなくて,

(a) (その文字集合の中で) 文字がどのように配置されているか.
(b) (その文字集合の中で) 特徴的な文字のコードがいくつになるか.

ということはいつも気にかけておいた方がいいですよ.
例えば (b) について JIS X 0201 では,

・最初の図形文字:' ' (スペース) のコードは 32 (10進).
・最初の数字:'0' は 48.
・最初の英大文字:'A' は 65.
・最初の英小文字:'a' は 97.
・半角円記号 (しばしばシフトJISで問題を引き起こす):'\' は 92.

努力して暗記しろとはいいません.
文字コードについて調べていれば自然に覚えます.

また文字コードを扱ううえで,2進数,16進数,簡単なビット操作
(演算とまではいいません) を理解しておくことは必須です.
おそらく,文字コードとビットの対応が理解できていないから
(1) のような意味不明なご質問が出るのでしょう.

JIS の規格書内では,例えば16進数 0x7E の代わりに 7/14 のように
10進表記しているので16進数を知らなくても何とかなるかもしれませんが,
一般には (特にプログラマは) C言語の16進表記 0x7E やアセンブラの
16進表記 7EH などを使用することが多いです.
また,Unicode ではほとんど16進表記です.10進表記を使うのは
数値文字参照 (例:~) のときぐらいだと思います.

> (1)JIS X 0201:1997ではアルファベットには7ビットの文字コードが
> 与えられているが8ビットの文字コードは与えられていない、
> と思うのですが、それで正しいでしょうか。

どうしてそのように思われるのかさっぱり理解できません.
JIS X 0201 規格書の図5~6,表2には,
7ビット符号と8ビット符号の両方が併記されています.

8ビット符号が書かれているのに「与えられていない」と
いうのは何を意味しているのでしょうか?
またそれならば,7ビット符号も同様に書かれているのに
「与え...続きを読む

Qexcelで文字コード(JISコード)を表示する関数ってありますか?

仕事の都合で、JISコードを調べなければならなくなったのですが、
調査対象がいっぱいあって困っています。
excel(に限りませんが、excelが使い慣れているので)の関数などで、
文字コードを返してくれる関数などってありますか?
CODE関数を試してみたのですが(=CODE(山))、循環参照というエラーが出てしまって困っています。
できれば複数の文字(1行単位など)が一度に文字コード変換ができればいいのですが、無理なら1文字ごとでもいいので探しています。
教えてください。

Aベストアンサー

文字列がA1にあると仮定して、

B1に下記数式を記入して、右方向にフィルコピー♪
=IF(ISERROR(CODE(MID($A$1,COLUMN(A1),1))),"",CODE(MID($A$1,COLUMN(A1),1)))

この中で、「COLUMN(A1)」はセル番地を変更しなくていいです。
実際に文字が存在する番地に合わせて変更するのは、
「MID($A$1」 このMIDの右のセル番地だけです。

これでセルに含まれた文字数分、右にコピーすれば
一文字づつコードが返ります。

Qユニコード番号から、IMEパッドで文字入力したい

過去問がうまく調べられなかったので、改めてお尋ねします。

IMEパッドから、ユニコード番号を入力して漢字を入力する
方法があったように思うのですが思い出せません・・・。

漢籍の書名などの入力に使う、昔の漢字や異体字を入力したいのですが・・。
IMEパッドで文字一覧を選び、UNICODEを選ぶと、漢字がたぶんユニコード
番号順に表示されますが、ユニコード番号は漢字情報辞典でわかって
いるので、番号から入力がしたいのです。

Aベストアンサー

Wordでの入力方法の2例です。

1) 日本語入力で、「U」キーを打ち、続けてユニコード番号を打って「F5」キーを押します。
例えば、「U」「5」「F」「3」「E」と打つと、画面に「う5f3え」と表示されますが「F5」キーを押すと、先に打った文字が消え、IMEパットで「弾」がポイントされて表示されます。

2) 直接入力で、ユニコード番号を入力して、「Alt」キーを押しながら「X」キーを押すと、コード番号に対応した文字に、置き換えられます。

コード番号が分かっている場合は 2) の方が効率的と思います。

QLNK2019: 未解決の外部シンボルのエラーが出る

Microsoft Visual Studio 2008
Version 9.0.21022.8 RTM
Microsoft .NET Framework
Version 3.5 SP1
----------------------------------------------------------------
新しいプリジェクト→Win32 コンソール アプリケーション(ソリューションのディレクトリを作成 チェック外す)→Windows アプリケーション(空のプロジェクト チェック外す)
----------------------------------------------------------------
 プログラム

 mymain.cpp
#include "myhelper.h"
#include "mymain.h"

//自キャラのデータ
Point2D g_jikipos = {40, 400};//自キャラの座標

//画像ハンドル
int g_jikiimage[11];

//色々なファイルの読み込み
int LoadFiles(){
//画像ファイル読み込み
if(LoadDivGraph("media\\player01.bmp",
11,11,1,64,64,g_jikiimage) == -1) return -1;

return 1;
}


 mymain.h
//他から呼び出させるMyMainの関数
void MyMain();
int LoadFiles();


 myhelper.h(サンプルなので打ちミスはない)
#include "DxLib.h"
#include <limits.h>
#include <math.h>

//構造体宣言
//座標またはベクトルを記録する構造体
struct Vector{
float x,y;
};
typedef Vector Point2D;
//線を記録する構造体
struct Line2D{
Point2D startpos, endpos;
float katamuki;//傾きをラジアン値で記録
Vector speed;//移動している場合は速度をセット
};
//球体を記録する構造体
struct Ball2D{
Point2D position;
float hankei;//半径
};
//四角形を記録する構造体
struct Rect2D{
Point2D lefttop;
Point2D rightbottom;
float width;
float height;
};


//ライブラリ関数
Point2D PosInView(Point2D in);
int XInView(float inx);
int YInView(float iny);
void ScrollToLeft(float jikiposx);
void ScrollToRight(float jikiposx);
void ScrollToUp(float jikiposy);
void ScrollToDown(float jikiposy);
void DrawLineInView(float x1, float y1, float x2, float y2, int Color, int Thickness);
void DrawCircleInView(float x, float y, float r, int Color, int FillFlag);
void DrawAnimation(float x, float y, double ExtRate, double Angle,int TurnFlag,
int *imgarray, int allframe, float fps);
//ベクトル関数
Vector CreateVector(Vector in, float veclen);
Vector AddVector(Vector v1, Vector v2);
Vector SubVector(Vector v1, Vector v2);
Vector AddVectorInFrameTime(Vector pos, Vector speed);
Vector AddVectorInFrameTime2(Vector pos, Vector speed, Vector accel);
Vector Normalize(Vector in);
Vector RotateVector(Vector in, float radian);
float VectorLengthSquare(Vector in);
float DotProduct(Vector v1, Vector v2);
float CrossProduct(Vector v1, Vector v2);
void SetLine2DKatamuki(Line2D *in);
void DrawLine2D(Line2D in, int Color, int Thickness);
void DrawBall2D(Ball2D in, int Color, int Fill);
//当たり判定関数
bool HitTestLineAndBall(Line2D linein, Ball2D ballin);
bool IsPointAtLineFace(Line2D linein, Point2D ptin);
bool HitTestLineAndLine(Line2D line1, Line2D line2);
bool HitTestBallAndBall(Ball2D a, Ball2D b);
bool HitTestPointAndBox(Rect2D rect, Point2D pt);
//タイマー関数
void SetSimpleTimer(int idx, int time);
int GetPassedTime(int idx);


//グローバル変数
extern float g_frametime;
extern Rect2D g_framerect;//画面領域(当たり判定)
extern Point2D g_current_field_pos;//現在の左上座標
extern Rect2D g_stagesize;//ステージサイズ

//定数宣言
const float ZEROVALUE = 1e-10f;
const float PIE = 3.1415926f;
const int SCROLL_LIMIT = 200;
----------------------------------------------------------------
 エラー内容
1>myhelper.obj : error LNK2019: 未解決の外部シンボル "void __cdecl MyMain(void)" (?MyMain@@YAXXZ) が関数 _WinMain@16 で参照されました
1>C:\Documents and Settings\Owner\My Documents\Visual Studio 2008\Projects\my\Debug\my.exe : fatal error LNK1120: 外部参照 1 が未解決です
1>my - エラー 2、警告 0
ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ
----------------------------------------------------------------
画像を貼り付けときます
(見えにくい場合→http://www.dotup.org/uploda/www.dotup.org154142.jpg.html)
初心者なのでわかりやすくお願いします

Microsoft Visual Studio 2008
Version 9.0.21022.8 RTM
Microsoft .NET Framework
Version 3.5 SP1
----------------------------------------------------------------
新しいプリジェクト→Win32 コンソール アプリケーション(ソリューションのディレクトリを作成 チェック外す)→Windows アプリケーション(空のプロジェクト チェック外す)
----------------------------------------------------------------
 プログラム

 mymain.cpp
#include "myhelper.h"
#include "mymain.h"

//自...続きを読む

Aベストアンサー

ファイル構成から推測するに
mymain.cpp というファイルに
void MyMain(void) {
// ここに処理を書く
}
という関数が必要なようです。

Qシェルスクリプトの実行、「source」と「.」の違いについて

bashのシェルスクリプトを書いています。
当方、Mac Snow Leopard を使っているため、seq コマンドがデフォルトでは使えません。
そこで、.bashrc 内に、seq 関数をあらかじめ自分で定義して、他で使い回したいと思っています。
.bashrc の中に、
function seq() {
i=$1
while [ $i -le $2 ] ; do
echo $i
let i=$i+1
done
}
と、関数を定義しました。
seq 関数をターミナル上で実行すると、
>seq 0 2
0
1
2
と正しく、表示されます。次に、

#!/bin/sh
seq 0 2

と記述したシェルスクリプト(temp.sh)を「source」で実行すると、
>source temp.sh
0
1
2
と正しく、表示されますが、「.」で実行すると、
>./temp.sh
./temp.sh: line 2: seq: command not found
と言われます。
どのような理由によってこの違いが出るのでしょうか??

bashのシェルスクリプトを書いています。
当方、Mac Snow Leopard を使っているため、seq コマンドがデフォルトでは使えません。
そこで、.bashrc 内に、seq 関数をあらかじめ自分で定義して、他で使い回したいと思っています。
.bashrc の中に、
function seq() {
i=$1
while [ $i -le $2 ] ; do
echo $i
let i=$i+1
done
}
と、関数を定義しました。
seq 関数をターミナル上で実行すると、
>seq 0 2
0
1
2
と正しく、表示されます。次に、

#!/bin/sh
seq 0 2

...続きを読む

Aベストアンサー

追記

source は現在のシェルで実行し、結果がそのまま現在のシェルに適応されます。
今回の temp.sh なら
> source temp.sh

> seq 0 2
と入力したのと同等ということになります。

> ./temp.sh
この . はコマンドではなく、 temp.shへのパスを指定するものです。
実行ファイル名だけでコマンドとして実行できるのは、環境変数PATHで指定したディレクトリにあるものだけです。それ以外は、その実行ファイルへの絶対パス、または相対パスが必要となります。
これは、カレントディレクトリにある実行ファイルも例外ではありません。
環境変数PATHに . が無い場合は、 ./ファイル名 と相対パスを指定する必要があります。
(この点は、常に . がPATHにあるように振る舞うMS-DOSやコマンドプロンプトとは違います)
逆に、PATH上にあれば(例えば、 PATH=$HOME/bin:(以下略)となっている時の $HOME/bin )、 temp.sh とファイル名だけで実行できます。

また、こうしたコマンドは新規プロセスで実行されますので、環境変数を除いて、現在の設定は継承されません。
対話的ではないbashや、 shとして起動された bash は .bashrcを読まないので、そこに書いてあることは無効となります。

追記

source は現在のシェルで実行し、結果がそのまま現在のシェルに適応されます。
今回の temp.sh なら
> source temp.sh

> seq 0 2
と入力したのと同等ということになります。

> ./temp.sh
この . はコマンドではなく、 temp.shへのパスを指定するものです。
実行ファイル名だけでコマンドとして実行できるのは、環境変数PATHで指定したディレクトリにあるものだけです。それ以外は、その実行ファイルへの絶対パス、または相対パスが必要となります。
これは、カレントディレクトリにある実行...続きを読む


人気Q&Aランキング