Write a program which collects in data samples, Computer Engineering

Assignment Help:

Write a program which collects in data samples from a port at 1 ms interval. The upper 4 bits collected data same as mastered and stored in an array in successive locations.

; REGISTERS: Uses CS, SS, DS, AX, BX, CX, DX, SI, SP

; PROCEDURES: Uses WAIT

DATA_SEG       SEGMENT

            PRESSURE DW 100 DUP (0); Set up array of 100 words

NBR_OF_SAMPLES EQU 100    

            PRESSURE_PORT EQU 0FFF8h     ; hypothetical input port

DATA_SEG       ENDS

STACK_SEG SEGMENT STACK

            DW 40    DUP (0)    ; set stack of 40 words

STACK_TOP   LABEL WORD

STACK_SEG   ENDS

 

CODE_SEG SEGMENT

            ASSUME CS: CODE_SEG, DS: DATA_SEG, SS: STACK_SEG

START:           MOV   AX, DATA_SEG; Initialise data segment register

MOV DS, AX  

MOV AX, STACK_SEG   ; Initialise stack segment register

MOV SS, AX  

MOV SP, OFFSET STACK - TOP    ; initialise stack pointer top of 

                                                ; stack

LEA SI, PRESSURE; SI points to start of array 

     ; PRESSURE

MOV BX, NBR_OF_SAMPLES   ; Load BX with number

                        ; Of samples

MOV DX, PRESSURE_PORT   ; Point DX at input port

                                                ; It can be any A/D converter or 

                                                ; Data port.

READ_NEXT: IN AX, DX   ; Read data from port

            ; Please note use of IN instruction

            AND AX, 0FFFH; Mask upper 4 bits of AX

            MOV [SI], AX   ; Store data word in array

            CALL WAIT   ; call procedures wait for delay  

INC SI; Increment SI by two as dealing with 

INC SI; 16 bit words and not bytes

DEC BX; Decrement sample counter

JNZ READ_NEXT   ; Repeat till 100

      ; Samples are collected

STOP: NOP    

WAIT   PROC NEAR  

            MOV CX, 2000H   ; Load delay value

                                     ; Into CX

HERE:   LOOP HERE   ; Loop until CX = 0

            RET    

WAIT   ENDP    

CODE_SEG ENDS    

END    

Discussion:

Please consider that CALL to the procedure as above doesn't specify whether the call is to a FAR procedure or a NEAR procedure. This distinction is made at the time of defining the procedure. 

 

The procedure above can be converted in a FAR procedure by changing the definition of procedure as below:

WAIT              PROC FAR

 .

 .

WAIT             ENDS

The procedure can now be statedin another segment if the need to be, in same assembly language file.


Related Discussions:- Write a program which collects in data samples

Explain transformational analogy, Question 1 Why is it important that a...

Question 1 Why is it important that an expert system be able to explain why and how questions related to a problem solving session. 2 Give the architecture of an Expert syst

How ORG statement processed in two-pass assembly scheme, Can the operand ex...

Can the operand expression in an ORG statement contains forward references? If so, outline how the statement can be processed in a two-pass assembly scheme. ORG that is origin

Define assembly, Define Assembly Assembly is a one deployable unit that...

Define Assembly Assembly is a one deployable unit that contains information about the execution of classes, structures and interfaces. it also keeps the information about itsel

Write an assembly function which hides the cursor, Q. Write an assembly fun...

Q. Write an assembly function which hides the cursor? Write an assembly function which hides the cursor. Call it from a C program.             . PUBLIC CUROFF

E-recruitment system, This project is aimed at developing a web-based and c...

This project is aimed at developing a web-based and central recruitment Process system. this web site is for Fresher candidates who graduated. Some features of this system will be

ATM is an example of which topology?, ATM is an example of? ATM is illu...

ATM is an example of? ATM is illustration of Star topology.

What is race-around problem and how can you rectify this, What is Race-arou...

What is Race-around problem? How can you rectify this? The clock pulse which remains into the 1 state whereas both J and K are equal to 1 will reason the output to complement a

Reprographic methods for information distribution, Reprographic Methods ...

Reprographic Methods i) Thermography ii) Dyeline jii) Microfiche iv) Fax In this unit you have learnt that: Used for Methods of reprography are used for the

Explain the types of hardware used in supermarkets, Explain the types of ha...

Explain the types of hardware used in supermarkets These use many types of specialist I/O hardware. For instance: -  Bar code readers/scanners (to read product details and e

Explain the concepts and definitions of e-commerce, The Internet has emerge...

The Internet has emerged as a major worldwide distribution channel for goods, managerial, services, and professional jobs. It has impacted market economics and industry structure,

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd