JPS61283929A - コピ−ライト表示保護方式 - Google Patents
コピ−ライト表示保護方式Info
- Publication number
- JPS61283929A JPS61283929A JP60125511A JP12551185A JPS61283929A JP S61283929 A JPS61283929 A JP S61283929A JP 60125511 A JP60125511 A JP 60125511A JP 12551185 A JP12551185 A JP 12551185A JP S61283929 A JPS61283929 A JP S61283929A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- program
- company name
- macro
- copyright protection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔概要〕
社名及びチェック文字をパラメータとして持つコピーラ
イト保護用マクロ命令を新たに準備し、コピーライト保
護用マクロ命令を、コンパイラにより社名からチェック
文字を作成し当該作成されたチェック文字と上記コピー
ライト保護用マクロ命令で指定されたチェック文字とが
一致した時に正しい番地に分岐する処理を行うための命
令列に展開するコピーライト表示保護方式である。
イト保護用マクロ命令を新たに準備し、コピーライト保
護用マクロ命令を、コンパイラにより社名からチェック
文字を作成し当該作成されたチェック文字と上記コピー
ライト保護用マクロ命令で指定されたチェック文字とが
一致した時に正しい番地に分岐する処理を行うための命
令列に展開するコピーライト表示保護方式である。
本発明は、ロードモジュールの会社名を変更すると、上
記ロードモジュール内の所望のプログラムが実行出来な
いようになったロードモジュールを簡単に作成するため
のコピーライト表示保護方式に関するものである。
記ロードモジュール内の所望のプログラムが実行出来な
いようになったロードモジュールを簡単に作成するため
のコピーライト表示保護方式に関するものである。
プログラムには、プログラム名や会社名、作成年月日等
が記入されている。プログラムを他人に貸すと、その他
人がプログラムの会社名を自分の名前に変え、そのプロ
グラムを販売する場合があるが、このような行為を禁止
することは非常に困難である。
が記入されている。プログラムを他人に貸すと、その他
人がプログラムの会社名を自分の名前に変え、そのプロ
グラムを販売する場合があるが、このような行為を禁止
することは非常に困難である。
本発明は、上記の考察に基づくものであって、プログラ
ムの中の社名を変更すると当該プログラムを使用して所
望の処理を実行出来ないようになったプログラムを簡単
に作成できるようにすることを目的としている。
ムの中の社名を変更すると当該プログラムを使用して所
望の処理を実行出来ないようになったプログラムを簡単
に作成できるようにすることを目的としている。
そしてそのため本発明のコピーライト表示保護方式は、
少なくとも社名及びチェック文字をパラメータとして持
つコピーライト保護用マクロ命令が記入されたプログラ
ムをコンパイラに入力し、該コンパイラによって、上記
コピーライト保護用マクロ命令を、社名等よりチェック
文字を作成してレジスタに格納するための機械語命令列
、上記コピーライト保護用マクロ命令で指定されたチェ
ック文字と上記レジスタに格納されたチェック文字との
排他論理和を取るための命令列及び該命令列の実行によ
り生成された排他論理和結果と条件付分岐命令の命令コ
ードとの論理和を取りその結果に従って処理を行う実行
命令を持つプログラムに展開することを特徴とするもの
である。
少なくとも社名及びチェック文字をパラメータとして持
つコピーライト保護用マクロ命令が記入されたプログラ
ムをコンパイラに入力し、該コンパイラによって、上記
コピーライト保護用マクロ命令を、社名等よりチェック
文字を作成してレジスタに格納するための機械語命令列
、上記コピーライト保護用マクロ命令で指定されたチェ
ック文字と上記レジスタに格納されたチェック文字との
排他論理和を取るための命令列及び該命令列の実行によ
り生成された排他論理和結果と条件付分岐命令の命令コ
ードとの論理和を取りその結果に従って処理を行う実行
命令を持つプログラムに展開することを特徴とするもの
である。
以下、本発明を図面を参照しつつ説明する。本発明では
、コピーライト保護用マクロ命令を使用する。コピーラ
イト保護用マクロ命令は、パラメータとして、プログラ
ム名や会社名、作成年月日、チェク文字等を持つ。コピ
ーライト保護用マクロ命令に付加されるチェック文字は
、プログラム作成者が社名に基づいて作成する。第1図
はチェック文字作成の手順を示すものである。
、コピーライト保護用マクロ命令を使用する。コピーラ
イト保護用マクロ命令は、パラメータとして、プログラ
ム名や会社名、作成年月日、チェク文字等を持つ。コピ
ーライト保護用マクロ命令に付加されるチェック文字は
、プログラム作成者が社名に基づいて作成する。第1図
はチェック文字作成の手順を示すものである。
■ 会社名はFUJITSUである。
■ EBCIDICコードで表現すると図示のようにな
る。
る。
■ 全ての文字からマCO’Xを引く。
■ ■の処理で得られた数値に対して数をかける。図示
の例では、1文字目に1,2文字目に3.3文字目に5
,4文字目に7.・・・7文字目に13をかけている。
の例では、1文字目に1,2文字目に3.3文字目に5
,4文字目に7.・・・7文字目に13をかけている。
掛算の結果を全て加算する。
■ ■の結果を255で割算すると、余りは144とな
る。144を16進数で表現すると、X”90’となる
。これがチェック文字である。
る。144を16進数で表現すると、X”90’となる
。これがチェック文字である。
第2図はコピーライト保護用マクロ命令によって行われ
る処理を示す図である。マクロでの処理は下記のとおり
である。
る処理を示す図である。マクロでの処理は下記のとおり
である。
■ プログラムの中のコピーライト保護用マクロ命令に
より与えられた文字(社名等)及びチェック文字を定義
する。
より与えられた文字(社名等)及びチェック文字を定義
する。
■ 社名等よりチェック文字を作成し、レジスタへ格納
する。
する。
■ コピーライト保護用マクロ命令で指定された゛
チェック文字と■の実行により求めたチェック文字との
排他論理和を取る。
チェック文字と■の実行により求めたチェック文字との
排他論理和を取る。
■ EX命令(EXECUTE命令)により、命令コー
ド90774マ(条件付分岐命令)と排他論理和を取っ
た値(■の結果)との論理和を取り、実行する。
ド90774マ(条件付分岐命令)と排他論理和を取っ
た値(■の結果)との論理和を取り、実行する。
次に、コピーライト保護用マクロ命令による処理を詳細
に説明する。なお、社名はFUJITSUとし、チェッ
ク文字は’90’ Xとする。プログラムが実行され、
定義されている社名よりチェック文字を作成し、これを
レジスタ6に格納する。この場合、マ90マXがレジス
タ6に格納される。定義されたチェック文字とプログラ
ム実行により作成されたチェック文字との排他論理和演
算を行う。
に説明する。なお、社名はFUJITSUとし、チェッ
ク文字は’90’ Xとする。プログラムが実行され、
定義されている社名よりチェック文字を作成し、これを
レジスタ6に格納する。この場合、マ90マXがレジス
タ6に格納される。定義されたチェック文字とプログラ
ム実行により作成されたチェック文字との排他論理和演
算を行う。
結果 oooooooo 条件コードO排他論
理和命令を実行した場合には条件コードがセットされる
。結果が0の場合の条件コードは0、結果が0以外の場
合の条件コードは1となる。コピーライト保護マクロ命
令を展開して得られる命、今月により予め定義された文
字マ0774’Xと排他論理和の結果とがEX命令によ
り論理和が取られ、実行、される。
理和命令を実行した場合には条件コードがセットされる
。結果が0の場合の条件コードは0、結果が0以外の場
合の条件コードは1となる。コピーライト保護マクロ命
令を展開して得られる命、今月により予め定義された文
字マ0774’Xと排他論理和の結果とがEX命令によ
り論理和が取られ、実行、される。
この結果の値は条件付分岐命令の命令コードであり、条
件コードが0以外の場合はレジスタ4へ分岐する。しか
し、この場合は条件コードが0であるので分岐せず、コ
ピーライト保護用マクロ命令を展開して得られる命令列
の次の命令を実行する。
件コードが0以外の場合はレジスタ4へ分岐する。しか
し、この場合は条件コードが0であるので分岐せず、コ
ピーライト保護用マクロ命令を展開して得られる命令列
の次の命令を実行する。
ここでコピーライト保護用マクロ命令に対応する命令列
の全てが終了し、本来のプログラムの処理が開始される
。
の全てが終了し、本来のプログラムの処理が開始される
。
プログラムの社名が’PFFFFFマとされた時にはプ
ログラムにより作成されるチェック文字はマD8マXと
なり、マD8マXがレジスタ6にセットされる。
ログラムにより作成されるチェック文字はマD8マXと
なり、マD8マXがレジスタ6にセットされる。
結果 01001000 条件コード1077に
の場合は排他論理和実行時の条件コードが1のため分岐
が起こり、レジスタ12で示すアドレスへ分岐する。レ
ジスタ12の値は不明であり、このままプログラムが実
行されると異常終了となる。
が起こり、レジスタ12で示すアドレスへ分岐する。レ
ジスタ12の値は不明であり、このままプログラムが実
行されると異常終了となる。
第3図はコピーライト保護用マクロ命令のコーディング
例を示す図である。図において、MACはコピーライト
保護用マクロ命令であることを示すコート、&PGMは
プログラム名、&LTDは会社名、&VYは作成部、&
XXはチェック文字をそれぞれ示している。
例を示す図である。図において、MACはコピーライト
保護用マクロ命令であることを示すコート、&PGMは
プログラム名、&LTDは会社名、&VYは作成部、&
XXはチェック文字をそれぞれ示している。
第4図は本発明を実施するための装置の1例を示す図で
ある。第4図において、1はソースプログラム、2はコ
ンパイラ、3はマクロ・ライブラリ、4はマクロ定義体
、5はオブジェクト・モジュールをそれぞれ示している
。ソースプログラム1は例えばSPL言語(SYSTE
M PIIOGRAMMING LANGIIAGE)
で書かれている。上述のようなパラメータを持つコピー
ライト保護用マクロ命令は例えばソースプログラム1の
先頭に記入されている。ソースプログラム1はコンパイ
ラ2に入力され、コンパイラ2によりオブジェクト・モ
ジュール5に変換される。コンパイラ2は、コピーライ
ト保護用マクロ命令を展開する場合、マクロライブラリ
3の中の該当するマクロ定義体4を探し、これに基づい
てコピーライト保護用マクロ命令を展開する。
ある。第4図において、1はソースプログラム、2はコ
ンパイラ、3はマクロ・ライブラリ、4はマクロ定義体
、5はオブジェクト・モジュールをそれぞれ示している
。ソースプログラム1は例えばSPL言語(SYSTE
M PIIOGRAMMING LANGIIAGE)
で書かれている。上述のようなパラメータを持つコピー
ライト保護用マクロ命令は例えばソースプログラム1の
先頭に記入されている。ソースプログラム1はコンパイ
ラ2に入力され、コンパイラ2によりオブジェクト・モ
ジュール5に変換される。コンパイラ2は、コピーライ
ト保護用マクロ命令を展開する場合、マクロライブラリ
3の中の該当するマクロ定義体4を探し、これに基づい
てコピーライト保護用マクロ命令を展開する。
以上の説明から明らかなように、本発明によれば、社名
等の変更が行われた時にプログラム・チェックが発生し
、正常に動作しないようになるプログラムを簡単に作成
することが出来る。なお、上述の説明では、チェック文
字を社名より作成するものとしているが、社名とプログ
ラム名を結合したもの又は社名とプログラム名と作成年
月日とを結合したもの等から作成しても良いことは当然
である。
等の変更が行われた時にプログラム・チェックが発生し
、正常に動作しないようになるプログラムを簡単に作成
することが出来る。なお、上述の説明では、チェック文
字を社名より作成するものとしているが、社名とプログ
ラム名を結合したもの又は社名とプログラム名と作成年
月日とを結合したもの等から作成しても良いことは当然
である。
第1図はチェック文字作成の手順を示す図、第2図はコ
ピーライト保護用マクロ命令によって行ねれる処理を示
す図、第3図はコピーライト保護用マクロ命令のコーデ
ィング例を示す図、第4図は本発明を実施するための装
置の1例を示す図である。 1・・・ソースプログラム、2・・・コンパイラ、3・
・・マクロライブラリ、4・・・マクロて定義体、5・
・・オブジェクト・モジュール。
ピーライト保護用マクロ命令によって行ねれる処理を示
す図、第3図はコピーライト保護用マクロ命令のコーデ
ィング例を示す図、第4図は本発明を実施するための装
置の1例を示す図である。 1・・・ソースプログラム、2・・・コンパイラ、3・
・・マクロライブラリ、4・・・マクロて定義体、5・
・・オブジェクト・モジュール。
Claims (1)
- 少なくとも社名及びチェック文字をパラメータとして持
つコピーライト保護用マクロ命令が記入されたプログラ
ムをコンパイラに入力し、該コンパイラによって上記コ
ピーライト保護用マクロ命令を、社名等よりチェック文
字を作成してレジスタに格納するための機械語命令列、
上記コピーライト保護用マクロ命令で指定されたチェッ
ク文字と上記レジスタに格納されたチェック文字との排
他論理和を取るための命令列及び該命令列の実行により
生成された排他論理和結果と条件付分岐命令の命令コー
ドとの論理和を取りその結果に従って処理を行う実行命
令を持つプログラムに展開することを特徴とするコピー
ライト表示保護方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60125511A JPS61283929A (ja) | 1985-06-10 | 1985-06-10 | コピ−ライト表示保護方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60125511A JPS61283929A (ja) | 1985-06-10 | 1985-06-10 | コピ−ライト表示保護方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS61283929A true JPS61283929A (ja) | 1986-12-13 |
Family
ID=14911941
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60125511A Pending JPS61283929A (ja) | 1985-06-10 | 1985-06-10 | コピ−ライト表示保護方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS61283929A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002048869A1 (fr) * | 2000-12-11 | 2002-06-20 | Ntt Docomo, Inc. | Terminal et repetiteur |
-
1985
- 1985-06-10 JP JP60125511A patent/JPS61283929A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002048869A1 (fr) * | 2000-12-11 | 2002-06-20 | Ntt Docomo, Inc. | Terminal et repetiteur |
AU2002221117B2 (en) * | 2000-12-11 | 2004-07-01 | Ntt Docomo, Inc. | Terminal and repeater |
US7478136B2 (en) | 2000-12-11 | 2009-01-13 | Ntt Docomo, Inc. | Terminal and repeater |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR950001531A (ko) | 문자열 복사 방법 | |
JPS6250934A (ja) | 処理装置の割込制御方式 | |
JPS61283929A (ja) | コピ−ライト表示保護方式 | |
JPS58200349A (ja) | マイクロプログラム制御装置 | |
JPS61147336A (ja) | ロ−ドモジユ−ルの世代管理方式 | |
JP2843844B2 (ja) | 並列演算処理装置 | |
JP2827724B2 (ja) | プログラムデバッグ処理方法 | |
JPS6220032A (ja) | 情報処理装置 | |
JPH03266029A (ja) | 論理型言語処理システムにおけるリスト出力方法 | |
JPH02148221A (ja) | マイクロ制御装置 | |
JPS6143347A (ja) | ベクトル命令シミユレ−シヨン方法 | |
JPH11184680A (ja) | ファイル編集方法及びこれを用いたプログラム開発方法及び装置並びに記憶媒体 | |
JPS61161547A (ja) | プロロ−グマシン | |
JPS63163543A (ja) | 情報処理装置 | |
JPH02205930A (ja) | インタフェースチェック処理方法 | |
JPH05181671A (ja) | ソフトウェア命令のエミュレーション方式 | |
JPH04342067A (ja) | ベクトル演算装置 | |
JPH0212528A (ja) | 手続き副プログラム展開方式 | |
JPH0658632B2 (ja) | デ−タ処理装置 | |
JPH06119203A (ja) | デバック行削除装置 | |
JPH07334356A (ja) | ソフトウェアの開発過程記述支援方法および装置 | |
JPS5952348A (ja) | マイクロプログラム制御装置 | |
JPH0559451B2 (ja) | ||
JPH02275538A (ja) | デバッグ処理方式 | |
JPH08202538A (ja) | プログラム作成装置 |