Your All-in-One AI-Powered Toolkit for Academic Success.

Available 24*7 on WhatsApp / Email

Unlock your academic potential

© 2024 | Zucol Services PVT LTD | All rights reserved.

Added on 2019/09/19

|3

|888

|761

Project

AI Summary

This coursework requires developing a program in Python that simulates the behavior of a digital circuit performing integer addition. The program must implement a model of a byte adder based on the bit adder, specify an algorithm for integer addition, select suitable data structures, create a Python 3 program, and test the program with sample data. A written report is also required to present the work, including a description of the program, testing, and reflection on individual experience.

Your contribution can guide someone’s learning journey. Share your
documents today.

CC4002 Information Systems

Coursework 1: Programming in

Python

Deadline: 16 January 2017 - submission on WebLearn

Summary

This is an individual coursework worth 30% of the total module mark. It requires developing

of a program in Python which simulates the behaviour of a digital circuit performing integer

addition and writing a report to describe the model, algorithm, data structures, program and

testing performed).

Tasks Mark

1. Construct a model of a byte adder based on the bit adder max 10%

2. Specify an algorithm for integer addition based on binary operation max 10%

3. Select suitable data structures to represent the information max 10%

4. Create a program in Python 3 which implement the model of the adder max 40%

5. Describe the program max 10%

6. Test the program with some sample data to demonstrate its behavior max 10%

7. Write a report to present the work max 10%

Requirements

1. Model

The model must be based on the bit adder from the lecture in Week 3

The model may include number of bit adders linked to form a byte adder.

Coursework 1: Programming in

Python

Deadline: 16 January 2017 - submission on WebLearn

Summary

This is an individual coursework worth 30% of the total module mark. It requires developing

of a program in Python which simulates the behaviour of a digital circuit performing integer

addition and writing a report to describe the model, algorithm, data structures, program and

testing performed).

Tasks Mark

1. Construct a model of a byte adder based on the bit adder max 10%

2. Specify an algorithm for integer addition based on binary operation max 10%

3. Select suitable data structures to represent the information max 10%

4. Create a program in Python 3 which implement the model of the adder max 40%

5. Describe the program max 10%

6. Test the program with some sample data to demonstrate its behavior max 10%

7. Write a report to present the work max 10%

Requirements

1. Model

The model must be based on the bit adder from the lecture in Week 3

The model may include number of bit adders linked to form a byte adder.

Need help grading? Try our AI Grader for instant feedback on your assignments.

The model can be presented using suitable diagram created using drawing tool or

graphics editor of your choice (the bit adder can be a box with input and output only)

2. Algorithm

The algorithm for adding two integers must be based on the use of standard logical

operations which have direct hardware implementation (AND, OR, XOR, NOT)

It can use additional data processing operations which might be necessary to

manipulate the data (i.e., input/output operations, type conversion operations,

information retrieval operations, bitwise data processing operations, etc.)

The algorithm must be specified using pseudocode, structured English or plain text

The algorithm can be illustrated using a diagram

3. Data Structures

The programming should be done using data structures and operations in Python for

input/output, character and string processing, logical or bitwise manipulations.

It can use any primitive or complex data structures which might be necessary for

holding the data (pairs, lists, strings, dictionaries, etc.)

The choice of data structures must be specified in the report.

4. Program

The program must work in a loop, reading two integer numbers, computing the sum

of them and printing out the result until instructed to quit

The program must check the input data for the data type permitted (representation of

an integer) and the data value limitations (the value of the integer must not exceed

the actual size of byte-coded integers, i.e. min 00000000 and max 11111111 in Base

2 or min 0 and max 255 in Base 10 for positive integers, min 11111111 and max

01111111 in Base 2 or min -127 and max +127 in Base 10 for signed integers)

The program must be implemented in a modular way with separate functions for

inputting data, bit operations, integer operations and outputting the result of the

calculation

5. Description

The program must be described in terms of its structure and behaviour

It can be presented using text and structural charts, flowcharts or other diagrams as

needed

6. Testing

The tests must be performed using suitable test data (i.e., normal data, max/min

boundary values, wrong data types, wrong values)

The testing can be presented using screen shots of the execution

7. Reporting

The report must present all components of the work – model, algorithm, data,

program, tests

It must be written in proofread English in good style

The report must have a title page, table of content, page numbers and reflection on

the individual experience

graphics editor of your choice (the bit adder can be a box with input and output only)

2. Algorithm

The algorithm for adding two integers must be based on the use of standard logical

operations which have direct hardware implementation (AND, OR, XOR, NOT)

It can use additional data processing operations which might be necessary to

manipulate the data (i.e., input/output operations, type conversion operations,

information retrieval operations, bitwise data processing operations, etc.)

The algorithm must be specified using pseudocode, structured English or plain text

The algorithm can be illustrated using a diagram

3. Data Structures

The programming should be done using data structures and operations in Python for

input/output, character and string processing, logical or bitwise manipulations.

It can use any primitive or complex data structures which might be necessary for

holding the data (pairs, lists, strings, dictionaries, etc.)

The choice of data structures must be specified in the report.

4. Program

The program must work in a loop, reading two integer numbers, computing the sum

of them and printing out the result until instructed to quit

The program must check the input data for the data type permitted (representation of

an integer) and the data value limitations (the value of the integer must not exceed

the actual size of byte-coded integers, i.e. min 00000000 and max 11111111 in Base

2 or min 0 and max 255 in Base 10 for positive integers, min 11111111 and max

01111111 in Base 2 or min -127 and max +127 in Base 10 for signed integers)

The program must be implemented in a modular way with separate functions for

inputting data, bit operations, integer operations and outputting the result of the

calculation

5. Description

The program must be described in terms of its structure and behaviour

It can be presented using text and structural charts, flowcharts or other diagrams as

needed

6. Testing

The tests must be performed using suitable test data (i.e., normal data, max/min

boundary values, wrong data types, wrong values)

The testing can be presented using screen shots of the execution

7. Reporting

The report must present all components of the work – model, algorithm, data,

program, tests

It must be written in proofread English in good style

The report must have a title page, table of content, page numbers and reflection on

the individual experience

Deliverables

1. Written report, submitted by the deadline to WebLearn (one .pdf file only)

2. Python program, submitted by the deadline to WebLearn (one .zip file containing all

Python modules and data files)

Notes on the Assessment

The work will be assessed entirely based on the submitted files

If no program file is submitted the report will still be assessed for the model, algorithm

and data structure (max 40%) which practically means fail

If no report is submitted the program will still be assessed at max 40% which

practically means fail

If both files are present but the program is not working the report will still be assessed

but the mark for the program will be set to 0 which means max 60% could be

awarded

In order to be awarded first class mark the program must implement some more

advanced features, such as:

Allowing both positive and negative integers to be entered

Input in both binary and decimal format with conversion to binary

Additional binary subtractor or multiplier

Additional floating point adder, etc.

1. Written report, submitted by the deadline to WebLearn (one .pdf file only)

2. Python program, submitted by the deadline to WebLearn (one .zip file containing all

Python modules and data files)

Notes on the Assessment

The work will be assessed entirely based on the submitted files

If no program file is submitted the report will still be assessed for the model, algorithm

and data structure (max 40%) which practically means fail

If no report is submitted the program will still be assessed at max 40% which

practically means fail

If both files are present but the program is not working the report will still be assessed

but the mark for the program will be set to 0 which means max 60% could be

awarded

In order to be awarded first class mark the program must implement some more

advanced features, such as:

Allowing both positive and negative integers to be entered

Input in both binary and decimal format with conversion to binary

Additional binary subtractor or multiplier

Additional floating point adder, etc.

1 out of 3