Searching \ for 'pic16f84 program memory' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: www.piclist.com/techref/microchip/memory.htm?key=memory
Search entire site for: 'pic16f84 program memory'.

Truncated match.
PICList Thread
'pic16f84 program memory'
1998\07\05@060718 by Abdullah M Al-Dossary

flavicon
face
I would appreciate if some one could answer the following :

1- knowing that pic16f84 has only 1K of program memory, how many
assembly instructions LINES does that mean ?

i am using both CSS c-lang. and microchip assembler to program the pic,
i built a little program in c_lang that includes assembler instruction
but i found out that it was taking at least 2-5K of total c_lang program
which is 2-5k of generated assebler code and hex codes. The pic as i
know takes only 1K of program memory so i decided to sheft to the
pic16c76 which has 8K of program memory but before i do that i just need
to if my guess was right that PIC16F84 is not good candidate for program
with alot of lines of instructions.



thankyou

1998\07\05@174233 by myke predko

flavicon
face
Abdullah asked:

>I would appreciate if some one could answer the following :
>
>1- knowing that pic16f84 has only 1K of program memory, how many
>assembly instructions LINES does that mean ?

It means 1024 LINES or 1024 assembly instructions.  Each instruction is 1
address.

>i am using both CSS c-lang. and microchip assembler to program the pic,
>i built a little program in c_lang that includes assembler instruction
>but i found out that it was taking at least 2-5K of total c_lang program
>which is 2-5k of generated assebler code and hex codes. The pic as i
>know takes only 1K of program memory so i decided to sheft to the
>pic16c76 which has 8K of program memory but before i do that i just need
>to if my guess was right that PIC16F84 is not good candidate for program
>with alot of lines of instructions.

The 16C84 will not take 2K+ of generated assembler.  You're going to have to
go with a part with more control store (program memory).

myke

This week in myke's Book Room: "Point of Honor" by Maurice Medland.

http://www.myke.com/Book_Room

1998\07\05@192443 by TONY NIXON 54964

flavicon
picon face
The 16F84 only has 1024 locations available for program code. That
means 1024 lines of code.

Tony


PicNPoke Multimedia 16F84 Beginners PIC Tools.

**PLUS** - PicNPlay - PicNPlan - PicNPrep - PicNPost
PicNPort - DT Type Saver - *new* PicNQuiz.
Recent addition - Hex To Source converter.

http://www.picnpoke.com
Email spam_OUTpicnpokeTakeThisOuTspamcdi.com.au

1998\07\07@090330 by Pavel Korensky

flavicon
face
At 13:18 5.7.1998 +0300, you wrote:
>I would appreciate if some one could answer the following :
>
>1- knowing that pic16f84 has only 1K of program memory, how many
>assembly instructions LINES does that mean ?
>
One line of assembler is one byte. Of course, this is valid only if you do
not use pseudoops like skpnz etc. For these pseudo opcodes, there is the
number of actually used bytes mentioned in the help file for Microchip MPASM.

Best regards

PavelK

**************************************************************************
* Pavel Korensky                                                         *
* DATOR3 LAN Services spol. s r.o.                                       *
* Modranska 1895/17, 143 00, Prague 4, Czech Republic                    *
*                                                                        *
* PGP Key fingerprint:  F3 E1 AE BC 34 18 CB A6  CC D0 DA 9E 79 03 41 D4 *
*                                                                        *
* SUMMA SCIENTIA - NIHIL SCIRE                                           *
**************************************************************************

1998\07\07@122907 by myke predko

flavicon
face
>At 13:18 5.7.1998 +0300, you wrote:
>>I would appreciate if some one could answer the following :
>>
>>1- knowing that pic16f84 has only 1K of program memory, how many
>>assembly instructions LINES does that mean ?
>>
>One line of assembler is one byte. Of course, this is valid only if you do
>not use pseudoops like skpnz etc. For these pseudo opcodes, there is the
>number of actually used bytes mentioned in the help file for Microchip MPASM.

Pavel, this is not accurate.

One line of assembler is one *instruction*.  Each instruction is 12, 14 or
16 bits long (depending on the PICMicro that you are using).  I'm making
this distinctionbecause a byte can be placed inside an instruction as the
parameter (ie "movlw 0x0??).

This is important to note because some manufacturers, when comparing their
products to the PICMicro will make *byte* comparisons that are totally
meaningless (ie saying the 16F84 actually has 1,792 bytes of Control Store
because that's what 1024 Words * 14 bits/Word / 8 bits/byte is).

The PICMicro's one instruction per address pretty much nails down the number
of instructions available to the programmer, whereas in the 8051, 68HCxx and
AVR, this is not the case because different instructions take a different
number of bytes.

Sorry to be so anal about it, but the PIC ain't like those other guys.

myke

This week in myke's Book Room: "Point of Honor" by Maurice Medland.

http://www.myke.com/Book_Room

1998\07\08@031113 by Dr. Imre Bartfai

flavicon
face
On Tue, 7 Jul 1998, Pavel Korensky wrote:

{Quote hidden}

A small correction: "one line of assembler [assuming it is a processor
command] is " one WORD, not one byte. AFAIK a byte is always 8 bits, and a
WORD size is context-dependent. For the obsolete S/360 machines, a word
was 4 bytes = 32 bits (the whole architecture depended on it!). On a PC
one can say a word is 2 bytes = 16 bits. And for a PIC, a word is 12, 14
or 16 bits (bites ??? ) depending on the processor type you mean.
Computationally, the EEPROM size of the 16F84 is 1792 bytes, but it says
practically nothing useful.

No offence!

Imre

1998\07\09@025956 by Caisson

flavicon
face
> Van: Dr. Imre Bartfai <.....rootKILLspamspam@spam@PROF.PMMF.HU>
> Aan: PICLISTspamKILLspamMITVMA.MIT.EDU
> Onderwerp: Re: pic16f84 program memory
> Datum: woensdag 8 juli 1998 7:58
>
> On Tue, 7 Jul 1998, Pavel Korensky wrote:

[Cut]
> A small correction: "one line of assembler [assuming it is a processor
> command] is " one WORD, not one byte. AFAIK a byte is always 8 bits, and
a

A small corection-correction : a byte is _anything_ from 1 to X bits.  An
Octet is exacly eight bits.  A Byte is the name of the smallest grouping of
bits in a system (Mostly the Data-bus width). Although most people do not
know any processor with a other grouping than 8 bits-per-byte, earlier
processors had for example 1, 4 or 6 bits-per-byte.  A word is mostly a
double-byte, but can be anything.

As people who know of other-than-eight-bits-per-smallest-grouping are
fading away the 8-bit-per-byte meaning is the only one left.  Exept maybe
for the people who work with micro-chips micro-controllers :-)

> WORD size is context-dependent. For the obsolete S/360 machines, a word
> was 4 bytes = 32 bits (the whole architecture depended on it!). On a PC
> one can say a word is 2 bytes = 16 bits. And for a PIC, a word is 12, 14
> or 16 bits (bites ??? ) depending on the processor type you mean.
> Computationally, the EEPROM size of the 16F84 is 1792 bytes, but it says
> practically nothing useful.

To take all bits of memory and divide by 8 as nothing more than a
sales-manager trick to up the memory-size.  It is as with HD's to divide
the size-in-bytes by 1.000.000 (decimal) and calling the result Mega-Byte.

Greetz,
 Rudy Wieser

P.s.
Does anyone know how the smallest storage-unit (aka a Bit in a binary
system) is called in a Fuzzy-logic system ?  Just curious ...

1998\07\10@022749 by Russell McMahon

picon face
> To take all bits of memory and divide by 8 as nothing more than a
> sales-manager trick to up the memory-size.  It is as with HD's to divide
> the size-in-bytes by 1.000.000 (decimal) and calling the result
Mega-Byte.
>
> Greetz,
>   Rudy Wieser


Not quite - it is making the point that they are achieving throughput by
providing a longer word which allows them to code both addresses and
commands in the one instruction fetch. It would conceptually be possible to
have a uP that ran PIC code but stored instructions in eg 8 bit bytes. This
would need 2 fetches per instruction (or 1.5 perhaps for a 12 bit core
:-)). This is what most "traditional" processors do. This would be slower
and make PIC type jumps rather terrible to handle. Stating the wider code
space in 8 bit bytes points out one feature of their design.

On the subject of bits per byte - there was a long thread on this in
PIClist a few months ago. Some US navy types noted that they are still
using computers with "bytes" much larger than 8 bits.



>
> P.s.
> Does anyone know how the smallest storage-unit (aka a Bit in a binary
> system) is called in a Fuzzy-logic system ?  Just curious ...

1998\07\10@065212 by Caisson

flavicon
face
> Van: Russell McMahon <.....apptechKILLspamspam.....CLEAR.NET.NZ>
> Aan: EraseMEPICLISTspam_OUTspamTakeThisOuTMITVMA.MIT.EDU
> Onderwerp: Re: pic16f84 program memory
> Datum: donderdag 9 juli 1998 13:34

[Cut]

> Not quite - it is making the point that they are achieving throughput by
> providing a longer word which allows them to code both addresses and
> commands in the one instruction fetch.

???  - I do not see how a fiddeling of numbers (1024 instructions / 1792
bytes) say's anything about the way a MPU or MCU works internally.

I thought we where talking about Memory-size : aka 'the pic 16C84 has 1792
bytes of memory'.  This states nothing, just confuses people (me).

If you want to fiddle with numbers _and_ give correct (non-confusing)
information, than you could adopt the memory-vendors strategy to state
everything in bits. aka 'the PIC16C84 has got a code-space of 14336 bits.'

> It would conceptually be possible to
> have a uP that ran PIC code but stored instructions in eg 8 bit bytes.
This
> would need 2 fetches per instruction (or 1.5 perhaps for a 12 bit core
> :-)). This is what most "traditional" processors do. This would be slower
> and make PIC type jumps rather terrible to handle. Stating the wider code
> space in 8 bit bytes points out one feature of their design.

Unless you use 16 bits per instruction (to align the PIC-code with the PC
memory-storage sceme) and disregard the upper 2 bits (That's what I do in
my software concerning 14-bit PIC's :-)

> On the subject of bits per byte - there was a long thread on this in
> PIClist a few months ago. Some US navy types noted that they are still
> using computers with "bytes" much larger than 8 bits.

I remember Bits, Bytes, Nibbles ... It sounded rather tasty :-)

Greetz,
 Rudy Wieser

1998\07\10@072703 by paulb

flavicon
face
Caisson wrote as an aside:

> Does anyone know how the smallest storage-unit (aka a Bit in a binary
> system) is called in a Fuzzy-logic system ?  Just curious ...

 Perchance a "Fit"?

--
 Cheers,
       Paul B.

1998\07\10@085436 by Peter L. Peres

picon face
On Fri, 10 Jul 1998, Paul B. Webster VK2BZC wrote:

> Caisson wrote as an aside:
>
> > Does anyone know how the smallest storage-unit (aka a Bit in a binary
> > system) is called in a Fuzzy-logic system ?  Just curious ...
>
>   Perchance a "Fit"?
>
> --
>   Cheers,
>         Paul B.

Why, it's a "Fuzz", of course. Seriously, a Fuzzy Logic system is still
binary, but I'd like to know what you count in a neural network. Layers ?
Synapses ?

Peter

1998\07\13@064153 by Caisson

flavicon
face
> Van: Paul B. Webster VK2BZC <paulbspamspam_OUTmidcoast.com.au>
> Aan: @spam@PICLISTKILLspamspamMITVMA.MIT.EDU
> Onderwerp: Re: pic16f84 program memory
> Datum: vrijdag 10 juli 1998 13:24
>
> Caisson wrote as an aside:
>
> > Does anyone know how the smallest storage-unit (aka a Bit in a binary
> > system) is called in a Fuzzy-logic system ?  Just curious ...
>
>   Perchance a "Fit"?

By ways of simple deduction, my dear Watson. :-)

Live long and prosper ...

Greetz,
 Rudy Wieser

More... (looser matching)
- Last day of these posts
- In 1998 , 1999 only
- Today
- New search...