Assembly language vs. Mechanical language Essay
Assembly language vs. Mechanical language
Assembly language can execute the same commands as machine language; however, the commands have names instead of numbers. Assembly language, unlike machine language, is a symbolic representation of operation codes, symbolic memory addresses and pseudo codes, which makes the virtual environment user friendly. Machine language, on the other hand, is represented as binary bits consisting of a string of 0s and 1s, which makes the virtual world challenging since the lingo is only comprehended primarily by computers. Therefore, assembly language is considered more user friendly than machine language.
Assembly language enables programmers to relate op codes using symbolic names in place of numbers to perform an instruction or input a piece of data. Programmers can inscribe op codes using purposeful words like JUMP, CLEAR, and ADD as an alternative to cryptic binary codes consisting of series of 0s and 1s. An example of assembly language, machine language and its meaning are listed in the book called, “Invitation to Computer Science” (Schneider & Gersting, 2013, pp. 285, fig. 6.5). In figure 6.5, assembly language is clearly easier to comprehend than machine language, which makes assembly language user friendly. In addition, assembly language allows programmers to utilize symbolic addresses to replace numeric memory addresses in binary bits to execute a command or input data. Computer specialist can link symbolic labels to an instruction or piece of data in the program.
In other words, the symbolic label turns into a permanent tag for the instruction or piece of data disregarding where it populates in the program or where it relocates in the memory. However, machine language is more complicated. To perform an instruction or input data in the memory in a specific location, the computer specialist must specify the direct address. For example, “In machine language, to jump to the instruction stored in memory location 18, you must specify directly to address 18 (write JUMP 18 in binary code).
The programming is complicated if a new instruction or data is introduced anywhere within the 18 lines of the program, the jump location 18 shifted to 19. According to Schneider and Gersting, “This makes modifying programs very difficult, and even small changes become big efforts” (2013, pp. 285). Assembly language use symbolic address is proven to be more user friendly than a numeric address for programmers. Moreover, pseudo code allows the programmer to use a special type of assembly language to be converted into op code referred to as pseudo op. Unlike other operation codes, a pseudo –op does not develop a machine language for instructions or data. In order to execute such task, pseudo-op implores the service of the assembler.
One of the many services provided by the assembler is the ability to generate instructions or data into the suitable binary likeness for the system. A brief summary of the conversion is documented in the publication “Invitation to Computer Science” (Schneider & Gersting, 2013, pp. 287). The summary breaks down how the pseudo-op commands the assembler to generate a binary representation for the integer, and so on. If a programmer had to manually construct the conversion, this would prove to be a very cumbersome task. Therefore the application of assembly language pseudo-op makes the task more favorable for the user. Consequently, assembly language symbolic representation of op codes, addresses, and pseudo codes all makes the virtual environmental experience for users more appealing than that of machine language. Assembly language is developed with the human factor in mind and with that, the experience for the programmer is uncomplicated.
Advancement in the virtual world deemed assembly language more appropriate named low-level programming language. Where machine language in the virtual world was once considered primitive, assembly language to, now resides in the same era. In the land of programming, the assembly language created for a specific task or data input must be converted into machine language. The conversion is executed by an assembler. Therefore, low-level programming language, in the same manner, has to convert into machine language the same. More specifically, “Each symbolic assembly language instruction is translated into exactly one binary machine language instruction” (Schneider & Gersting, 2013, pp. 282).
The translation into binary machine language means that instructions or data is represented by a series of 0s and 1s in order for the computer to execute the instruction or store the data information given. Schneider and Gersting said it best when they stated, “…it is the language of the hardware itself” (2013, pp. 282). Since programmers are not hardware the process could prove to very cumbersome for users. The silver lining in this storm is the creation of high-level programming language. Unlike low-level programming language, high-level programming language is more maneuverable by the programmer. High-level programming language is created to use both natural language and mathematical notation.
In other words, Schneider and Gersting states, “A single high-level language instruction is typically translated into many machine language instructions, and the virtual environment created by a high-level language is much more powerful than the one produced by an assembly language” (2013, pp. 282). In short, high-level programming language differs from low-level programming language in that the translation into many machine languages versus translation into one machine language is more powerful. Moreover, high-level programming language is user friendly rather than low-level programming language which is computer friendly.
Since the general idea is making the virtual world friendlier for its users, if Internet did not exist, I would not be so friendly. I access the internet on a daily basis for a variety of tasks like; paying bills, scheduling and canceling appointments, recipes, purchases, banking, and the list could go on and on. However, the most important area of internet use is paying bills. Prior to the internet, paying bill required physically visiting the establishment where the bill is to be paid, purchasing a money order in some cases, writing a check or even more archaic, paying with cash. Somehow, a bill or two slipped through the cracks. Now that the primitive days are over and technology has advanced the human nation, auto pay makes life much easier. The merchants that are due payment for services rendered receive payment automatically and all that is required, is manually setting the date, amount and merchant to be paid. Auto pay is convenient, one less tree is destroyed and gas is saved for another day. Simple as my reasons may be, it works for me.
Advance in virtual technology make life easier for internet user, however, piracy can present itself as a problem if certain protocols are not put in place. When communicating with others over the internet, there are many ways to safeguard your computer, here are five protocols used as protection while communicating over the internet, authentication, authorization, encryption, system administrator, and firewalls. A combination of all these protocol could safeguard users while communicating over the internet.
Authentication is a way of verify the individual right to access a computer. The individual accessing the computer usually has a unique username and password that allows the computer to recognize the individual to allow access to the system. For example, most employers allow their employees access to computers on the job for various duties. However, some user have restrictions where as others do not. In, “Invitation to Computer science”, a passage on authentication reads, “When a user attempts to log on to the machine, the operating system reads the user ID and checks that the password matches the password for that user in the password file” (Schneider & Gersting, 2013, pp. 391). Piracy can still occur if this is the only protocol used. However, if authentication is partnered with encryption, communication may not be compromised over the internet.
Encryption allows users to create a message in plain text but before it is send to its destination the message is encrypted also known as ciphertext. When the message is obtained by the receiver the content is decoded so it is able to be read. However, if the message is hijacked by the incorrect receiver, the plain text remains encrypted. Encryption according to Schneider & Gersting, “is the process of using an algorithm to convert information into a representation that cannot be understood or utilized by anyone without the proper decryption algorithm;…” (2013, pp. 401).
Moving along in safe communication over the internet is authorization. Authorization dictates what an authenticated user has permission to do. Contingent on whom the authorized individual may be, they possess the ability to read, write, execute or delete files. The text, “Invitation to Computer Science” states, “The system administrator or superuser has access to everything, and is the person who sets up the authorization privileges for all other users” (Schneider & Gersting, 2013, pp. 395). A more tangible explanation is, I am the system administrator for my personal laptop and I delegate authorization to other users.
Next in safety is firewall software. Firewall software blocks access points to a users’ computer. It inhibits communication to or from sites you the user do not allow.
In addition to safety while communicating over the internet, safeguarding your computer against viruses is vital. One measure a user can utilize to safeguard their computer against viruses is antivirus software. There is much antivirus software available on the market but the main two that comes to mind is Norton and McAfee antivirus software. Both seem to be popular amongst consumers of today. Antivirus software recognizes viruses, worms and Trojan horses by unique signature these programs transmit. The software wipes out the tainted program being transmitted which safeguards your computer from any threats.
In the last 12 months, the following three computer viruses have had a significant impact on business are Shamoon which attacked Saudi Aramco oil company computer, St. Barnabas Healthcare System e-mails were infiltrated by Melissa and a Chinese hacker infiltrated the Times computer system through malware which granted them access to any computer on the Times network.
The morning of August 15, 2012 a virus was unleashed to execute the destruction of a company called Aramco’s, corporate PCs documents, spreadsheets, e-mails, files putting in place of all the items demolished, an image of a burning American flag. The person responsible for such destruction is unknown but the article states, “…a person with privileged access to the Saudi state-owned oil company’s computers…” is the villain (Perlroth 2012). The name of the virus that collapsed Aramco’s computers is called Shamoon. The virus compelled the company to terminate the company’s internal network in efforts to hinder the virus from spreading like wildfire.
In another article, St. Barnabas Health Care System e-mails were sabotaged by the horrendous e-mail virus Melissa. The virus surfer the information highway and infected E-mail systems worldwide, hindering networks and hard drives and to add insult to injury destroyed data. In efforts to save the St. Barnabas Health Care System immediate shut down of the system and networks was in order to rid the organization of the problem.
In the same manner, Chinese hackers installed malware to infiltrate Times computer system to obtain passwords for personnel employed by Times. The
Chinese hacker had a four month running spree of consistently attacking Times systems. The article states, “The timing of the attacks coincided with the reporting for a Times investigation, published online on Oct. 25, that found that the relatives of Wen Jiabao, China’s prime minister, had accumulated a fortune worth several billion dollars through business dealings” (Perlroth 2013). In efforts to intercept the Chinese hackers attacks, Times employed security guru to detect and block the attacks. Perlroth reports, “Computer security experts found no evidence that sensitive e-mails or files from the reporting of our articles about the Wen family were accessed, downloaded or copied,” said Jill Abramson, executive editor of The Times” (2013)
Larson, A. (1999, July 12). Global Security Servey: Virus Attack. Information Week, http://www.informationweek.com/743/security.htm Perlroth, N. (2012, October 23). In Cyberattack on Saudi Firm, U.S. Sees Iran Firing Back. New York Times, http://www.nytimes.com/2012/10/24/business/global/cyberattack-on-saudi-oil-firm-disquiets-us.html?pagewanted=all&_r=0 Perlroth, N. (2013, January 30). Hackers in China Attacked The Times for Last 4 Months. New York Times, http://www.nytimes.com/2013/01/31/technology/chinese-hackers-infiltrate-new-york-times-computers.html?pagewanted=all Schneider, G.M. & Gersting, J.L., (2013). Invitation to Computer Science. (6th ed.). Boston, Ma: press