Author Archives: Yasuharu Nagura

About Yasuharu Nagura

Born in 1989. Musician. Hideout Records Founder & CEO. Latest albums are『bright & solemn』(2019) and『A Message to Aliens』(2019).

The program is roughly divided into three stages.


[Stage 1] Specification decision stage

 The first step is to define what to program. If this is not well thought out, even if a code change occurs in one place, the other code may have to be rewritten, and eventually all may be rewritten.

[Stage 2] Coding stage

 The stage of writing code according to the specifications. It is also a stage where many programmer qualities are asked. In other words, whether or not a program that performs the same operation is not redundant and it is thought that bugs can be easily found depends greatly on the ability of the programmer.

[Stage 3] Quality confirmation and maintenance stage

 Confirmation of the operation of the completed program and the correction stage accompanying specification changes. Even program development is the most difficult stage. It’s a patience and time-consuming task that needs to prove that the program works correctly under all conditions and doesn’t crash or break the system, so it tries every possible input.

High level language

 A programming language closer to natural language or a programming language that easily expresses human thought is called a high-level language. For example, it is a programming language that can describe almost English, or a programming language that can describe mathematical expressions. The high- level language cannot be executed by the CPU as it is. It is converted into machine language using a compiler, and the CPU executes it. Alternatively, there is a method of interpreting and executing a high-level language using an interpreter without performing the conversion.

Assembly language

  Assembly language is a programming language that describes machine language instructions in a way that is easy for humans to understand (close to English). One line of the program written in assembly language corresponds roughly to one instruction of the opportunity program. A word representing a machine language instruction (integer) is called a mnemonic. The mnemonic depends on the CPU and the assembly language used. For example, the second mock of a machine language instruction to move data is “MOV” (The word “move” from English).

 Since assembly language is not a machine language, a CPU cannot execute a program written in assembly language. A program written in assembly language is converted into a machine language program by an assembler, and the obtained machine language program is executed.

 In assembly language, you can specify each action that the CPU performs. Therefore, it is suitable for creating a program for finely controlling the input / output device.

Machine language

 The only programming language that can be interpreted and executed by the CPU is machine language. A machine language program is a sequence of instructions that represent the operation of one unit of the CPU. Each instruction is represented by an integer for easy and high-speed interpretation / execution by the CPU. When a machine language program is stored in the main storage device (ROM or RAM) in advance and the start address is given to the program counter (: A storage device in the CPU that holds the address where the next instruction to be executed by the CPU is stored), the CPU fetches instructions one by one from the main storage device and executes them.

Types of programming languages

monitor-933392_1920.jpg Since the programming language is artificial, various programming languages ​​can be created according to the application. Many programming languages ​​have been created so far, and some of them are programming languages ​​whose main purpose is to be understood by computers (distant from natural languages) and vice versa. There are languages. Roughly classifying program languages ​​according to how similar to natural language, there are three types: machine language, assembly language, and high-level language.

Language grammar


　In order to communicate using words, it is necessary for the speaker and listener to have common rules about words, and to speak based on those rules and to speak. Otherwise, the listener will not understand what the speaker says. This common rule is called language grammar.

　For example, English has a basic five-sentence rule. In principle, English follows this rule. Words that do not follow this rule have no meaning as part of English, and the meaning is not conveyed to the listener.

　The programming language has the same grammar as the natural language. When a human describes a program according to the grammar and gives the program to the computer, the computer understands the program according to the same grammar and performs the described operation.

　Just as the Japanese and English grammars are different, each different programming language has its own grammar.

Alien civilization

Message To ALLIEN-2.png

Yasuharu Nagura「A Message to Aliens」(2019)

 In the 1960s, American radio astronomer Frank Drake (1930 ~) devised an equation that predicts the number of civilizations that could be intercommunicated within the galaxy.

Each factor of the equation cannot be estimated almost accurately, so when calculated, the result varies greatly from less than 1 to millions, depending on the estimate.

Nevertheless, it is not unreasonable to think that there are at least a few such civilizations in the galaxy.

To calculate the Drake equation, various factors (such as the percentage of stars with planets) need to be estimated.

Next, multiply all the factors.

In the example below, we are using only rather optimistic estimates. (There are also some guesswork).

Percentage of stellar births

A reasonable number of new stars born in the galaxy is 50 per year.

A star with a planet

 Perhaps half of the new stars will have planets.

Habitable planet

 The average number of dwelling planets maybe only 0.4 per planetary system.

Planet with life

 90% of the inhabitable planets will have life.

Intellectual life

 About 10% of newly uttered life may acquire intelligence.

Communicable life

Of intellectual life, at most 10% will develop interstellar communication technology.

Life of civilization

 The average lifespan of civilization will be about 10,000 years. 


 Using the above estimates, the galactic system has an alien civilization that we can communicate with, theoretically about 50 × 0.5 × 0.4 × 0.9 × 0.1 × 0.1 × 10,000 = 900. Expected to be. However, some estimates may be off.


UFO sightings


Yasuharu Nagura – “A Message to Aliens” (2019)

 Unidentified flying objects (UFOs) are reported annually.

 Most of them can be explained by natural phenomena such as bright stars, meteors, aurora, and rare clouds, or artificial objects such as satellites and airplanes.

Even after removing the cause, there are cases where it cannot be explained.

Without much research, dismissing the possibility that a UFO is a sign of a visitor from outside the earth is as much as accepting that idea without considering a more general interpretation.

It will be unscientific.

Difference between a program and software


 The difference between a program and software is that the software is all the intellectual information related to the computer, whereas the program is limited to a representation of the operation procedure of the computer. That is, the program is included in the software. In general, in the case of software, a program representing an operation procedure and data used during the execution of the program are often collectively referred to. For example, the word processor software includes font data as well as programs.

Programming and programming languages


 To make a computer do something meaningful, it is necessary to teach the computer the procedure of the operation. Unfortunately, today’s computers can’t fully understand human language. Therefore, it is not possible to teach the computer the procedure in the language (natural language) that we usually use, such as Japanese and English.

 Therefore, instead of using a natural language, a simple language that can be understood by a computer is artificially created, and an operation procedure is expressed as a language and transmitted to the computer. This artificial language is called a programming language, and a program that expresses an operation procedure as a language of a programming language is called a program. The computer given the program operates according to the described procedure.

When a computer is operated by a program, it is the CPU that actually understands the contents of the program inside the computer and operates accordingly. The CPU is operating according to the contents described as a program. The CPU operates the entire computer by performing calculations according to the contents described as programs and controlling the input/output devices and storage devices.