CNIT 17600 - Intro Computer Architecture - Data Format LabC/C++

Java Python CNIT 17600 - Intro Computer Architecture

Data Format Lab

When we have a human task, such as communicating remotely, that we wish to implement in a computer system, we need to have a system for moving something from meat space into cyber space. We encode characters into different formats which are discussed in lecture. These formats include ASCII, Unicode, and EBCDIC. These encodings encode characters that are used in human language and we are able to type them when we use a piece of hardware like a keyboard or when we swipe on a touch screen.

Planet Earth has used codes like ASCII, Unicode, and EBCIDIC, but those are not the only possible codes. The Taronites from the planet Oolong use a language called Bobatea, with a rather strange encoding system, at least from the perspective of those on Planet Earth. Earthlings have been intercepting Taronite messages - including one that was like the Rosetta Stone of old - and have determined that there are thirteen characters in the Taronite alphabet, and that each character uses a 5-bit code. In addition, there are four numeric digits. Photos of the Taronites show that they have two fingers on each hand and use base 4 for their arithmetic.

a. Decode the following binary code in the Taronite’s alphabet to determine the message that was sent.

01011110100001011111110000100110111111110111111010000100100

b. This code does not delimit between characters. On Earth, we use different delimiters such as commas in comma separated values (CSV) files, or spaces in between words. How does the Bobatea code get delimited in the absence of these special characters? In other words, CNIT 17600 - Intro Computer Architecture - Data Format LabC/C++ how do you (or a computer) know when one character ends and the code for the next character begins?

c. Imagine that the code above was the intended message, but the code below is sent instead: 1011110100001011111110000100110111111110111110000000100100. Notice that the first bit has been dropped, and another bit in the message has been flipped. Attempt to decode the message given this binary code. Be sure to show the result of your attempt to decode. Consider how to represent a decoding failure.

d. In human computing systems, we have methods for determining that a message is missing necessary information. These include adding a bit (called a parity bit) to the end of a message or character to show whether the sum of the other bits is even or odd; by finding a sum of all the characters (called a checksum); or methods that involve division of binary numbers (CRC). Based on what you know about the Taronite encoding, suggest a method for determining that there is an error in a Taronite message, such with the message in part c. Be sure that your potential error decoding method works in more than one case.

Submission: This is an assignment about data encoding. Part of the assignment is, in fact, finding a way to digitize your answers. As a result, you will have to consider how you will reproduce the Taronite code in your submission document since no human computer can encode their character set (until someone adds this character set to the Unicode stan-dard). There are a number of ways you can go about doing this, I encourage you to think creatively. Describe along with your other answers how you chose to solve this problem.

Answers to the above questions are due **in pdf format** on the LMS         

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值