Understanding Key Computer Science Concepts
Fetch-Execute Cycle
- The address in the program counter is transferred within the CPU to the Memory Address Register (MAR).
- During the next clock cycle, two things happen simultaneously:
- The instruction held in the address pointed to by the MAR is fetched into the Memory Data Register (MDR).
- The address stored in the program counter is incremented.
- The instruction stored in the MDR is transferred within the CPU to the Current Instruction Register (CIR).
Sound Sampling
- The amplitude of the sound wave is determined to get an approximation of the sound wave.
- This is encoded as a sequence of binary numbers and converted to a digital signal.
- Increasing the sampling rate will improve the accuracy of the recording.
Run-Length Encoding (RLE)
- RLE is a lossless method of compression.
- It reduces the size of a string of identical bytes.
- The repeating string is encoded into two values.
- One value represents the number of identical characters in the run, and the other value is the code of the character.
Code of Ethics for Software Engineers
Public: Software engineers shall act consistently with the public interest.
Client and Employer: Software engineers shall act in a manner that is in the best interests of their client and employer, consistent with the public interest.
Product: Software engineers shall ensure that their products and related modifications meet the highest professional standards possible.
Judgment: Software engineers shall maintain integrity and independence in their professional judgment.
Management: Software engineering managers and leaders shall subscribe to and promote an ethical approach to the management of software development and maintenance.
Profession: Software engineers shall advance the integrity and reputation of the profession, consistent with the public interest.
Colleagues: Software engineers shall be fair to and supportive of their colleagues.
Self: Software engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession.
DRAM vs. SRAM
- DRAM has to be refreshed; SRAM does not require a refresh.
- DRAM uses higher power; SRAM uses less power.
- DRAM is less expensive; SRAM is more expensive.
- DRAM is used in main memory; SRAM is used in cache memory.
Bit Streaming
On-Demand: In this case, the delivery of the media and the playing of the media are two separate processes. The incoming media data are received into a buffer created on the user's computer. The user's machine has media player software that takes the media data from the buffer and plays it.
Real-Time: In this case, the content is being generated as it is being delivered, such as when viewing a sporting event. At the receiver end, the technology is the same as before. The major problem is at the delivery end because a very large number of users may be watching simultaneously.