JPH0497426A - List output system for language processing program - Google Patents

List output system for language processing program

Info

Publication number
JPH0497426A
JPH0497426A JP2215539A JP21553990A JPH0497426A JP H0497426 A JPH0497426 A JP H0497426A JP 2215539 A JP2215539 A JP 2215539A JP 21553990 A JP21553990 A JP 21553990A JP H0497426 A JPH0497426 A JP H0497426A
Authority
JP
Japan
Prior art keywords
routine
line
called
list
language processing
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
Application number
JP2215539A
Other languages
Japanese (ja)
Inventor
Kenji Matsui
松井 研司
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2215539A priority Critical patent/JPH0497426A/en
Publication of JPH0497426A publication Critical patent/JPH0497426A/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

PURPOSE:To shorten the discrimination time of a called routine and to improve developing efficiency by outputting the line number of a line calling the routine to the final line position of the called routine. CONSTITUTION:This list output system includes the 1st registering means for registering the name of a routine to be called and the line number of a calling line based upon the analytical result of the line calling the routine, the 2nd registering means for registering the leading and final lines of the routine, a deciding means for deciding the final line of the routine to be called, and a list output means for outputting the line number of the line calling the routine to the final line position of the routine to be called as a list based upon the contents of the 1st and 2nd registering means and the deciding means. In the above constitution, the line number of the line calling the routine is outputted to the final line position of the routine to be called. Consequently, time required for discriminating a calling routine and a called routine can be shortened and the developing efficiency can be improved.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、言語処理プログラムのリスト出力方式に関す
る。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a list output method for a language processing program.

く7 〔従来技術〕 第4図に示すように、一般的な言語処理プロクラム42
は、ソース・ファイル41を入力し、機械命令を含むオ
ブジェクト・ファイル43、ソース・ファイル内容を含
むリスト・ファイル44を出力するようになっている。
7 [Prior art] As shown in FIG. 4, a general language processing program 42
inputs a source file 41 and outputs an object file 43 containing machine instructions and a list file 44 containing the contents of the source file.

この言語処理プロクラムの走行するホストマシン51は
、第5図のフロック図に示すように、ユーザの入力する
言語処理プロクラムの操作指示コマンドを受付け、処理
結果を表示する入出力装置52、言語処理を行う演算装
置53、およびソース・ファイノ呟 リスト・ファイル
等を格納する外部記憶装置54をもっている。
As shown in the block diagram of FIG. 5, the host machine 51 on which this language processing program runs accepts operation instruction commands for the language processing program input by the user, has an input/output device 52 that displays processing results, and an input/output device 52 that displays the processing results. It has an arithmetic unit 53 for performing processing, and an external storage device 54 for storing source file list files and the like.

以下、言語処理プログラムとしてアセンブラを例にして
説明する。
In the following, an assembler will be explained as an example of a language processing program.

アセンブラではアセンブラ・ソースの文法に従ってアセ
ンブラ・ソース・ファイル中に記述できるものとして、
機械命令およびレジスタ、アセンブラの動作を指示する
疑似命令、ユーザ定義ラベルナトがある。ルーチンのコ
ールに関し、次頁の第1表に示す文法があるものとする
In an assembler, things that can be written in an assembler source file according to the assembler source syntax are:
There are machine instructions and registers, pseudo-instructions that direct assembler operations, and user-defined labels. Assume that the routine call has the syntax shown in Table 1 on the next page.

アセンブラの各処理部は、第6図に示すように、アセン
ブラ起動時に指定されたファイル名およびサブコマンド
の解析処理を行う起勤行解折部61、入力ファイルを入
力するファイル入力部62、ソース・ファイルの構文を
文法に従って解析し、機械命令に変換する本体部63、
本体部に基づきファイルを出力するファイル圧力部64
および終了処理部65より構成される。
As shown in FIG. 6, each processing section of the assembler includes a starting line analysis section 61 that analyzes the file name and subcommand specified when starting the assembler, a file input section 62 that inputs an input file, and a source file input section 62 that inputs an input file. a main unit 63 that parses the syntax of the file according to the grammar and converts it into machine instructions;
File pressure section 64 that outputs a file based on the main body section
and a termination processing section 65.

この本体部63の処理のうちリスト出力に関する処理と
して、従来のアセンブラの処理は、第7図のフロー図の
ように示される。はじめに、ステップ11でソース・フ
ァイルの1行を読込み、ステップ12で最終行を判定し
、最終行でない場合、ステップ13〜15でその行内容
を解析し、次の1行を読込む(ステップ11)。
Among the processes of the main body section 63, the processes of a conventional assembler related to list output are shown in the flowchart of FIG. First, one line of the source file is read in step 11, the last line is determined in step 12, and if it is not the last line, the contents of that line are analyzed in steps 13 to 15, and the next line is read (step 11 ).

MOVE ADD ADD AV 数値 AV、AW AV、数値 第 表 ける。MOVE ADD ADD A.V. numerical value AV, AW AV, numerical value No. table Let's go.

数値を、 レジスタAWに格納する。numbers, Store in register AW.

する。do.

レジスタAWの内容を2倍する。Double the contents of register AW.

数値とレジスタAWの内容を加算 する。Add the numerical value and the contents of register AW do.

を移す。move.

これを繰返し実行し、最終行になった場合、ステップ1
6でソース・ファイルで指定されるロケーションアドレ
スにオブジェクトを生成するオブジェクト情報の生成に
移る。その後、ロケーションアドレス情報、オブジェク
ト情報、行番号およびソース・ファイルの内容を処理結
果のリスト情報として、ステップ18でリスト出力する
Repeat this and if you get to the last line, step 1
In step 6, the process moves to generation of object information to generate an object at the location address specified in the source file. Thereafter, in step 18, the location address information, object information, line number, and source file contents are output as a list of processing results.

例えは、第1表の文法に従った第2表のソース・ファイ
ルの場合、第3表のようなリスト情報を出力していた。
For example, in the case of the source file in Table 2 that follows the grammar in Table 1, list information as shown in Table 3 would be output.

第2表 行番号        ソース・プログラム1    
             MOVE2       
         CALL3           
    0ALL4                
 J UMP5      5ubl: 8      5ub2: ADD RETURN ADD RETURN AW、  1 ubl ub2 $ AW、AW AW、10 第3表 ロケーシヨン Ly上l−一   オブジェク)fxJL!jj−ソ 
 −  ス     00000   B80100 
 1       MOVE  AW、10003  
  E80500   2        CALL 
 5ub10006    E80500   3  
      CALL  5ub20009   EB
FE    4      JUMP  5000B 
           5   5ubl:000B 
  03CO6ADD  AW、AWoooD    
C37RETURN oooE           8   5ub2゜0
00E   050AO09ADD  AW、1000
11    C310RETURN〔発明が解決しよう
とする課題〕 上述した従来のりスト出力方式では、ロケーションアド
レス情報、オブジェクト情報、行番号およびソース・フ
ァイルの内容の4を表示していた。従って、このリスト
出方方式では、ソース・ファイルのデイバグにおいて、
ルーチンの処理の流れをたどりながらデイバグする際、
あるルーチンが別のルーチンからコールされている場合
に、コールされたルーチンの最終行にきたとき、このル
ーチンかとのルーチンに戻るのかわからない。
2nd table row number Source program 1
MOVE2
CALL3
0ALL4
J UMP5 5ubl: 8 5ub2: ADD RETURN ADD RETURN AW, 1 ubl ub2 $ AW, AW AW, 10 Table 3 Location Ly upper l-1 Object) fxJL! jj-so
- Su 00000 B80100
1 MOVE AW, 10003
E80500 2 CALL
5ub10006 E80500 3
CALL 5ub20009 EB
FE 4 JUMP 5000B
5 5ubl:000B
03CO6ADD AW, AWoooD
C37RETURN oooE 8 5ub2゜0
00E 050AO09ADD AW, 1000
11 C310 RETURN [Problem to be Solved by the Invention] In the above-described conventional list output method, location address information, object information, line numbers, and source file contents 4 are displayed. Therefore, with this list output method, when debugging a source file,
When debugging while following the flow of routine processing,
When a routine is called from another routine, when the last line of the called routine is reached, it is unclear whether to return to this routine or the other routine.

従って、このルーチンがどのルーチンからコールされて
いるのかを覚えておくか、あるルーチンから別なルーチ
ンに制御が移るたびに、コールされたルーチンに対しこ
のルーチンをコールしたルーチン名または行番号等を随
時リスト中に書き込んでいた。よって、ルーチンの数が
多い場合やルーチンをコールする回数が多い場合、ある
ルチンがどのルーチンからコールされているのかの判別
に多くの時間がかかり、開発効率が低下するという問題
点があった。
Therefore, it is necessary to remember which routine is calling this routine, or to inform the called routine of the routine name or line number that called this routine every time control is transferred from one routine to another. I wrote it in the list. Therefore, when there are a large number of routines or when a routine is called many times, it takes a lot of time to determine from which routine a certain routine is called, resulting in a problem in that development efficiency decreases.

本発明の目的は、このような問題を解決し、コールされ
るルーチンのリスト出力において、コールされるルーチ
ンの最終行位置に、このルーチンをコールする行の行番
号を出力することにより、コールされたルーチンの判別
時間を短縮し、開発効率を向上させた言語処理プロクラ
ムのリスト出力方式を提供することにある。
An object of the present invention is to solve this problem by outputting the line number of the line that calls this routine at the last line position of the called routine in the output of the list of called routines. An object of the present invention is to provide a method for outputting a list of language processing programs, which reduces the time required to determine routines and improves development efficiency.

〔課題を解決するための手段〕[Means to solve the problem]

本発明の構成は、複数のルーチンからなる言語処理ソー
ス・ファイルを入力して、ニーすの記述したソース・フ
ァイルの言語処理結果の情報をリスト出力する言語処理
プログラムのリスト出力方式において、ルーチンをコー
ルする行の解析結果に基うぎコールされるルーチン名と
コールする行の行番号を登録する第1の登録手段と、前
記ルチンの先頭行および最終行を登録する第2の登録手
段と、前記コールされるルーチンの最終行を判断する判
断手段と、前記第1.第2の登録手段おまひ前記判断手
段に基づき、前記コールされるルーチンの最終行位置に
、このルーチンをコールする行の行番号をリスト出力す
るリスト出力手段とを有することを特徴とする。
The configuration of the present invention is to input a language processing source file consisting of a plurality of routines, and output routines in a list output method of a language processing program that outputs information on the language processing results of the source file written by Nice as a list. a first registration means for registering a called routine name and a line number of the called line based on an analysis result of the calling line; a second registration means for registering the first line and last line of the routine; determining means for determining the last line of the routine to be called; The second registration means is characterized by comprising a list output means for outputting a list of line numbers of lines that call this routine at the last line position of the called routine based on the judgment means.

〔実施例〕〔Example〕

次に本発明を図面により詳細に説明する。本実施例は、
言語処理プログラムとしてアセンブラを用い、ソース・
ファイル中の各ルーチン中でJUMP命令を用いて制御
順序を変えることにより、RETURN命令の後ろにル
ーチンの実体を記述することはしないものとする。
Next, the present invention will be explained in detail with reference to the drawings. In this example,
Using an assembler as a language processing program, the source
By changing the control order using the JUMP instruction in each routine in the file, the entity of the routine is not written after the RETURN instruction.

第1図は本発明の一実施例のブロクラムの処理のフロー
図、第2図は第1図の処理を第2表のソース・ファイル
に適用した処理のフロー図に示す。
FIG. 1 is a flowchart of processing of a block diagram according to an embodiment of the present invention, and FIG. 2 is a flowchart of processing in which the processing of FIG. 1 is applied to the source files shown in Table 2.

アセンブラの各処理部は、第6図に示すようにアセンブ
ラ起動時に指定されたファイル名およびサフコマンドの
解析処理を行う起勤行解折部41、入力ファイルを入力
するファイル入力部42、ソース・ファイルの構文を文
法に従って解析し、機械命令に変換する本体部43、本
体部に基つきファイルを生成するファイル出力部44お
よび終了処理部45より構成される。
As shown in FIG. 6, each processing section of the assembler includes a start line analysis section 41 that analyzes the file name and subcommand specified when starting the assembler, a file input section 42 that inputs an input file, and a source file input section 42 that inputs an input file. The main unit 43 parses the syntax of the text according to the grammar and converts it into machine instructions, a file output unit 44 generates a file based on the main unit, and an end processing unit 45.

この本体部の処理のうちリスト出力に関する処理として
、まずステップ11でソース・ファイルの1行を読込み
、ステップ12で最終行か否か判定し、最終行でない場
合、ステップ13でその行がルーチンをコールする行で
あればコールされるルーチン名とコールする行の行番号
を登録し、ステップ14でルーチンの先頭行および最終
行であれはその行の登録を行う。その後、ステップ15
て行内容を解析し、ステップ11に戻り次の1行を読込
む。
Among the processing of this main body, the processing related to list output first reads one line of the source file in step 11, determines whether it is the last line in step 12, and if it is not the last line, in step 13 that line calls a routine. If the line is to be called, the name of the routine to be called and the line number of the line to be called are registered, and in step 14, if it is the first line or last line of the routine, that line is registered. Then step 15
The line contents are analyzed and the process returns to step 11 to read the next line.

これを繰返して最終行になった場合、ステップ16でオ
フシェクト情報の生成を行う。その後、ステップJ7で
コールされるルーチンがあるか否かを判断、し、コール
されるルーチンがある場合、ステップ19でコールされ
るルーチンの最終行を判断し、ステップ20てコールさ
れるルーチンの最終行位置にこのルーチンをコールする
行の行番号の出力する。また、コールされるルーチンが
なくなれば、ステップ18てリスト圧力を行う。
If this is repeated and the last row is reached, offset information is generated in step 16. Then, in step J7, it is determined whether there is a routine to be called. If there is a routine to be called, the last line of the routine to be called is determined in step 19, and in step 20, the last line of the routine to be called is determined. Prints the line number of the line that calls this routine at the line position. Furthermore, if there are no more routines to be called, a list pressure is performed in step 18.

この本体部の処理のうちリスト出力に関する処理として
は、第2図のフロー図に示すように行われる。
Among the processes of this main body, the processes related to list output are performed as shown in the flowchart of FIG.

まず、ステップ11でソース・ファイルの1行を読込み
、ステップ12で最終行でないと判定した場合、ステッ
プ21でその行がCALL命令であるかを判定する。こ
れがCALL命令である場合、ステップ22でCALL
命令に記述されているラベル名と現在の行番号をコール
テーブルに登録する。これにより、コールされるルーチ
ン名とコールする行番号がコールテーブルに登録される
First, one line of the source file is read in step 11, and if it is determined in step 12 that it is not the last line, then in step 21 it is determined whether the line is a CALL instruction. If this is a CALL instruction, in step 22 the CALL
Register the label name written in the instruction and the current line number in the call table. As a result, the name of the routine to be called and the line number to be called are registered in the call table.

第2表のソース・プロクラムに対して登録されるコール
テーブルは、第3図(a)のように示される。すなわち
、コールされるルーチンのラベル名31に対してコール
する行番号32が指定されている。その後、ステップ1
5で、行内容の解析を行う。これら処理21.22が、
第1図のステップ13に対応する。
The call table registered for the source program in Table 2 is shown as shown in FIG. 3(a). That is, the line number 32 to be called is specified for the label name 31 of the routine to be called. Then step 1
In step 5, the line contents are analyzed. These processes 21.22 are
This corresponds to step 13 in FIG.

一方、CALL命令でない場合、ステップ23でその行
がラベル疑似命令であるかを判定する。
On the other hand, if it is not a CALL instruction, it is determined in step 23 whether the line is a label pseudo-instruction.

これがラベル疑似命令である場合、ステップ24でラベ
ル名と現在の行番号をラベルテーブルに登録する。これ
によりラベルの記述されている行番号がラベルテーブル
に登録される。
If this is a label pseudo-instruction, the label name and current line number are registered in the label table in step 24. As a result, the line number where the label is written is registered in the label table.

第2表のソース・プログラムに対して登録されるラベル
テーブルは、第3図(b)のように示される。すなわち
、コールされるルーチンのラベル名33に対しそのルー
チンの入口の行番号34が示される。その後、ステップ
15で行内容の解析を行う。
The label table registered for the source program in Table 2 is shown as shown in FIG. 3(b). That is, the line number 34 of the entry of the routine is indicated for the label name 33 of the called routine. Thereafter, in step 15, the line contents are analyzed.

また、ラベル疑似命令でない場合、ステップ25てその
行がRETURN命令であるかを判定する。これがRE
TURN命令である場合、ステップ26で現在の行番号
をリターンテーブルに登録する。これにより、ルーチン
の最終行がリターンテーブルへ登録される。第2表のソ
ース・ブロクラムに対して登録されるリターンテーブル
は、第3図(c)のように示される。すなわち、コール
されるルーチンの最終行の行番号35が示される。
If the line is not a label pseudo-instruction, it is determined in step 25 whether the line is a RETURN instruction. This is RE
If it is a TURN command, the current line number is registered in the return table in step 26. As a result, the last line of the routine is registered in the return table. The return table registered for the source blockrum in Table 2 is shown as shown in FIG. 3(c). That is, line number 35 of the last line of the called routine is shown.

これら処理23〜26が、第1図のステップ14に対応
する。その後、あるいはRETURN命令でない場合、
ステップ15で行内容を解析し、ステップ11に戻り次
の1行を読込む。これを繰り返し、最終行になった場合
、ステップ16でオブジェクト情報の生成を行う。
These processes 23 to 26 correspond to step 14 in FIG. After that, or if it is not a RETURN command,
The line contents are analyzed in step 15, and the process returns to step 11 to read the next line. This is repeated, and when the last line is reached, object information is generated in step 16.

その後ステップ27でコールテーブルに未検索のラベル
名があるか判断する。この処理27が、第1図のステッ
プ17に対応する。ステップ27で未検索のラベル名が
ある場合、ステップ28でコールテーブルのラベル名を
ラベルテーブルから検索し、ラベルテーブルのラベルに
対応する行番号を引き出す。これにより、コールされた
ルーチンの入り口の行番号がわかる。第3図(a)のコ
ールテーブルのラベル名31に対応する行番号32は、
このラベル名31が第3図(b)のラベル名33と一致
するので、その入口行番号34に示す5行目となる。
Thereafter, in step 27, it is determined whether there is an unsearched label name in the call table. This process 27 corresponds to step 17 in FIG. If there is an unsearched label name in step 27, the label table is searched for the label name in the call table in step 28, and the line number corresponding to the label in the label table is extracted. This will tell you the line number of the entry of the called routine. The line number 32 corresponding to the label name 31 of the call table in FIG. 3(a) is
Since this label name 31 matches the label name 33 in FIG. 3(b), it is the fifth line indicated by the entry line number 34.

次に、ステップ28で検索されたラベルの行番号の直後
の行番号を、ステップ29でリターンテーブルから検索
する。これにより、コールされたルーチンの最終行がわ
かる。第3図(b)の行番号34の直後の行番号は、第
3図(c)の最終行の行番号35に示される7行目とな
る。これら処理28.29が、第1図のステップ19に
対応する。
Next, in step 29, the return table is searched for the line number immediately after the line number of the label searched in step 28. This tells you the last line of the called routine. The line number immediately after line number 34 in FIG. 3(b) is the seventh line indicated by line number 35 in the last line of FIG. 3(c). These processes 28 and 29 correspond to step 19 in FIG.

以上よりコールする行番号を第3図(a)の行番号32
に示す2行目とした場合、コー、ルされたルーチンの最
終行は行番号35で示す7行目となる。
From the above, the line number to be called is line number 32 in Figure 3(a).
In the case where the second line shown in , the last line of the called routine is the seventh line shown by line number 35.

次に、ステップ29で検索された行番号すなわちコール
されたルーチンの最終行のリスト位置に、ステップ28
のコールテーブルのラベル名の行番号すなわちルーチン
をコールする行番号をステップ30て出力する。この処
理30が、第1図のステップ20に対応する。ステップ
27でコールチーフルに未検索のラベル名があれは、ス
テップ28で再ひコールテーブルのラベル名をラベルテ
ーブルから検索する。コールテーブルに未検索のラベル
名が無くなれば、ステップ18て処理結果のリスト出力
を行う。
Next, step 28
The line number of the label name of the call table, that is, the line number where the routine is called, is output in step 30. This process 30 corresponds to step 20 in FIG. If there is an unsearched label name in the call table in step 27, the label table is searched again for the label name in the call table in step 28. When there are no unsearched label names in the call table, a list of processing results is output in step 18.

このようにして、本実施例のリスト出力方式では、コー
ルされるルーチンのリストの出力に関し、コールされる
ルーチンの最終行位置に、このルーチンをコールする行
の行番号を、出力することができる。
In this way, in the list output method of this embodiment, regarding the output of the list of called routines, the line number of the line that calls this routine can be output at the last line position of the called routine. .

例えば、第1表の文法に従った第2表のソース・プログ
ラムの場合、第4表のようなリストを出力することがで
きる。
For example, in the case of the source program in Table 2 that follows the grammar in Table 1, a list as shown in Table 4 can be output.

第4表 0000    B80100        1  
        MOVE  AY、10003   
 E80500        2         
CALL  5ub10006    E80500 
      3        CALL  5ub2
0009    EBFE          4  
        JUMP$0008        
       5    5ubl :000B   
 03CO6ADD  AW、AWoooD    ’
C327RETURNoooE           
     8    5ub2:000E    05
0AOO9ADD  AW、100011    C3
310RETURNこ発明の効果〕 以上説明したように、本発明のリスト出力方式を用いた
言語処理プロクラムでは、従来のリスト出力情報に加え
、コールされるルーチンの最終行位置に、このルーチン
をコールする行の行番号を出力することにより、関数を
コールして、あるルーチンから別なルーチンに制御が移
るたびに、コールされたルーチンに対し、このルーチン
をコールしたルーチン名または行番号等を覚えておくか
随時のリスト中に書き込んでおく作業がなくなり、する
ルーチンがどのルーチンからコールされているのかの判
別にかかる時間が短縮され、ソース・プロクラムのティ
バタ効率ひいてはソース・プロクラム作成作業の効率を
向上させるという効果がある。
Table 4 0000 B80100 1
MOVE AY, 10003
E80500 2
CALL 5ub10006 E80500
3 CALL 5ub2
0009 EBFE 4
JUMP$0008
5 5ubl :000B
03CO6ADD AW, AWooooD'
C327RETURNoooE
8 5ub2:000E 05
0AOO9ADD AW, 100011 C3
310 RETURN Effects of the Invention] As explained above, in the language processing program using the list output method of the present invention, in addition to the conventional list output information, the line that calls this routine is added to the last line position of the called routine. By outputting the line number, each time a function is called and control is transferred from one routine to another, the called routine can remember the routine name or line number that called this routine. This eliminates the need to write in the list from time to time, reduces the time required to determine which routine is calling a particular routine, and improves the efficiency of source program creation, as well as the efficiency of source program creation. effective.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の一実施例のリスト出力方式のフロー図
、第2図は第1図の処理をソース・ファイル(第2表)
に適用した場合のフロー図、第3図(a) 、 (b)
 、 (c)は本実施例に用いるコールチーフル、ラベ
ルテーブルおよびリターンテーブルの内容を示す図、第
4図は一般のプロクラムの扱うファイルの構成図、第5
図は第4図のプログラムの走行するホストマシンのブロ
ック図、第6図は第4図のプログラム処理部の構成を示
すブロック図、第7図は従来のリスト出力方式の一例の
フロー図である。 11〜20.21〜30・・・・・・処理ステラフ、3
1゜33・・・・・コールルーチンのラベル名、32・
・・・・・コール行の行番号、34 ・・コールルーチ
ンの入口の行番号、35・・・・・コールルーチンの最
終行の行番号、41・・・ ソース・ファイノペ 42
・・・・・・言語処理ブロクラム、43・・・・・・オ
ブジェクト・ファイル、44・・・・・リスト・ファイ
ル、51・・・・・・ホストマシン、52・・・・・入
出力装置、53・・・・・・演算装置、54・・・・・
外部記憶装置、61・・・・・・起勤行解折部、62・
・・・ファイル入力部、63・・・・・・本体部、64
・・・・ファイル出力部、65・・・・・・終了処理部
。 代理人 弁理士  内 原   晋 /ILノ 第3図 (C) 第4薦 第夕関
Figure 1 is a flowchart of the list output method according to an embodiment of the present invention, and Figure 2 shows the process of Figure 1 in a source file (Table 2).
Flow diagram when applied to Figure 3 (a) and (b)
, (c) is a diagram showing the contents of a call file, a label table, and a return table used in this embodiment, FIG. 4 is a configuration diagram of files handled by a general program, and FIG.
The figure is a block diagram of a host machine on which the program of Figure 4 runs, Figure 6 is a block diagram showing the configuration of the program processing section of Figure 4, and Figure 7 is a flow diagram of an example of a conventional list output method. . 11-20. 21-30... Processing Stellaf, 3
1゜33...Label name of call routine, 32.
...Line number of the call line, 34 ...Line number of the entrance of the call routine, 35 ...Line number of the last line of the call routine, 41... Source file nope 42
... Language processing blockrum, 43 ... Object file, 44 ... List file, 51 ... Host machine, 52 ... Input/output device , 53... Arithmetic device, 54...
External storage device, 61... Commencement and departure department, 62.
... File input section, 63 ... Main body section, 64
. . . File output section, 65 . . . Termination processing section. Agent: Susumu Uchihara, Patent Attorney / IL Figure 3 (C) 4th Recommendation: Yuseki

Claims (1)

【特許請求の範囲】[Claims] 複数のルーチンからなる言語処理ソース・ファイルを入
力して、ユーザの記述したソース・ファイルの言語処理
結果の情報をリスト出力する言語処理プログラムのリス
ト出力方式において、ルーチンをコールする行の解析結
果に基づきコールされるルーチン名とコールする行の行
番号を登録する第1の登録手段と、前記ルーチンの先頭
行および最終行を登録する第2の登録手段と、前記コー
ルされるルーチンの最終行を判断する判断手段と、前記
第1、第2の登録手段および前記判断手段に基づき、前
記コールされるルーチンの最終行位置に、このルーチン
をコールする行の行番号をリスト出力するリスト出力手
段とを有することを特徴とする言語処理プログラムのリ
スト出力方式。
In the list output method of a language processing program that inputs a language processing source file consisting of multiple routines and outputs a list of information on the language processing results of the source file written by the user, the analysis result of the line that calls the routine is a first registration means for registering a name of a called routine and a line number of a called line based on the method; a second registration means for registering a first line and a last line of the routine; and a second registration means for determining the last line of the called routine. and list output means for outputting a list of line numbers of lines that call this routine at the last line position of the called routine based on the first and second registration means and the judgment means. A list output method for a language processing program, characterized in that:
JP2215539A 1990-08-15 1990-08-15 List output system for language processing program Pending JPH0497426A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2215539A JPH0497426A (en) 1990-08-15 1990-08-15 List output system for language processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2215539A JPH0497426A (en) 1990-08-15 1990-08-15 List output system for language processing program

Publications (1)

Publication Number Publication Date
JPH0497426A true JPH0497426A (en) 1992-03-30

Family

ID=16674106

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2215539A Pending JPH0497426A (en) 1990-08-15 1990-08-15 List output system for language processing program

Country Status (1)

Country Link
JP (1) JPH0497426A (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6149245A (en) * 1984-08-17 1986-03-11 Nec Corp Automatic analyzer of program module structure
JPS61134843A (en) * 1984-12-05 1986-06-21 Nec Corp Program structure processing system
JPH0251737A (en) * 1988-08-15 1990-02-21 Nec Corp Display system for symbol defining line of assembler program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6149245A (en) * 1984-08-17 1986-03-11 Nec Corp Automatic analyzer of program module structure
JPS61134843A (en) * 1984-12-05 1986-06-21 Nec Corp Program structure processing system
JPH0251737A (en) * 1988-08-15 1990-02-21 Nec Corp Display system for symbol defining line of assembler program

Similar Documents

Publication Publication Date Title
JPH0497426A (en) List output system for language processing program
JP2731047B2 (en) Program operand check method
JPH04148335A (en) Object outputting system for language processing program
JPH05151030A (en) Information display system at end of user program abnormality
JPH0193826A (en) System for counting dynamic step of high grade language
JP2523606B2 (en) Command processing method
JPH07168743A (en) Information display system in abnormal completion of user program
JPH02249034A (en) Information processor
JP3318254B2 (en) How to decrypt files
JPS6274130A (en) Data generating system for program structure
JPH04291620A (en) Display system for operation method
JPH0575841U (en) Program converter
JPH0423102A (en) Programming device for programmable controller
JPH0495139A (en) Cross reference output system for language processing program
JPH05143351A (en) Source program comparing system
JPS59225449A (en) Sentence number converting system
JPH0259936A (en) Cursor movement processing system
JPH01187635A (en) Analysis system for reduction contention
JPS63228341A (en) Program syntax checking system
JPS62166441A (en) Conversational type interruption information display system
JPH05233259A (en) Error message merging application system
JPH0519833A (en) Numerical controller
JPH03186933A (en) Symbol processing system for language processing system
JPH05113817A (en) Numerical controller
JPH06282424A (en) Automatic generating device for program specifications