Dirk Tilger wrote:

>--- Moeen Alinaghian <[EMAIL PROTECTED]> wrote:
>  
>
>>Right, and I don't like interpereters too, except for special reasons
>>...
>>I use Python or Perl for some daily works, and not more !
>>and C/C++ or Pascal for Programming.
>>    
>>
>
>For the same reason I don't like digital computers, by the way. A very
>simple example: imagine you want to calculate 5+3. On the analogous
>computer you have a 5 volt signal contact a three volt signal and you
>would immediately without any delay messure 8 volt.
>
>  
>
The biggest problem in an analog system is thae you _never_ get the 
correct required voltages !
And that's why analog computers never made it big.

>For the digital computer, imagine the five and the three coming through
>serial lines as bytes of 6 bit. Then the digital computer would
>
>1. load the 6 bits from the first number into the register of the
>serial port register [6 steps]
>  
>

You don't have to do this manually, since we R/W in one shot.

If we ignore LE/BE conventions,

we would be reading writing as

struct s_port_1{
        unsigned s_bit_1    :1;
        unsigned s_bit_2    :1;
        unsigned s_bit_3    :1;
        unsigned s_bit_4    :1;
        unsigned s_bit_5    :1;
        unsigned s_bit_6    :1;
} __attribute__((packed));

we would be reading it in one shot. The value of unsigned would depend 
on the register width of the native platform.
So you need to align and pack it as necessary according to the target 
platform, well this is in "C" if you use "asm" it is a bit more simpler

So this is 1 single step, rather than 6 steps (The hardware UART does 
the shifting for you in other terms)

I will explain it simpler..

>2. load the serial ports register into a help register of the processor
>[at least one step]
>3. load the 6 bits from the second number into the register of the
>serial port
>4. have the accumulator register adding the value of the help register
>[at least one step]
>5. have the processor writing the content of the new accumulator
>register to the serial port [1 step]
>6. have the serial port writing the contents of its register in the
>serial line [6 steps]
>
>After every step is completed, it process will wait until the next tick
>is coming. Not mentioning how much operating system you need for a
>system performing this task...
>
>  
>
With an analog computer you need Temperature compensated precision 
volatge sources for the calculation of the same, but again the losses 
that do occur in the components , does make matters even worser causing 
passive components to be replaced by active components such that each 
passive component's loss is compensated by the active component.

Oh you don't need an OS. For example on a 8 bit RISC micro, i can do 
something like this
(some pseudo asm )

            org @INTERRUPT_VECTOR_ADDRESS

            btfsc            INTSTAT.UART_RCV      // check whether we 
can read
            addwf          UART, w                         // add it to 
accumulator
            bcf               INTSTAT.UART_RCV      // clear interrupt flag
            return


            org @RESET_VECTOR_ADDRESS
start:
            movwf          RESULT;                       // move result 
to wherever
            goto start

            return

So in essence, the entire operation takes less than 6 instructions. 
which you can say on a typical 8 bit micro would be 24 clock cycles.
on a processor running at 4Mhz or 20 Mhz. It is damn fast.

An analog system has to wait till the internal oven stabilizes the 
internal regulator for the precise voltage source. Another drawback.

In the long run, digital computers works out more precisely and cheaper, 
and are smaller too.
Not to mention about efficiency. ie, an anlog computer will have lot of 
losses due to the amplifiers, (unlike logic buffers which have only 2 
states) the analog buffers would be an amplifier with an efficiency of 
max 25 ~ 40 % (Class A) operation. rest goes away as heat.

I just meant a single buffer, in a processor there would be ahem ! at 
least thousands of them !

Manu



------------------------ Yahoo! Groups Sponsor --------------------~--> 
Most low income households are not online. Help bridge the digital divide today!
http://us.click.yahoo.com/cd_AJB/QnQLAA/TtwFAA/0XFolB/TM
--------------------------------------------------------------------~-> 

 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/dubailug/

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 


Reply via email to