情報処理技術者試験

試験で使用する情報技術に関する用語・プログラム言語など

Ver 2.1

1．情報技術に関する用語 ............................................. 12．記号・図など ..................................................... 1
3．プログラム言語 ................................................... 1
4．データベース言語 ................................................. 1
5．マーク付け言語（マークアップ言語） ............................... 1
6．表計算ソフトなどのソフトウェアパッケージ.......................... 2
別紙 1 アセンブラ言語の仕様 ......................................... 3
別紙 2 表計算ソフトの機能・用語（IT パスポート試験用)............... 11
別紙 3 表計算ソフトの機能・用語（基本情報技術者試験用） ............ 15

平成 23 年 10 月 26 日

■ 改訂履歴【Ver 2.1】 平成 23 年 10 月 26 日
ページ
変更点
1
「情報セキュリティスペシャリスト試験」で出題するプログラム言語の変更（ECMAScript の追加，Perl の削除）

【Ver 2.0】 平成 23 年 7 月 11 日
ページ
18～27 「表計算ソフトの機能・用語」の改訂【Ver 1.0】

平成 20 年 10 月 27 日

変更点

初版

本冊子に記載されている会社名又は製品名は，それぞれ各社の商標又は登録商標です。
なお，本冊子では，TM 及び ® を明記していません。

Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

1．情報技術に関する用語試験で使用する情報技術に関する用語は，日本工業規格（ JIS）に制定されているものについては，その規定に従う。

2．記号・図など試験で使用する代表的な記号・図などは，次の仕様に従う。次以外については，問題文中で定義する。
情報処理用流れ図など：JIS X 0121

決定表

：JIS X 0125

計算機システム構成の図記号：JIS X 0127

プログラム構成要素及びその表記法：JIS X 0128

3．プログラム言語①

基本情報技術者試験において，ソフトウェア開発分野に関する試験問題に出題するプログラム
言語は，C，COBOL，Java，アセンブラ言語（CASLⅡ）の 4 言語とする（4 言語のほかに，
表計算ソフトによる試験問題を出題する）。

②

情報セキュリティスペシャリスト試験において，試験問題に出題するプログラム言語は，C++，
Java，ECMAScript の 3 言語とする。

③

仕様などは，次による。
C：JIS X 3010

COBOL

：JIS X 3002

Java 1：The Java Language Specification, Third Edition（JLS 3.0）(１)（URL

アセンブラ言語 ：「別紙 1http://java.sun.com/docs/books/jls/index.html）
アセンブラ言語の仕様」（3 ページ）による。

C++：JIS X 3014

ECMAScript：JIS X 3060

注(１)なお，JLS 3.0 で追加された機能については，主に次の機能を問題中で使用する。ただし，これらの 3 機能に限定するものではない。
・Generics（総称）・拡張された for 文・enum（列挙）型
また，メタデータは範囲外とする。

4．データベース言語
試験で使用するデータベース言語は，次の仕様に従う。
SQL：JIS X 3005 規格群

5．マーク付け言語（マークアップ言語）
試験で使用するマーク付け言語は，次の仕様に従う。

1

HTML

：JIS X 4156

XML：JIS X 4159

Java は，Oracle Corporation 及びその子会社，関連会社の米国及びその他の国における登録商標又は商標です。

－ 1 －Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

6．表計算ソフトなどのソフトウェアパッケージ
表計算ソフト ：「別紙 3 表計算ソフトの機能・用語（IT パスポート試験用）」（11 ページ），
及び「別紙 4

表計算ソフトの機能・用語（基本情報技術者試験用）」（15

ページ）による。表計算ソフトの機能・用語（基本情報技術者試験用）は，
表計算ソフトの機能・用語（IT パスポート試験用）の内容を包含している。
ここに規定されていない機能・用語などについては，問題文中で定義する。
表計算ソフト以外のソフトウェアパッケージの機能・用語などは，問題文中で定義する。
＜JIS の参照（日本工業標準調査会ホームページ）＞
URL

http://www.jisc.go.jp/－ 2 －Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

別紙１

アセンブラ言語の仕様

1. システム COMETⅡの仕様
1.1 ハードウェアの仕様(1) 1 語は 16 ビットで，そのビット構成は，次のとおりである。
上位 8 ビット

15

14

13

12

下位 8 ビット

11

10

9

8

7

6

5

4

3

2

1

0 （ビット番号）

符号（負：1，非負：0）(2) 主記憶の容量は 65536 語で，そのアドレスは 0 ～ 65535 番地である。
(3) 数値は，16 ビットの 2 進数で表現する。負数は，2 の補数で表現する。
(4) 制御方式は逐次制御で，命令語は 1 語長又は 2 語長である。
(5) レジスタとして，GR（16 ビット）
，SP（16 ビット）
，PR（16 ビット）
，FR（3 ビット）の 4 種類がある。
GR（汎用レジスタ，General Register）は，GR0 ～ GR7 の 8 個があり，算術，論理，
比較，シフトなどの演算に用いる。このうち，GR1 ～ GR7 のレジスタは，指標レジスタ（index register）としてアドレスの修飾にも用いる。
SP（スタックポインタ，Stack Pointer）は，スタックの最上段のアドレスを保持している。
PR（プログラムレジスタ，Program Register）は，次に実行すべき命令語の先頭ア
ドレスを保持している。
FR（フラグレジスタ，Flag Register）は，OF（Overflow Flag），SF（Sign Flag），
ZF（Zero Flag）と呼ぶ 3 個のビットからなり，演算命令などの実行によって次の値が設定される。これらの値は，条件付き分岐命令で参照される。
OF
SF
ZF

算術演算命令の場合は，演算結果が－32768 ～ 32767 に収まらなくなったとき 1 になり，それ以外のとき 0 になる。論理演算命令の場合は，演算結果が 0 ～ 65535 に収まらなくなったとき 1 になり，それ以外のとき 0 になる。
演算結果の符号が負（ビット番号 15 が 1）のとき 1，それ以外のとき 0 になる。
演算結果が零（全部のビットが 0）のとき 1，それ以外のとき 0 になる。

(6) 論理加算又は論理減算は，被演算データを符号のない数値とみなして，加算又は減算する。
命令
命令の形式及びその機能を示す。ここで，一つの命令コードに対し 2 種類のオペランドがある場合，上段はレジスタ間の命令，下段はレジスタと主記憶間の命令を表す。

1.2

命

(1)

令

書
命 令
コード

き 方

命

オペランド

令 の

説 明

FRの設定

ロード，ストア，ロードアドレス命令

ロード
LoaD
ストア
STore
ロードアドレス
Load ADdress

LD

r1,r2
r,adr［,x］

r1 ←（r2）r ←（実効アドレス）STr,adr［,x］

実効アドレス ←（r）

LADr,adr［,x］

r ← 実効アドレス

○*1
－

－ 3 －
Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

(2)算術，論理演算命令

算術加算
ADD Arithmetic

ADDA

論理加算
ADD Logical

ADDL

算術減算
SUBtract Arithmetic

SUBA

論理減算
SUBtract Logical

SUBL

論理積
AND

AND

論理和
OR

OR

排他的論理和eXclusive OR

XOR

(3)

r1,r2
r,adr［,x］
r1,r2
r,adr［,x］
r1,r2
r,adr［,x］
r1,r2
r,adr［,x］
r1,r2
r,adr［,x］
r1,r2
r,adr［,x］
r1,r2
r,adr［,x］

算術比較
ComPare ArithmeticCPAr,adr［,x］
r1,r2

論理比較
ComPare LogicalCPLr,adr［,x］○*1（ r1）と（ r2），又は（ r）と（実効アドレス）の算術比較又は論理比較を行い，比較結果によって，FR に次の値を設定する。
FR の値
比較結果
SF
ZF
（r1）＞（r2）00（r）＞（実効アドレス）（r1）＝（r2）01（r）＝（実効アドレス）（r1）＜（r2）10（r）＜（実効アドレス）○*1

符号を除き（r）を実効アドレスで指定したビット数だけ左又は右にシフトする。
シフトの結果，空いたビット位置には，左シフトのときは 0，右シフトのときは符号と同じものが入る。
符号を含み（r）を実効アドレスで指定したビット数だけ左又は右にシフトする。
シフトの結果，空いたビット位置には 0
が入る。

○*2

シフト演算命令

算術左シフトShift Left ArithmeticSLAr,adr［,x］

算術右シフト
SRA
Shift Right Arithmeticr,adr［,x］

論理左シフトShift Left Logical
論理右シフトShift Right Logical(5)○

比較演算命令r1,r2(4)

r1 ←（r1）＋（r2）r ←（r）＋（実効アドレス）
r1 ←（r1）＋L（r2）r ←（r）＋L（実効アドレス）
r1 ←（r1）－（r2）r ←（r）－（実効アドレス）
r1 ←（r1）－L（r2）r ←（r）－L（実効アドレス）
r1 ←（r1）AND（r2）r ←（r）AND（実効アドレス）
r1 ←（r1）OR（r2）r ←（r）OR（実効アドレス）
r1 ←（r1）XOR（r2）r ←（r）XOR（実効アドレス）

SLLr,adr［,x］

SRL

r,adr［,x］

JPL

adr［,x］

JMI

adr［,x］

JNZ

adr［,x］

JZE

adr［,x］

JOV

adr［,x］

JUMP

adr［,x］

分岐命令

正分岐
Jump on PLus
負分岐
Jump on MInus
非零分岐
Jump on Non Zero
零分岐
Jump on ZEro
オーバフロー分岐
Jump on OVerflow
無条件分岐unconditional JUMP

FR の値によって，実効アドレスに分岐する。分岐しないときは，次の命令に進む。
分岐するときの FR の値
命令
OF
SF
ZF
0
0
JPL
1
JMI
0
JNZ
1
JZE
1
JOV
無条件に実効アドレスに分岐する。

－ 4 －Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

－

(6)

スタック操作命令

プッシュ
PUSH

PUSH

adr［,x］

ポップ
POP

POP

r

CALL

adr［,x］(7)－

SP ←（SP）－L 1，（SP）←（PR），
PR ← 実効アドレス
PR ←（（SP）），
SP ←（SP）＋L 1－

コール，リターン命令

コール
CALL subroutine

リターン
RET
RETurn from subroutine(8)

SP ←（SP）－L 1，（SP）← 実効アドレスr ←（（SP）），
SP ←（SP）＋L 1

その他

スーパバイザコール
SuperVisor Call

SVC

ノーオペレーション
No OPeration

NOP（注） r，r1，r2
adr
x
［
］
（
）
実効アドレス←＋L，－L
FR の設定adr［,x］

実 効ア ドレ スを 引数 とし て割 出 しを 行う。実行後の GR と FR は不定となる。

－

何もしない。

いずれも GR を示す。指定できる GR は GR0 ～ GR7
アドレスを示す。指定できる値の範囲は 0 ～ 65535
指標レジスタとして用いる GR を示す。指定できる GR は GR1 ～ GR7［］内の指定は省略できることを示す。
（）内のレジスタ又はアドレスに格納されている内容を示す。
adr と x の内容との論理加算値又はその値が示す番地
演算結果を，左辺のレジスタ又はアドレスに格納することを示す。
論理加算，論理減算を示す。
○ ：設定されることを示す。
○*1 ：設定されることを示す。ただし，OF には 0 が設定される。
○*2 ：設定されることを示す。ただし，OF にはレジスタから最後に送り出されたビットの値が設定される。
－ ：実行前の値が保持されることを示す。

1.3 文字の符号表(1) JIS X 0201 ラテン文字・片仮名用 8 ビット符 行 列 02 03
間隔 00号で規定する文字の符号表を使用する。
!
11(2) 右に符号表の一部を示す。1 文字は 8 ビット”
22からなり，上位 4 ビットを列で，下位 4 ビット#
33を行で示す。例えば，間隔，4，H，\ のビット$
44
構成は，16 進表示で，それぞれ 20，34，48，
%
5
5
&
6
6
5C である。16 進表示で，ビット構成が 21 ～'77
7E（及び表では省略している A1 ～ DF）に対応(88する文字を図形文字という。図形文字は，表示)99（印刷）装置で，文字として表示（印字）できる。 10*:(3) この表にない文字とそのビット構成が必要な+;
11
場合は，問題中で与える。
,
<
12
13
14
15

.
/

=
>
?

04
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O

05
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_

06
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o

07
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~

－ 5 －
Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

2. アセンブラ言語 CASLⅡの仕様
2.1 言語の仕様(1) CASLⅡは，COMETⅡのためのアセンブラ言語である。
(2) プログラムは，命令行及び注釈行からなる。
(3) 1 命令は 1 命令行で記述し，次の行へ継続できない。
(4) 命令行及び注釈行は，次に示す記述の形式で，行の 1 文字目から記述する。
行の 種 類
記 述 の 形 式
オペランドあり ［ラベル］｛空白｝｛命令コード｝｛空白｝｛オペランド｝［｛空白｝［コメント］］
命令行
オペランドなし ［ラベル］｛空白｝｛命令コード｝［｛空白｝［｛;｝［コメント］
］
］
注釈行
［空白］
｛;｝
［コメント］（注）［］ ［］内の指定が省略できることを示す。
｛｝ ｛｝内の指定が必須であることを示す。
その命令の（先頭の語の）アドレスを他の命令やプログラムから参照するためのラベル名前である。長さは 1 ～ 8 文字で，先頭の文字は英大文字でなければならない。
以降の文字は，英大文字又は数字のいずれでもよい。なお，予約語である GR0 ～GR7 は，使用できない。
1 文字以上の間隔文字の列である。
空白
命令コード 命令ごとに記述の形式が定義されている。
オペランド 命令ごとに記述の形式が定義されている。
コメント
覚え書きなどの任意の情報であり，処理系で許す任意の文字を書くことができる。

命令の種類
命令は，4 種類のアセンブラ命令（START，END，DS，DC），4 種類のマクロ命令（IN，OUT，RPUSH，RPOP）及び機械語命令（COMETⅡの命令）からなる。その仕様を次に
示す。

2.2

命令の種類

ラベル

命 令
コード

オペランド

機

能

プログラムの先頭を定義
プログラムの実行開始番地を定義
ラベル START ［実行開始番地］
他のプログラムで参照する入口名
を定義
アセンブラ命令
END
プログラムの終わりを明示［ラベル］ DS
語数
領域を確保
定数［,定数］…
定数を定義［ラベル］ DCIN
［ラベル］
入力領域,入力文字長領域 入力装置から文字データを入力［ラベル］ OUT
出力領域,出力文字長領域 出力装置へ文字データを出力
マクロ命令
GR の内容をスタックに格納［ラベル］ RPUSH［ラベル］ RPOP
スタックの内容を GR に格納
機械語命令
［ラベル］
（「1.2 命令」を参照）

2.3

アセンブラ命令
アセンブラ命令は，アセンブラの制御などを行う。

(1)

START ［実行開始番地］
START 命令は，プログラムの先頭を定義する。
実行開始番地は，そのプログラム内で定義されたラベルで指定する。指定がある場合はその番地から，省略した場合は START 命令の次の命令から，実行を開始する。
また，この命令につけられたラベルは，他のプログラムから入口名として参照できる。

－ 6 －Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

(2)

END
END 命令は，プログラムの終わりを定義する。

(3)

DS
語数
DS 命令は，指定した語数の領域を確保する。
語数は，10 進定数（≧ 0）で指定する。語数を 0 とした場合，領域は確保しないが，ラベルは有効である。

(4)

DC
定数［,定数］…
DC 命令は，定数で指定したデータを（連続する）語に格納する。
定数には，10 進定数，16 進定数，文字定数，アドレス定数の 4 種類がある。

定数の種類

書き方

命 令 の 説 明
n で指定した 10 進数値を，1 語の 2 進数データとして格納する。ただし，n10 進定数nが－32768 ～ 32767 の範囲にないときは，その下位 16 ビットを格納する。
h は 4 けたの 16 進数（16 進数字は 0 ～ 9，A ～ F）とする。h で指定した
16 進定数#h16 進数値を 1 語の 2 進数データとして格納する（0000 ≦ h ≦ FFFF）。
文字列の文字数（＞ 0）分の連続する領域を確保し，最初の文字は第 1 語の下位 8 ビットに，2 番目の文字は第 2 語の下位 8 ビットに，…と順次文字'文字列' データとして格納する。各語の上位 8 ビットには 0 のビットが入る。
文字定数
文字列には，間隔及び任意の図形文字を書くことができる。ただし，アポストロフィ（'）は 2 個続けて書く。
アドレス定数 ラベル ラベルに対応するアドレスを 1 語の 2 進数データとして格納する。

マクロ命令
マクロ命令は，あらかじめ定義された命令群とオペランドの情報によって，目的の機能を果たす命令群を生成する（語数は不定）
。

2.4

(1)

IN
入力領域,入力文字長領域
IN 命令は，あらかじめ割り当てた入力装置から，1 レコードの文字データを読み込む。
入力領域は，256 語長の作業域のラベルであり，この領域の先頭から，1 文字を 1 語に対応させて順次入力される。レコードの区切り符号（キーボード入力の復帰符号など）
は，格納しない。格納の形式は，DC 命令の文字定数と同じである。入力データが 256 文
字に満たない場合，入力領域の残りの部分は実行前のデータを保持する。入力データが256 文字を超える場合，以降の文字は無視される。
入力文字長領域は，1 語長の領域のラベルであり，入力された文字の長さ（≧ 0）が 2進数で格納される。ファイルの終わり（end of file）を検出した場合は，－1 が格納される。
IN 命令を実行すると，GR の内容は保存されるが，FR の内容は不定となる。

(2)

OUT
出力領域,出力文字長領域
OUT 命令は，あらかじめ割り当てた出力装置に，文字データを，1 レコードとして書き出す。
出力領域は，出力しようとするデータが 1 文字 1 語で格納されている領域のラベルである。格納の形式は，DC 命令の文字定数と同じであるが，上位 8 ビットは，OS が無視するので 0 でなくてもよい。
出力文字長領域は，1 語長の領域のラベルであり，出力しようとする文字の長さ（≧ 0）
を 2 進数で格納しておく。
OUT 命令を実行すると，GR の内容は保存されるが，FR の内容は不定となる。

－ 7 －Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

(3)

RPUSH
RPUSH 命令は，GR の内容を，GR1，GR2，…，GR7 の順序でスタックに格納する。

(4)

RPOP
RPOP 命令は，スタックの内容を順次取り出し，GR7，GR6，…，GR1 の順序で GR に
格納する。

2.5

機械語命令
機械語命令のオペランドは，次の形式で記述する。
r, r1, r2xadr

GR は，記号 GR0 ～ GR7 で指定する。
指標レジスタとして用いる GR は，記号 GR1 ～ GR7 で指定する。
アドレスは，10 進定数，16 進定数，アドレス定数又はリテラルで指定する。
リテラルは，一つの 10 進定数，16 進定数又は文字定数の前に等号（=）を付けて記述する。CASLⅡは，等号の後の定数をオペランドとする DC 命令を生成し，そのアドレスを adr の値とする。

2.6 その他(1) アセンブラによって生成される命令語や領域の相対位置は，アセンブラ言語での記述順序とする。ただし，リテラルから生成される DC 命令は，END 命令の直前にまとめて配置される。
(2) 生成された命令語，領域は，主記憶上で連続した領域を占める。
3. プログラム実行の手引
3.1 OS
プログラムの実行に関して，次の取決めがある。
(1) アセンブラは，未定義ラベル（オペランド欄に記述されたラベルのうち，そのプログ
ラム内で定義されていないラベル）を，他のプログラムの入口名（START 命令のラベル）と解釈する。この場合，アセンブラはアドレスの決定を保留し，その決定を OS に任せる。OS は，実行に先立って他のプログラムの入口名との連係処理を行いアドレスを決定する（プログラムの連係）。
(2) プログラムは，OS によって起動される。プログラムがロードされる主記憶の領域は不定とするが，プログラム中のラベルに対応するアドレス値は，OS によって実アドレスに補正されるものとする。
(3) プログラムの起動時に，OS はプログラム用に十分な容量のスタック領域を確保し，その最後のアドレスに 1 を加算した値を SP に設定する。
(4) OS は，CALL 命令でプログラムに制御を渡す。プログラムを終了し OS に制御を戻す
ときは，RET 命令を使用する。
(5) IN 命令に対応する入力装置，OUT 命令に対応する出力装置の割当ては，プログラムの実行に先立って利用者が行う。
(6) OS は，入出力装置や媒体による入出力手続の違いを吸収し，システムでの標準の形
式及び手続（異常処理を含む）で入出力を行う。したがって，IN，OUT 命令では，入出力装置の違いを意識する必要はない。
3.2

未定義事項
プログラムの実行等に関し，この仕様で定義しない事項は，処理系によるものとする。

－ 8 －Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

参考資料
参考資料は，COMETⅡの理解を助けるため又は COMETⅡの処理系作成者に対する便宜のための資料である。したがって，COMETⅡ，CASLⅡの仕様に影響を与えるもの
ではない。
1.

命令語の構成命令語の構成は定義しないが，次のような構成を想定する。ここで，OP の数値は 16進表示で示す。
15

11

7
3
第1語

0 15

OP
r／r1 x／r2
主OP副OP
0
0
－
－
1
0
1
2
4
2
0
1
2
3
4
5
6
7
3
0
1
2
4
5
6
4
0
1
4
5
5
0
1
2
3
6
1
－
2
－
3
－
4
－
5
－
6
－
7
0
－
1
－
8
0
－
1
－
－
9
～
E
F
0
－

0
第2語
adr
－

－

－
－
－
－

－
－
－

－
－

－
－

ビット番号
命令語とアセンブラとの対応

命令
語長
1
2
2
2
1
2
2
2
2
1
1
1
1
2
2
2
1
1
1
2
2
1
1
2
2
2
2
2
2
2
2
2
2
2
1
2
1

機械語命令
NOP
LD
ST
LAD
LD
ADDA
SUBA
ADDL
SUBL
ADDA
SUBA
ADDL
SUBL
AND
OR
XOR
AND
OR
XOR
CPA
CPL
CPA
CPL
SLA
SRA
SLL
SRL
JMI
JNZ
JZE
JUMP
JPL
JOV
PUSH
POP
CALL
RET

r,adr,xr,adr,xr,adr,xr1,r2r,adr,xr,adr,xr,adr,xr,adr,x
r1,r2
r1,r2
r1,r2
r1,r2
r,adr,xr,adr,xr,adr,x
r1,r2
r1,r2
r1,r2
r,adr,xr,adr,xr1,r2
r1,r2r,adr,xr,adr,xr,adr,xr,adr,x
adr,x
adr,x
adr,x
adr,x
adr,x
adr,x
adr,x
r
adr,x

意味
no operation
load
store
load addressload
add arithmetic
subtract arithmetic
add logicalsubtract logical
add arithmetic
subtract arithmetic
add logicalsubtract logicalandor
exclusive or
andor
exclusive orcompare arithmetic
compare logicalcompare arithmetic
compare logicalshift left arithmetic
shift right arithmetic
shift left logicalshift right logicaljump on minus
jump on non zero
jump on zero
unconditional jump
jump on plus
jump on overflow
push
popcall subroutine
return from subroutine

その他の命令
2

SVC

adr,x

supervisor call

－ 9 －Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

2.

マクロ命令
マクロ命令が生成する命令群は定義しない（語数不定）が，次の例のような命令群を生成することを想定する。
〔例〕IN 命令LABEL IN
IBUF,LEN
マクロ生成
LABEL

3.

PUSH
PUSH
LAD
LAD
SVC
POP
POP

0,GR1
0,GR2
GR1,IBUF
GR2,LEN
1
GR2
GR1

シフト演算命令におけるビットの動き
シフト演算命令において，例えば，1 ビットのシフトをしたときの動き及び OF の変化
は，次のとおりである。

(1) 算術左シフトでは，ビット番号 14 の値が設定される。
OF

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

0

(2) 算術右シフトでは，ビット番号 0 の値が設定される。
15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

1

0

OF

(3) 論理左シフトでは，ビット番号 15 の値が設定される。
OF

15

14

13

12

11

10

9

8

7

6

5

4

3

2

0

(4) 論理右シフトでは，ビット番号 0 の値が設定される。
15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

OF

0

4.

プログラムの例
COUNT1;;;MORE

RETURN

START
入力
処理
出力
PUSH
PUSH
SUBA
AND
JZE
LAD
LAD
AND
JNZ
LD
POP
POP
RET
END

;
GR1:検索する語
GR1 中の'1'のビットの個数を求める
GR0:GR1 中の'1'のビットの個数
0,GR1
;
0,GR2
;
GR2,GR2; Count = 0
GR1,GR1; 全部のビットが'0'？
RETURN; 全部のビットが'0'なら終了
GR2,1,GR2; Count = Count + 1
GR0,-1,GR1; 最下位の'1'のビット 1 個をGR1,GR0;'0'に変えるMORE; '1'のビットが残っていれば繰返し
GR0,GR2; GR0 = Count
GR2
;
GR1
;
; 呼出しプログラムへ戻る;－ 10 －
Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

別紙２ 表計算ソフトの機能・用語（IT パスポート試験用）

表計算ソフトの機能，用語などは，原則として次による。
けい

なお，ワークシートの保存，読出し，印刷，罫線作成やグラフ作成など，ここで示す以外の機能などを使用するときには，問題文中に示す。
1.

ワークシート(1)

列と行とで構成される升目の作業領域をワークシートという。ワークシートの大きさは 256

列，10,000 行とする。
(2)

ワークシートの列と行のそれぞれの位置は，列番号と行番号で表す。列番号は，最左端列の列番号を A とし，A，B，…，Z，AA，AB，…，AZ，BA，BB，…，BZ，…，IU，IV と表す。
行番号は，最上端行の行番号を 1 とし，1，2，…，10000 と表す。
(3)

複数のワークシートを利用することができる。このとき，各ワークシートには一意のワーク

シート名を付けて，他のワークシートと区別する。
2.

セルとセル範囲(1)

ワークシートを構成する各升をセルという。その位置は列番号と行番号で表し，それをセル

番地という。
［例］列 A 行 1 にあるセルのセル番地は，A1 と表す。
(2)

ワークシート内のある長方形の領域に含まれる全てのセルの集まりを扱う場合，長方形の左上端と右下端のセル番地及び“～”を用いて，“左上端のセル番地～右下端のセル番地”と表す。これを，セル範囲という。
［例］左上端のセル番地が A1 で，右下端のセル番地が B3 のセル範囲は，A1～B3 と表す。
(3)

他のワークシートのセル番地又はセル範囲を指定する場合には，ワークシート名と“!”を用い，それぞれ“ワークシート名 ! セル番地”又は“ワークシート名 ! セル 範囲”と表す。
［例］ワークシート“シート1”のセル範囲 B5 ～ G10 を，別のワークシートから指定する場合には，シート1 ! B5～G10 と表す。
3.

値と式
(1)

セルは値をもち，その値はセル番地によって参照できる。値には，数値，文字列，論理値及び空値がある。
(2)

文字列は一重引用符“ ’ ”で囲って表す。

［例］文字列“ A ”，
“ BC ”は，それぞれ ’ A ’ ，’ BC ’ と表す。
(3)

論理値の真を true，偽を false と表す。

(4)

空値を null と表し，空値をもつセルを空白セルという。セルの初期状態は，空白セルとする。

(5)

セルには，式を入力することができる。セルは，式を評価した結果の値をもつ。

－ 11 －
Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

(6)式は，定数，セル番地，演算子，括弧及び関数から構成される。定数は，数値，文字列，論

理値又は空値を表す表記とする。式中のセル番地は，その番地のセルの値を参照する。
(7)

式には，算術式，文字式及び論理式がある。評価の結果が数値となる式を算術式，文字列となる式を文字式，論理値となる式を論理式という。
(8)セルに式を入力すると，式は直ちに評価される。式が参照するセルの値が変化したときには，直ちに，適切に再評価される。
4.

演算子
(1)

単項演算子は，正符号“＋”及び負符号 “－”とする。

(2)

算術演算子は，加算“＋”，減算“－”，乗算“＊”，除算“／”及びべき乗“＾”とする。

(3)

比較演算子は，より大きい“＞”，より小さい“＜”，以上“≧”，以下“≦”，等しい“＝”及び等しくない“≠”とする。
(4)

括弧は丸括弧“ ( ”及び“ ) ”を使う。

(5)

式中に複数の演算及び括弧があるときの計算の順序は，次表の優先順位に従う。
演算の種類

5.

演算子

優先順位

括弧

(

)

べき乗演算

＾

単項演算

＋，－

乗除演算

＊，／

加減演算

＋，－

比較演算

＞，＜，≧，≦，＝，≠

高

低

セルの複写
(1)

セルの値又は式を，他のセルに複写することができる。

(2)

セルを複写する場合で，複写元のセル中にセル番地を含む式が入力されているとき，複写元と複写先のセル番地の差を維持するように，式中のセル番地を変化させるセルの参照方法を相対参照という。この場合，複写先のセルとの列番号の差及び行番号の差を，複写元のセルに入力された式中の各セル番地に加算した式が，複写先のセルに入る。
［例］セル A6 に式 A1 ＋ 5 が入力されているとき，このセルをセル B8 に複写すると，セル B8には式 B3 ＋ 5 が入る。
(3)

セルを複写する場合で，複写元のセル中にセル番地を含む式が入力されているとき，そのセル番地の列番号と行番号の両方又は片方を変化させないセルの参照方法を絶対参照という。絶対参照を適用する列番号と行番号の両方又は片方の直前には“$”を付ける。
［例］セル B1 に式 $A$1 ＋ $A2 ＋ A$5 が入力されているとき，このセルをセル C4 に複写すると，セル C4 には式 $A$1 ＋ $A5 ＋ B$5 が入る。

－ 12 －
Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

(4)セルを複写する場合で，複写元のセル中に，他のワークシートを参照する式が入力されているとき，その参照するワークシートのワークシート名は複写先でも変わらない。
［例］ワークシート“シート2”のセル A6 に式 シート1 ! A1 が入力されているとき，このセルをワークシート“シート3”のセル B8 に複写すると，セル B8 には式 シート1 ! B3 が入る。
6.

関数
式には次の表で定義する関数を利用することができる。
書式

解説
セル範囲に含まれる数値の合計を返す。
合計 (セル範囲１) )［例］合計 ( A1 ～ B5 ) は， セル範囲 A1～B5 に含まれる数値の合計を返す。
平均 (セル範囲１) ) セル範囲に含まれる数値の平均を返す。
標本標準偏差 (セセル範囲に含まれる数値を標本として計算した標準偏差を返す。
ル 範囲１) )母標準偏差 (セル
セル範囲に含まれる数値を母集団として計算した標準偏差を返す。
範囲１) )１)
最大 (セル範囲 ) セル範囲に含まれる数値の最大値を返す。
最小 (セル範囲１) ) セル範囲に含まれる数値の最小値を返す。
論理式の値が true のとき式 1 の値を，false のとき式 2 の値を返す。
IF ( 論理式 , 式1, 式［例］IF ( B3 ＞ A4 , ’ 北海道 ’ ,C4 ) は，セル B3 の値がセル A4 の値より大きいと2)
き文字列“北海道”を，それ以外のときセル C4 の値を返す。
個数 (セル範囲 )セル範囲に含まれるセルのうち，空白セルでないセルの個数を返す。
セル範囲に含まれるセルのうち，検索条件の記述で指定された条件を満たすセルの個数を返す。検索条件の記述は比較演算子と式の組で記述し，セル範
条件付個数 (セル 囲に含まれる各セルと式の値を，指定した比較演算子によって評価する。
範囲 , 検索条件の ［例1］条件付個数 ( H5 ～ L9 , ＞ A1 ) は，セル範囲 H5 ～ L9 のセルのうち，セル A1 の値より大きな値をもつセルの個数を返す。
記述 )［例2］条件付個数 ( H5 ～ L9 , ＝ ’ A4 ’ ) は，セル範囲 H5 ～ L9 のセルのうち，文字列 “A4 ”をもつセルの個数を返す。
算術式の値以下で最大の整数を返す。
整数部 ( 算術式 ) ［例1］整数部 ( 3.9 ) は，3 を返す。
［例2］整数部 ( －3.9 ) は，－4 を返す。
算術式1 の値を被除数，算術式2 の値を除数として除算を行ったときの剰余を返す。関数“剰余”と“整数部”は，剰余 ( x , y ) ＝ x － y ＊ 整数部 ( x ／ y ) と剰余 ( 算術式1, 算
いう関係を満たす。
術式2)［例1］剰余 ( 10 , 3 ) は，1 を返す。
［例2］剰余 (－ 10 , 3 ) は，2 を返す。
算術式の値の非負の平方根を返す。算術式の値は，非負の数値でなければな
平方根 ( 算術式 )らない。
論理積 ( 論理式1 , 論理式1，論理式2，… の値が全て true のとき，true を返す。それ以外のとき
false を返す。
論理式2 , … ) ２)
論理和 ( 論理式1 , 論理式1，論理式2，… の値のうち，少なくとも一つが true のとき，true を返
論理式2 , … ) ２)
す。それ以外のとき false を返す。
否定 ( 論理式 )論理式の値が true のとき false を，false のとき true を返す。

－ 13 －
Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

切上げ ( 算術式, 桁 算術式の値を指定した桁位置で，関数“切上げ”は切り上げた値を，関数“四捨五入”は四捨五入した値を，関数“切捨て”は切り捨てた値を返す。ここ位置)で，桁位置は小数第 1 位の桁を 0 とし，右方向を正として数えたときの位置と四捨五入 ( 算術式 ,する。
桁位置)［例1］切上げ ( －314.159 , 2 ) は，－314.16 を返す。
切捨て( 算術式 , 桁 ［例2］切上げ ( 314.159 , －2 ) は，400 を返す。
位置)［例3］切上げ ( 314.159 , 0 ) は，315 を返す。
式1，式2，… のそれぞれの値を文字列として扱い，それらを引数の順につないでできる一つの文字列を返す。
結合 ( 式1 , 式2 , … ) ２［例］結合 ( ’北海道 ’ , ’ 九州 ’ , 123 , 456 ) は，文字列“北海道九州123456”を返す。
順位 ( 算術式 , セル セル範囲の中での算術式の値の順位を，順序の指定が 0 の場合は昇順で，1 の範囲 １ ) , 順序の指 場合は降順で数えて，その順位を返す。ここで，セル範囲の中に同じ値がある
定)場合，それらを同順とし，次の順位は同順の個数だけ加算した順位とする。
0 以上 1 未満の一様乱数 （ 実数値 ） を返す。
乱数 ( )
表引き (セル範囲 , セル範囲の左上端から行と列をそれぞれ 1，2，… と数え，セル範囲に含まれ行の位置 , 列の位 る行の位置と列の位置で指定した場所にあるセルの値を返す。
置)［例］表引き ( A3 ～ H11 , 2 , 5 ) は，セル E4 の値を返す。
セル範囲の左端列を上から下に走査し，検索の指定によって指定される条件を満たすセルが現れる最初の行を探す。その行に対して，セル範囲の左端列から列を 1，2，… と数え，セル範囲に含まれる列の位置で指定した列にあるセルの値を返す。
垂直照合 ( 式, セル ・検索の指定が 0 の場合の条件：式の値と一致する値を検索する。
範囲 , 列の位置 , 検 ・検索の指定が 1 の場合の条件：式の値以下の最大値を検索する。このとき，
索の指定 )
左端列は上から順に昇順に整列されている必要がある。
［例］垂直照合 ( 15 , A2 ～ E10 , 5 , 0 ) は，セル範囲の左端列をセル A2，A3，…，A10 と探す。このとき，セル A6 で 15 を最初に見つけたとすると，
左端列 A から数えて 5 列目の列 E 中で，セル A6 と同じ行にあるセル E6の値を返す。
セル範囲の上端行を左から右に走査し，検索の指定によって指定される条件を満たすセルが現れる最初の列を探す。その列に対して，セル範囲の上端行
から行を 1，2，… と数え，セル範囲に含まれる行の位置で指定した行にあるセルの値を返す。
水平照合 ( 式, セル ・検索の指定が 0 の場合の条件：式の値と一致する値を検索する。
範囲 , 行の位置 , 検 ・検索の指定が 1 の場合の条件：式の値以下の最大値を検索する。このとき，
索の指定 )
上端行は左から順に昇順に整列されている必要がある。
［例］水平照合 ( 15 , A2 ～ G6 , 5 , 1 ) は，セル範囲の上端行をセル A2，B2，…，G2 と探す。このとき，15 以下の最大値をセル D2 で最初に見つけたとすると，上端行 2 から数えて 5 行目の行 6 中で，セル D2 と同じ列にあるセル D6 の値を返す。
注１) 引数として渡したセル範囲の中で，数値以外の値は処理の対象としない。
２)
引数として渡すことができる式の個数は，1 以上である。

－ 14 －
Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

別紙３ 表計算ソフトの機能・用語（基本情報技術者試験用）

表計算ソフトの機能，用語などは，原則として次による。
けい

なお，ワークシートの保存，読出し，印刷，罫線作成やグラフ作成など，ここで示す以外の機能などを使用するときには，問題文中に示す。
1.

ワークシート(1)

列と行とで構成される升目の作業領域をワークシートという。ワークシートの大きさは 256

列，10,000 行とする。
(2)

ワークシートの列と行のそれぞれの位置は，列番号と行番号で表す。列番号は，最左端列の列番号を A とし，A，B，…，Z，AA，AB，…，AZ，BA，BB，…，BZ，…，IU，IV と表す。
行番号は，最上端行の行番号を 1 とし，1，2，…，10000 と表す。
(3)

複数のワークシートを利用することができる。このとき，各ワークシートには一意のワーク

シート名を付けて，他のワークシートと区別する。
2.

セルとセル範囲(1)

ワークシートを構成する各升をセルという。その位置は列番号と行番号で表し，それをセル

番地という。
［例］列 A 行 1 にあるセルのセル番地は，A1 と表す。
(2)

ワークシート内のある長方形の領域に含まれる全てのセルの集まりを扱う場合，長方形の左上端と右下端のセル番地及び“～”を用いて，“左上端のセル番地～右下端のセル番地”と表す。これを，セル範囲という。
［例］左上端のセル番地が A1 で，右下端のセル番地が B3 のセル範囲は，A1～B3 と表す。
(3)

他のワークシートのセル番地又はセル範囲を指定する場合には，ワークシート名と“!”を用い，それぞれ“ワークシート名 ! セル番地”又は“ワークシート名 ! セル 範囲”と表す。
［例］ワークシート“シート1”のセル範囲 B5 ～ G10 を，別のワークシートから指定する場合には，シート1 ! B5～G10 と表す。
3.

値と式
(1)

セルは値をもち，その値はセル番地によって参照できる。値には，数値，文字列，論理値及び空値がある。
(2)

文字列は一重引用符“ ’ ”で囲って表す。

［例］文字列“ A ”，
“ BC ”は，それぞれ ’ A ’ ，’ BC ’ と表す。
(3)

論理値の真を true，偽を false と表す。

(4)

空値を null と表し，空値をもつセルを空白セルという。セルの初期状態は，空白セルとする。

(5)

セルには，式を入力することができる。セルは，式を評価した結果の値をもつ。

－ 15 －
Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

(6)式は，定数，セル番地，演算子，括弧及び関数から構成される。定数は，数値，文字列，論

理値又は空値を表す表記とする。式中のセル番地は，その番地のセルの値を参照する。
(7)

式には，算術式，文字式及び論理式がある。評価の結果が数値となる式を算術式，文字列となる式を文字式，論理値となる式を論理式という。
(8)セルに式を入力すると，式は直ちに評価される。式が参照するセルの値が変化したときには，直ちに，適切に再評価される。
4.

演算子
(1)

単項演算子は，正符号“＋”及び負符号 “－”とする。

(2)

算術演算子は，加算“＋”，減算“－”，乗算“＊”，除算“／”及びべき乗“＾”とする。

(3)

比較演算子は，より大きい“＞”，より小さい“＜”，以上“≧”，以下“≦”，等しい“＝”及び等しくない“≠”とする。
(4)

括弧は丸括弧“ ( ”及び“ ) ”を使う。

(5)

式中に複数の演算及び括弧があるときの計算の順序は，次表の優先順位に従う。
演算の種類

5.

演算子

優先順位

括弧

(

)

べき乗演算

＾

単項演算

＋，－

乗除演算

＊，／

加減演算

＋，－

比較演算

＞，＜，≧，≦，＝，≠

高

低

セルの複写
(1)

セルの値又は式を，他のセルに複写することができる。

(2)

セルを複写する場合で，複写元のセル中にセル番地を含む式が入力されているとき，複写元と複写先のセル番地の差を維持するように，式中のセル番地を変化させるセルの参照方法を相対参照という。この場合，複写先のセルとの列番号の差及び行番号の差を，複写元のセルに入力された式中の各セル番地に加算した式が，複写先のセルに入る。
［例］セル A6 に式 A1 ＋ 5 が入力されているとき，このセルをセル B8 に複写すると，セル B8には式 B3 ＋ 5 が入る。
(3)

セルを複写する場合で，複写元のセル中にセル番地を含む式が入力されているとき，そのセル番地の列番号と行番号の両方又は片方を変化させないセルの参照方法を絶対参照という。絶対参照を適用する列番号と行番号の両方又は片方の直前には“$”を付ける。
［例］セル B1 に式 $A$1 ＋ $A2 ＋ A$5 が入力されているとき，このセルをセル C4 に複写すると，セル C4 には式 $A$1 ＋ $A5 ＋ B$5 が入る。

－ 16 －
Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

(4)セルを複写する場合で，複写元のセル中に，他のワークシートを参照する式が入力されているとき，その参照するワークシートのワークシート名は複写先でも変わらない。
［例］ワークシート“シート2”のセル A6 に式 シート1 ! A1 が入力されているとき，このセルをワークシート“シート3”のセル B8 に複写すると，セル B8 には式 シート1 ! B3 が入る。
6.

関数
式には次の表で定義する関数を利用することができる。
書式

解説
セル範囲に含まれる数値の合計を返す。
合計 (セル範囲１) )［例］合計 ( A1 ～ B5 ) は， セル範囲 A1～B5 に含まれる数値の合計を返す。
平均 (セル範囲１) ) セル範囲に含まれる数値の平均を返す。
標本標準偏差 (セセル範囲に含まれる数値を標本として計算した標準偏差を返す。
ル 範囲１) )母標準偏差 (セル
セル範囲に含まれる数値を母集団として計算した標準偏差を返す。
範囲１) )１)
最大 (セル範囲 ) セル範囲に含まれる数値の最大値を返す。
最小 (セル範囲１) ) セル範囲に含まれる数値の最小値を返す。
論理式の値が true のとき式 1 の値を，false のとき式 2 の値を返す。
IF ( 論理式 , 式1, 式［例］IF ( B3 ＞ A4 , ’ 北海道 ’ ,C4 ) は，セル B3 の値がセル A4 の値より大きいと2)
き文字列“北海道”を，それ以外のときセル C4 の値を返す。
個数 (セル範囲 )セル範囲に含まれるセルのうち，空白セルでないセルの個数を返す。
セル範囲に含まれるセルのうち，検索条件の記述で指定された条件を満たすセルの個数を返す。検索条件の記述は比較演算子と式の組で記述し，セル範
条件付個数 (セル 囲に含まれる各セルと式の値を，指定した比較演算子によって評価する。
範囲 , 検索条件の ［例1］条件付個数 ( H5 ～ L9 , ＞ A1 ) は，セル範囲 H5 ～ L9 のセルのうち，セル A1 の値より大きな値をもつセルの個数を返す。
記述 )［例2］条件付個数 ( H5 ～ L9 , ＝ ’ A4 ’ ) は，セル範囲 H5 ～ L9 のセルのうち，文字列 “A4 ”をもつセルの個数を返す。
算術式の値以下で最大の整数を返す。
整数部 ( 算術式 ) ［例1］整数部 ( 3.9 ) は，3 を返す。
［例2］整数部 ( －3.9 ) は，－4 を返す。
算術式1 の値を被除数，算術式2 の値を除数として除算を行ったときの剰余を返す。関数“剰余”と“整数部”は，剰余 ( x , y ) ＝ x － y ＊ 整数部 ( x ／ y ) と剰余 ( 算術式1, 算
いう関係を満たす。
術式2)［例1］剰余 ( 10 , 3 ) は，1 を返す。
［例2］剰余 (－ 10 , 3 ) は，2 を返す。
算術式の値の非負の平方根を返す。算術式の値は，非負の数値でなければな
平方根 ( 算術式 )らない。
論理積 ( 論理式1 , 論理式1，論理式2，… の値が全て true のとき，true を返す。それ以外のとき
false を返す。
論理式2 , … ) ２)
論理和 ( 論理式1 , 論理式1，論理式2，… の値のうち，少なくとも一つが true のとき，true を返
論理式2 , … ) ２)
す。それ以外のとき false を返す。
否定 ( 論理式 )論理式の値が true のとき false を，false のとき true を返す。

－ 17 －
Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

切上げ ( 算術式, 桁 算術式の値を指定した桁位置で，関数“切上げ”は切り上げた値を，関数“四捨五入”は四捨五入した値を，関数“切捨て”は切り捨てた値を返す。ここ位置)で，桁位置は小数第 1 位の桁を 0 とし，右方向を正として数えたときの位置と四捨五入 ( 算術式 ,する。
桁位置)［例1］切上げ ( －314.159 , 2 ) は，－314.16 を返す。
切捨て( 算術式 , 桁 ［例2］切上げ ( 314.159 , －2 ) は，400 を返す。
位置)［例3］切上げ ( 314.159 , 0 ) は，315 を返す。
式1，式2，… のそれぞれの値を文字列として扱い，それらを引数の順につないでできる一つの文字列を返す。
結合 ( 式1 , 式2 , … ) ２［例］結合 ( ’北海道 ’ , ’ 九州 ’ , 123 , 456 ) は，文字列“北海道九州123456”を返す。
順位 ( 算術式 , セル セル範囲の中での算術式の値の順位を，順序の指定が 0 の場合は昇順で，1 の範囲 １ ) , 順序の指 場合は降順で数えて，その順位を返す。ここで，セル範囲の中に同じ値がある
定)場合，それらを同順とし，次の順位は同順の個数だけ加算した順位とする。
0 以上 1 未満の一様乱数 （ 実数値 ） を返す。
乱数 ( )
表引き (セル範囲 , セル範囲の左上端から行と列をそれぞれ 1，2，… と数え，セル範囲に含まれ行の位置 , 列の位 る行の位置と列の位置で指定した場所にあるセルの値を返す。
置)［例］表引き ( A3 ～ H11 , 2 , 5 ) は，セル E4 の値を返す。
セル範囲の左端列を上から下に走査し，検索の指定によって指定される条件を満たすセルが現れる最初の行を探す。その行に対して，セル範囲の左端列から列を 1，2，… と数え，セル範囲に含まれる列の位置で指定した列にあるセルの値を返す。
垂直照合 ( 式, セル ・検索の指定が 0 の場合の条件：式の値と一致する値を検索する。
範囲 , 列の位置 , 検 ・検索の指定が 1 の場合の条件：式の値以下の最大値を検索する。このとき，
索の指定 )
左端列は上から順に昇順に整列されている必要がある。
［例］垂直照合 ( 15 , A2 ～ E10 , 5 , 0 ) は，セル範囲の左端列をセル A2，A3，…，A10 と探す。このとき，セル A6 で 15 を最初に見つけたとすると，
左端列 A から数えて 5 列目の列 E 中で，セル A6 と同じ行にあるセル E6の値を返す。
セル範囲の上端行を左から右に走査し，検索の指定によって指定される条件を満たすセルが現れる最初の列を探す。その列に対して，セル範囲の上端行
から行を 1，2，… と数え，セル範囲に含まれる行の位置で指定した行にあるセルの値を返す。
水平照合 ( 式, セル ・検索の指定が 0 の場合の条件：式の値と一致する値を検索する。
範囲 , 行の位置 , 検 ・検索の指定が 1 の場合の条件：式の値以下の最大値を検索する。このとき，
索の指定 )
上端行は左から順に昇順に整列されている必要がある。
［例］水平照合 ( 15 , A2 ～ G6 , 5 , 1 ) は，セル範囲の上端行をセル A2，B2，…，G2 と探す。このとき，15 以下の最大値をセル D2 で最初に見つけたとすると，上端行 2 から数えて 5 行目の行 6 中で，セル D2 と同じ列にあるセル D6 の値を返す。
1 行又は 1 列を対象とする同じ大きさの検索のセル範囲と抽出のセル範囲に対して，検索のセル範囲を左端又は上端から走査し，式の値と一致する最初の照合検索 ( 式 , 検索 セルを探す。見つかったセルの検索のセル範囲の中での位置と，抽出のセルのセル範囲 , 抽出 範囲の中での位置が同じセルの値を返す。
［例］照合検索 ( 15 , A1 ～ A8 , C6 ～ C13 ) は， セル範囲 A1 ～ A8 をセル A1，のセル範囲 )
A2，… と探す。このとき，セル A5 で 15 を最初に見つけたとすると，セル範囲 C6 ～ C13 の上端から数えて 5 番目のセル C10 の値を返す。

－ 18 －
Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

1 行又は 1 列を対象とするセル範囲に対して，セル範囲の左端又は上端から走査し，検索の指定によって指定される条件を満たす最初のセルを探す。見つかったセルの位置を，セル範囲の左端又は上端から 1，2，… と数えた値とし，その値を返す。
・検索の指定が 0 の場合の条件：式の値と一致する値を検索する。
照合一致 ( 式, セル ・検索の指定が 1 の場合の条件：式の値以下の最大値を検索する。このとき，
範囲 , 検索の指定 )
セル範囲は左端又は上端から順に昇順に整列されている必要がある。
・検索の指定が －1 の場合の条件：式の値以上の最小値を検索する。このとき，セル範囲は左端又は上端から順に降順に整列されている必要がある。
［例］照合一致 ( 15 , B2 ～ B12 ,－1 ) は，セル範囲 B2 ～ B12 をセル B2，B3，…
と探す。このとき，15 以上の最小値をセルB9 で最初に見つけたとすると，セル B2 から数えた値 8 を返す。
行数及び列数が共に同じ検索のセル範囲と合計のセル範囲に対して，検索と合計を行う。検索のセル範囲に含まれるセルのうち，検索条件の記述で指定される条件を満たすセルを全て探す。検索条件の記述を満たした各セルについての左上端からの位置と，合計のセル範囲中で同じ位置にある各セルの値を合計して返す。
検索条件の記述は比較演算子と式の組で記述し，検索のセル範囲に含まれる各セルと式の値を，指定した比較演算子によって評価する。
条件付合計 ( 検索［例1］条件付合計 ( A1 ～ B8 , ＞ E1 , C2 ～ D9 ) は，検索のセル範囲である A1 ～のセ ル 範囲, 検索
B8 のうち，セル E1 の値より大きな値をもつ全てのセルを探す。このと条件の記述, 合計
A2，B4，B7 が見つかったとすると，合計のセル範囲である
き，セルのセル範囲１) )C2 ～ D9 の左上端からの位置が同じであるセル C3，D5，D8 の値を合計して返す。
［例2］条件付合計 ( A1 ～ B8 , ＝ 160 , C2 ～ D9 ) は，検索のセル範囲である A1～ B8 のうち，160 と一致する値をもつ全てのセルを探す。このとき，セル A2，B4，B7 が見つかったとすると，合計のセル範囲である C2 ～ D9の左上端からの位置が同じであるセル C3，D5，D8 の値を合計して返す。
注１) 引数として渡したセル範囲の中で，数値以外の値は処理の対象としない。
２)
引数として渡すことができる式の個数は，1 以上である。
7.

マクロ
(1)

ワークシートとマクロ
ワークシートには複数のマクロを格納することができる。
マクロは一意のマクロ名を付けて宣言する。マクロの実行は，表計算ソフトのマクロの実行機能を使って行う。
［例］○マクロ：Pro
例は，マクロ Pro の宣言である。
(2)

変数とセル変数
変数の型には，数値型，文字列型及び論理型があり，変数は宣言することで使用できる。変数名にセル番地を使用することはできない。
［例］○数値型：row, col
例は，数値型の変数 row，col の宣言である。
セルを変数として使用でき，これをセル変数という。セル変数は，宣言せずに使用できる。

－ 19 －
Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

セル変数の表現方法には，絶対表現と相対表現とがある。
セル変数の絶対表現は，セル番地で表す。
セル変数の相対表現は，次の書式で表す。
書式

解説
セル変数で指定したセルを基準のセルとする。そのセルの行番号と列番号の相対(セル変数 , 行
位置を 0 とし，下又は右方向を正として数え，行の位置と列の位置で指定したの位置 , 列の位置)
数と一致する場所にあるセルを表す変数である。
［例1］相対(B5, 2, 3) は，セル E7 を表す変数である。
［例2］相対(B5, －2, －1) は，セル A3 を表す変数である。
(3)

配列
数値型，文字列型又は論理型の配列は宣言することで使用できる。添字を“[ ”及び“ ]”で囲み，添字が複数ある場合はコンマで区切る。添字は 0 から始まる。
なお，数値型及び文字列型の変数及び配列の要素には，空値を格納することができる。
［例］○文字列型：table[100, 200]
例は， 100 × 200 個 の文字列型の要素をもつ 2 次元配列 table の宣言である。
(4)

宣言，注釈及び処理
宣言，注釈及び処理の記述は，“共通に使用される擬似言語の記述形式”に従う。
処理の記述中に式又は関数を使用する場合，その記述中に変数，セル変数又は配列の要素が使用できる。
［例］○数値型：row■

row：0, row ＜ 5, 1・相対(B5, row, 0)←

順位(相対(C5, row, 0), G5～G9, 0)■
例は，セル C5，C6，…，C9 の各値に対して， セル範囲 G5 ～ G9 の中での順位を調べ，その順位をセル B5，B6，…，B9 に順に代入する。

－ 20 －
Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2011

Ver 2.1：平成 23 年 10 月 26 日

■試験で使用する情報技術に関する用語・プログラム言語など■〒113-8663 東京都文京区本駒込 2-28-8
文京グリーンコートセンターオフィス 15 階TEL 03-5978-7600（代表）
FAX 03-5978-7610

詳しくは･･･

http://www.jitec.ipa.go.jp