RSS

Multimedia technology – what we’ve learnt so far!

For the past few weeks the class has been studying the final topic of the course, multimedia technology. Here is a summary of what we’ve learnt so far.

Creating a multimedia solution/applications.

A multimedia application is the use of media types within the program. Multimedia applications are most of the time interactive. There are three types of multimedia applications:

  • A stand-alone application.
  • A web page.
  • A Presentation.
These applications are created using the same waterfall model used in the software development stage but are applied slightly differently. 
ANALYSIS:  Get specification/ aims of application
                   Who will use it
                   Where will it be shown/distributed.
                   Budget
DESIGN:      The program structure
                   How the HCI (human computer interface) works
                   How each screen will look (if there is multiple screens)
                   Which media elements will be used(video, audio and/or images)
IMPLEMENTATION: Create the application.
                               What software will be used to import/export/embed media elements.
                               What is the most appropriate authoring software.

TESTING: Make sure everything works as expected (multiple windows, links, videos/audio streaming etc)

DOCUMENTATION: Hardware requirements and where the user will find help with application.

EVALUATION: Evaluate robustness of application.

MAINTENANCE: Perform corrective, adaptive and perfective maintenance.

Fix bugs (corrective)  Add additional features/ make changes (perfective)  Improve application by external software/hardware (adaptive)

Bitmap Graphics

The two main devices used for capturing still graphic data are a scanner and a digital camera.

CCD(Charged Coupled Device): This is used to capture the light.

ADC(Analogue-Digital Converter): As light is an analogue signal, the ADC converts the light signal captured by the CCD into a digital signal.

There are 4 different file storage types:

  • Bitmap (.BMP)
  • Joint pictures expert group (.JPG/JPEG)
  • Graphic interchange format (.GIF)
  • Portable network graphics (PNG)
Features within Bitmap Graphics

GIF TRANSPARENCY: When a GIF is made transparent, the background of the GIF is made the same colour as the background of the document the user is placing it into. for example, a GIF that is made transparent and is placed on a blue background. The GIF’s background will become blue.
GIF ANIMATION: This allows a number of still pictures (frames) to be compressed together to create a moving picture (animation) 
RLE(Run Length Encoding): is a compression technique that runs of data. This means that sequences with the same value are stored as a single element, rather than the original run.
CLUT(Colour Look Up Table): This is a table of colours which is used to change a set of preset colours. they are found in graphic software packages. e.g. paint.
Calculating Bitmap graphic storage requirements
Firstly we must calculate the number of pixels in the image
Formula
number of pixels = image width x resolution x image height x resolution 
example: How many pixels are there in an image 5 inches by 6 inches and with 700 dpi(dots per inch)
number of pixels = 5 x 700 x 6 x 700
                         =14700000 pixels
Calculating File Size
to calculate the file size we must multiply the number of pixels by the colour depth. To get the answer into bytes, we must divide by 8. 
Formula
File size(in bytes) = total number of pixels x the colour depth of each pixel / 8
example: an image 5 inches by 6 inches with 700 dpi uses 16 bit colour depth. calculate the file size.
 
Number of pixels = 5 x 700 x 6 x 700
                         = 14700000 pixels 
File Size = 14700000 x 16 /8
              = 29400000 bytes 
                 29400000/1024 = 28710.9 KB
                 28710.9/ 1024 = 28.04 MB
 
Leave a comment

Posted by on March 17, 2012 in Computing

 

The Revision i did over the holidays…

Computing Christmas Revision Blog

The joys of Christmas revision.

 

During the Christmas holidays I was asked to do some computing revision, which I did as I do actually want to pass the subject. In total I revised about 6 and a half hours over the Christmas holidays.

What did I revise?

I mainly revised the software development section of the course because it has been a while since we touched on that. Within the section I revised each stage of the software development process (analysis, design, implementation, testing, documentation, evaluation and maintenance). I also used the flashcards on the wiki(the one day I had the opportunity to use internet as I have none due to building work. It was in no way helpful!) and I used notes which I took down in class. I revised the type of personnel used within the software development team and what each does.

I revised the computer systems topic too. The processor was the main thing I revised and also how to do most of the calculations required within these two topics. I studied the differences between RAM and ROM, the types of computers current trends and the key terms related. The Von Neumann Architecture was a great help in understanding the basic process of a computer.

 

 
1 Comment

Posted by on January 9, 2012 in Computing

 

Computer Memory & Addressability

Computer memory and Addressability


 Computer Memory:

Computer memory consists of main memory (Primary memory) and backing storage (Secondary memory).

 

Each storage location within the main memory is a little chip. Each location holds one word.

 

A word is defined by the number of bits that the central processing unit can undertake in a single instruction. The length of the word is decided by the width of the data bus(which also determines how much data is stored in one memory location)because they are equal.

 

There are two types of memory: RAM – Random Access Memory

                                                ROM – Read Only Memory

 

Random Access Memory

 

When the computer is switched off, all the contents stored within RAM is wiped. This type of memory holds mainly data from input peripherals but it also holds data from applications which the computer is running.

 

There are two types of RAM, static and dynamic.

 

Static: With static RAM the contents of the memory will be retained until power is no longer supplied to the computer.

 

Dynamic: Dynamic RAM has to have a continuous signal to be supplied to the chip to re-write (refresh) its contents.

 

Read Only Memory

 

The contents of ROM are written to the chips when is it manufactured. When the computer is switched off all the data is retained. It also hold the bootstrap loader. This is part of the operating system.

 

There are three types of ROM:

 

PROM – Programmable Read Only Memory

Once it is programmed, it cannot be erased.

EPROM – Erasable Programmable Read Only Memory

Only the chip can be removed from the computer (like PROM) and the program will be erased and replaced by another using UV light

EEPROM – Electrically Erasable Programmable Read Only Memory

Like EPROM, but the program is erased and reprogrammed using electricity.

 

Temporary Storage-Cache Memory.


This is a small amount of memory built in next to the processor. Due to this, it is physically faster than RAM. It stores the next instruction to be read.

 

Write-through cache: The contents of the RAM are updated at the same time as the cache contents.

 

Write-back cache: The contents of the RAM are updated when the contents of the cache are cleared.

 

 

Addressability


Addressability is the way in which a computer identifies memory locations.

 

The width of the address bus determines how many memory locations can be addressed:

 

1 bit address bus = 2 memory locations

2 bit address bus = 4 memory locations

3 bit address bus = 8 memory locations

ETC ETC

8 bit address bus = 256 memory locations

16 bit address bus = 65536 memory locations

32 bit address bus = 4,294,967,296 memory locations

 

Calculating addressable memory

 

To work out the total addressable memory:

 

Number of storage locations (multiplied by) the Size of each memory location.

 

Example:

 

16 bit address bus & 8 bit data bus

2^16 bits x 8 bits = 65536 bits x 1 byte

                                    65536 x 1

                                    65536 bytes => 64kB 

 
Leave a comment

Posted by on December 7, 2011 in Computing

 

The Processor

This week in computing, our class learnt about the processor. Within the processor, there are the control unit, ALU, MAR, MDR and Registers.

Von Neumann Architecture.


Inside the Processor

ALU: This is the arithmetic and logic unit. This part of the processor carries out all the arithmetic calculations and logical operations (AND, OR, NOT) the computer is asked to do.

Control Unit: This part of the processor controls the fetching and executing of instructions. It keeps everything synchronised and manages the reading and writing to and from the main memory. #

General purpose registers: These are very fast temporary storage locations on the processor.

MAR: The Memory Address Register is the register which holds the unique storage location of what piece of information is needed from the main memory

MDR: The Memory Data Register is the register which the information from the main memory is retrieved and also where it is sent back to the main memory if it is re-written or slightly changed.

Buses: These are physical wires which connect each part of the processor together.

The Control Bus

Each wire on the control bus has its own separate function. There are five:

Read Line: This informs the memory that data has been sent to the processor from a particular memory location.

Write Line: It informs the memory that data is to be written to a specific memory location.

Interrupt: A message which is received from a peripheral device causes the processor to stop doing the current task and deal with the message from the peripheral. Current data is stored into a temporary storage location on the processor called the stack. The processor then deals with the interrupt and once the task has done, it retrieves the data from the stack and carries on with the task.

Clock: This line keeps everything synchronised. It generates a steady pulse which keeps the flow of information constant.

Reset: This line clears all the internal processor registers and switches the computer back to its original switched on state.


 
1 Comment

Posted by on November 29, 2011 in Computing

 

bitmapped graphics

Pictures which are viewed on digital devices are made up of pixels(picture elements). A pixel is the smallest unit of picture which can be controlled.Pixels are normally arranged in a two-dimensional grid and are often represented by dots or squares. To represent a black and white image, it will be stored in 2 bits, 1 being black and 0 being white. Although what would happen if the picture was in colour? It would be stored using more bits per pixel.

The resolution determines the quality of the image. So the smaller the pixels the greater the resolution.

There are two types of graphic, bitmapped and vector.

Bitmapped Graphics.
Bitmapped graphics are stored in a two dimensional grid (array) using binary to represent the colours of the pixels. Each pixel is represented by the same number of bits.

For black and white, each pixel is represented by one bit. Black = 1 and white = 1.

For colour, each pixel will be represented by the amount of bits required. For example, if there are four colours (black, white, red and green), each pixel would be represented as 2 bits.

00 = Black

01 = White

10 =  Red

11 = Green

Vector Graphics

Vector graphics  are objects such as geometrical shapes which are stored as mathematical equations which contain attributes of how they are to be drawn.

The computer will automatically save the new attributes if the object if :

-it is moved around the screen

-it is resized

– the fill pattern is changed

-the line thickness is changed

When using vector graphics, it is not possible to change the colour if the object or delete part of the object.

 

 
Leave a comment

Posted by on November 7, 2011 in Computing

 

Representing Real Numbers

In representing real numbers, computers are programmed to use Floating Point Representation. In floating point represnetation, the real number is stored as two seperate pieces of data, called the mantissa and exponent.

The mantissa holds the complete number without the point.

The exponent holds the amount of places the point needs to be moved to the left hand side to keep the original number.

Example:

What is the mantissa and exponent of 011010.01?

The mantissa would be: 01101001

The exponent would be: 6 (0110) as the decimal point needs to be moved 6 places until it gets to the far left-hand side.

=> 01101001 x2^0110

although it is not necessary to store the base 2 or the”x” sign as they will always be involved.

Accuracy in real numbers.

If the mantissa is onlt storing 8 bits for the whole number and the number is nore than 8 then some of the numbers after the point will have to be discarded, therefore the accuracy of the number will be decreased

Example:

Ifthe binary number is: 0110100.1001

it will have to be reduced to 0110100.1 as the mantissa can only hold 8 bits, decreasing the accuracy.

Range.

Increasing the range of the mantissa and exponent allows the number to have more accuracy and a larger range of numbers which it could be.

Representing Negative Numbers.

There are two ways to represent negative numbers. a theoretical way is called signed bit represtentation. This is when the computer would take the leftmost bit of the number and assign a positive or negative sign but this is not used as there is two values for zero. So two’s compliment represetation is used.

When using twos compliment, all the zeros in the binary number must be changed to a one and all the ones must be changed to a zero. Then a one is added on.

Example.

What is negative 5?

firstly what is 5 in binary? 0101-> 1010

1010

  +1

= 1011 -> negative 5

 
1 Comment

Posted by on November 5, 2011 in Computing

 

Binary- Whait is it and why do computers use it?

In everyday life, we use 10 decimal numbers to represent numerical data,
BUT
Computers cant do that. The lowest base number system we can use is 2 so instead, computers use this to represent numbers. This is the binary system. As computers use voltages, there is not a specific voltage for each number in the decimal system because voltages change constantly. Therefore it is measured as a two state system, either on or off. Computers also use the binary system to keep things simple, such as calculations. If we used the decimal system, 100 rules would have have to be wired into the computer, whereas in the binary system there would only be 4 rules for calculations. Finally the last main reason why computers are two state systems and use binary is that the magnetic and optical storage devices used are suited best to two state systems.

How to convert (decimal -> binary)

In the decimal system the number 34567 could be represented as

10^4       10^3       10^2       10^1    10^0

3            4            5            6         7

In binary the number 11001 could be written as:

2^4         2^3         2^2         2^1         2^0

1            1            0            0            1

OR

16           8              4              2              1

1             1              0              0              1

To convert binary numbers to decimal (1 byte):

The term bit is short for binary digit.

so 8 bits make up 1 byte.

The byte is 10010111

128         64           32           16           8              4              2              1

1              0            0              1           0              1              1              1

To work this out, you multiply the numbers which are a 1 by 1 and add them together to give you the decimal number

= (128×1) + (16×1) + (4×1) + (2×1) +(1×1)

= 128 + 16 + 4 + 2 + 1

= 151

How to convert (decimal -> binary)

Convert the number 98 into binary:

To do this, does the number go into 128? no. so this becomes a 0.

Does it go into 64? yes, so this becomes a 1.

Does the remaining 34 go into 32? Yes so this is also a 1

Does the remaining 2 go in 16, 8,  4, or 1? No so these are all 0’s.

Does the remaining 2 go into 2? Yes, so this is a 1.

128       64       32       16       8       4       2       1

0          1          1         0        0       0       1       0

98 in binary = 01100010

The largest number we can make with 1 byte is 255. so if we wanted to make a number which is larger, we’d just add another byte on.

Units of Measurement:

1 byte (8 bits) – used to store binary numbers.

1 Kilobyte (1024 bytes) – A very very short story

1 Megabyte (1024 Kilobytes) – 1 minute of MP3 compressed music.

1 Gigabyte (1024 Megabytes) – A DVD-R can hold about 4.7 GB.

1 Terabyte (1024 Gigabytes) – becoming more common as the standard size of hard drive on a computer.

 
Leave a comment

Posted by on October 29, 2011 in Computing

 

Steve Jobs- a true visionary

Yesterday, Apple announced in a statement that former CEO Steve Jobs tragically lost his fight to Pancreatic cancer at the age of 56. He was a great visionary to the world and we have lost a genius. In 1976 Steve co-founded Apple Inc and it has developed into the largest Multinational computing technology company.

After founding Apple in 1976 he then resigned from Apple and founded NeXT, a computer platform aimed at business markets. Soon after, he bought a share of Lucasfilm Ltd which is better known as PIXAR studios. He then returned to Apple in 2000. Which saw saw the release of the iMac,iPod -1st, 2nd, 3rd, 4th, touch, MacBooks – Air. And Finally, the Generation of iPhones. All of these products were designed and created under the watchful, creative eye of Mr Jobs, as he did approve and in most cases help create Apple products.

In August 2011, Jobs resigned from Apple as his illness started to take over. It was Jobs’ ambition to stay CEO for as long as he possibly could, but the time eventually came:

“I have always said if there ever came a day when I could no longer meet my duties and expectations as Apple’s CEO, I would be the first to let you know. Unfortunately, that day has come.” – Steve Jobs

If it wasn’t for Steve Jobs founding Apple Inc. Would the worlds technology be advancing at the pace at it is?

R.I.P Steve, you are a true visionary, and a tremendous human being.

Apple

 
Leave a comment

Posted by on October 7, 2011 in Computing

 

What we learnt in computing this week!

This week in computing we learnt about:

  • Macros
  • Scripting
  • Modularity
  • High Level Language Programming Constructs. (HLL)
  • Parameters
  • Procedures
  • Functions

A macro is a function which is recorded by the user. The user records a series of key presses and then assigns the set of key presses to a keystroke. This will perform all the key presses at once. This means that this set of key presses can be played back as many times as the user needs to at a later.

Scripting

Scripting is basically the same as a macro but the only difference is that the instructions are already programmed into the application. The user just has to choose what he/she wants to happen.

Benefits of Macros/Scripting

  • Complex commands can be carried out by a single keystroke.
  • More advanced users can set up pre-defined macros for beginners to make the application more simple.
  • There is more flexibility and functionality from an application which macros/ scripts can be created.
  • The user interface can be easily customized.

Modularity 

If a computer program is complex, it may be broken down into smaller, manageable pieces of code. This means the program is modular.

Modules/Subroutines.

A subroutine is a block of code which needs to be passed a paramneter and can be called back into the main program by typing the subroutines name. This saves the programmer time as they don’t have to copy and paste the code and they can be specifically designed.

Example!

In the game pacman, there are four ghosts. The movement rules for each ghost are the same, but the programmer doesnt want to have to copy and paste the same code four times. It would make more sense to create a subroutine. 

Example of subroutine code (move-ghost)

SUBROUTINE: move-ghost, (GhostName)

         IF GhostName at edge of wall THEN 

         Change GhostName direction

          ELSE 

          move GhostName in current direction 

          END IF 

END SUBROUTINE 

After the subroutine is created. For it to work it has to be called. Once it is called, it must be past a parameter, in this case it is one of the four ghosts. The parameter being past is a string variable (the ghosts name) When the parameter is past the subroutine will execute the code on the chosen ghost. For example the ghost “PINKY” needs to be moved: 

move-ghost (“PINKY”). Once this is called in the program. The subroutine will execute passing the parameter “PINKY”

Procedures and Functions.

There are also two types of subroutines a procedure and a function. 

  • Procedure produces an EFFECT 
  • Function produces a VALUE 

 

In the example above the subroutine is a procedure as it produces an effect. the effect is the moving of the ghost.

 

 

 

 

Parameters.

There are two types of parameters. An actual parameter and a formal parameter. 

An Actual Parameter is a parameter which is passed into the subroutine when it is called from another part of the program.

A Formal Parameter is a parameter that is used withing the subroutine definition.

Parameter passing

There are two ways that a parameter can be passed, by reference or by value. 

When the parameter is passed by reference, the value of the parameter is changed when it is passed through the subroutine.

When it is passed by value, the value of the parameter is not changed when it is passed through.

High Level Language Constructs (High Level Language vs Low Level Language).

A High Level Language (HLL) uses everyday language to make programming easier. Its features include arithmetic functions which instuctions can be written using the appropriate symbols ( +,-,*,/,^). There are also built in functions and these can be used as subroutines if necessary. One HLL instruction translates into several machine code instructions. A Low Level Language (LLL) is one that which humans will find difficult to understand, such as binary. It is much easier to write a program in HLL but a program written in LLL will run much faster as it is more efficient.

High Level Programming Constructs. 

 

  • Conditional Statements – IF,THEN,ELSE
  • CASE Statements – a more compact version of a Conditional statement.
  • Nested Loop – a loop within a loop.
  • Conditional Loop – Repeats until a condition is met.
  • Input Validation – Makes sure the users input is acceptable.

 

 
Leave a comment

Posted by on September 23, 2011 in Computing

 

The Last Three Stages of the Software Development Process!

The final three stages of the software development process are documentation, evaluation and maintenance.

Documentation

Documentation is created to help the user understand how to use a software program. There are a few documents created at this stage but the two most common are:

User Guide

Technical Guide

User Guide

The user guide explains to the user how to work the software program. It can be produced in paper format but now it is more likely to be produced as an online PDF downloadable file or as online help.

                                                          Technical Guide 

This piece of documentation explains to the user how to install the software, the version number of the software, the minimum amount of memory and processor speed need to run the program and any other programs or files that may be needed to run the program.

There are other types of documentation that are created at this stage. These are:

  • Quick Start Guide
  • FAQ’s
  • Shortcut Guide
  • Tutorials

Evaluation

At this stage in the process, the client and developer review the software program to check if it meets the software specification and also if it is fit for purpose.

The software program is evaluated by the following criteria:

  1. Robustness
  2. Reliability
  3. Portability
  4. Efficiency
  5. Maintainability

Maintenance 

The maintenance stage happens after the software has been handed over to the client and it is put into use. There are three different types of maintenance

  • Corrective
  • Perfective
  • Adaptive

Corrective Maintenance.

This type of maintenance is specifically to remove any coding errors and fix any bugs that are found within the program.

Perfective Maintenance. 

If the client asks for specific changes within the software program or for additional features.

Adaptive Maintenance. 

If the environment in which the software is used changes, (i.e. moves to a different company) then it may be necessary to alter the code so it fits with the new environment. Other ways include operating system change/upgrade or new hardware.

The most time consuming type of maintenance is perfective as this keeps the client and developer in touch, and the programming company making money because the client keeps asking for changes.

Factors which affect the Maintenance stage

New Applications: As the users of the software begin to gain experience with it. They will start to see ways it could be improved or features that could be beneficial.

Staff Mobility: Its a lot more simple to keep the same team of programmers on one specific program which they created. That rarely happens. So other programmers come and take over and unless the software is well documented, then maintenance becomes exceedingly difficult.

Too many Versions: As the software is updated or changed, the programming company may release a newer version. the problems which can occur are that the software might stop supporting certain operating systems and it can be difficult to track down code changes.

Insufficient Documentation: If there is not enough documentation (internal commentary, design documentation) to support the software. Then maintaining it becomes a difficult job.

Hardware/Software changes: If the external hardware, internal software which is needed to run the program or the operating system platform is upgraded. The maintenance requirements become affected.

The maintenance stage is seen to be the most costly stage of the software development process as there is so much to be considered at this stage. It is estimated that 40% and 70% of the overall costs throughout the development process are down to maintenance.

 
 
 
Design a site like this with WordPress.com
Get started