Você está na página 1de 53

8

ci
I:"-

'l! {)

:5 .;
;;; ..;

~
li)

'e o
oc:

."
'"
o

I
.li

:z:

o.

= o
= o<
o<

~ ~ 1 o
'0 li:

g ti :E
.li

'" ti '-li "...


ti

Q'

lQ

o<
~

g:
I

! oc:
'!

:z:

."

~ ti ~

:z: fii
U2

;j
lIo:I Q

li:

l! .!!

o<

~ :,
Ao

1: o
ti

~ o.

:E

:.

li

J
~ ti

A INTEIJGNCIA ARTIFICIAL EST AQUI


Programa do ms:

GABRIELA, UM COMPUTADOR
QUE APRENDE Para o Apple: , Calculadoras:

OBSERVANDO OS CEUS
Para o TI( 83/85: 'O PULO DO CAVALO

VMA SEO VOLTADA AS CALCULADORAS PROGRAMVEIS

A 111 Feira Internacional de Informtica conseguiu ser o maior evento j realizado na rea. Contou com a presena de representantes de diversos pases estrangeiros como Paquisto. Asempresas fecharam contratos para exportao e seus produtos e o pblico ficou, de certa forma, satisfeito. Como no ano passado, as empresas no deixaram de lado os brindes para cativar a ateno do pblico presente. As recepcionistas da Itautec, vestidas de moleque, nas cores azul e amarelo, distribuiram bonequinhos na forma de passarinho branco com chapeuzinho amarelo que lembravam o micra Itautec-JR. Os brochinhos, sacolinhas, adesivos e at mesmo pequenas agendas telefnicas fornecidas pela Xerox foram outras atraes que no faltaram nos cerca de 300 estandes da Feira. Uma atrao parte foram as esculturas existentes logo na entrada do Riocentro, uma promoo feita pela Embratel, graas ao talento de J.R. AlIegrettJ~funcionrio da empresa. Afora os brindes houve, como se

esperava, alguns inconvenientes. Logo no incio, quase que no teve exposio dos trabalhos realizados pelas universidades. Este foi um problema ocasionado pela no liberao de verbas por parte do BNDES, porm, de ltima hora, a poderosa IBM entrou em cena. liberou US$ 20 mil para a SUCESU, e as instituies de pesquisa puderam comparecer ao evento desde que mostrassem os projetos desenvolvidos em conjunto com a empresa. Muitas empresas apresentaram lanamentos ou inovaes em seus equipamentos. Houve uma grande preocupao, principalmente as maiores, em mostrar a imagem de empresa consolidada no mercado, principalmente profissional: Uma preocupao demonstrada pela IBM que levou a mesma concepo de seu estande na ltima feira. Um tnel da tecnologia com o tema "Tecnologia, Aqui, Agora e para o Futuro". Na maioria dos estandes as moas bonitas estavam sempre sorridentes

apresentando os equipamentos que ficavam disposio da curiosidade do pblico. Houve tambm inmeras palestras promovidas por empresas como Prolgica, SID, IBM, Serpro, Embratel, Jornal do Brasil, entre outras. Outra atrao presente na Feira foi o famoso Apple-Machintosh, que dej~ou muitos visitantes com gua na bOds, no somente pelo Apple, mas tambm pelos PC's americano presentes no estande da IBM. Os lanamentos foram em maior quantidade, mais uma vez, na rea de microinformtica (mais de 20). As grandes novidades foram os compatveis nacionais com os TRS-BOColor e os micros da linha de 16 bits, compatveis com o IBM PCxt. Alm dos micros algumas empresas trouxeram feira, as grandes novidades na rea de informtica: os super-micros e os mini nacionais. Por exemplo, a Cobra com o Cobra 480 e a Elebra com o VAX-750 nacional. ALA.

Novos equipamentos da linha TK


projetos do tipo Cirando da Embratel e da rede Videotexto. "Mais isto - acrescentou -, s ser possvel apenas depois do primeiro trimestre de 85, pois est dependendo da liberao de software especfico para este tipo de aplicao".

A Microdigital foi Informtica/ 84 com um dos maiores estandes da Feira (na forma de um disco voador) e vrios lanamentos, tanto em termos de hardware como de perifricos e software. Mas o seu grande destaque ficou a cargo de duas novidades: o TKS-800, compativel com o TRS-80 Color, que incorpora uma outra linha de micropessoal na empresa, e o TK-2000 li, compatvel ao TK-2000 I e que destina-se, principalmente, ao mercado profissional de microcomputadores, alm do rob dourado que recepcionava os visitantes. Os dois equipamentos foram apresentados juntamente com software e perifricos, objetivando dar um maior apoio tcnico ao usurio e dimensionar, qualitativamente, os equipamentos. No estande, a empresa mostrou os micros com o software Multicalc, uma planilha eletrnica que, segundo seu diretor de produtos, Paulo Rodrigues Lauand, equipara-se ao Supervisicalc e caracteriza um dos lanamentos, o TK-2000-1I,

como o micro profissional - Visicalc mais barato, disponvel no mercado nacional. Alm do Multicalc, a Multisoft uma das empresas do grupo - lanou programas como o Multifile, o MalaDireta e a srie Vestibular, um pacote de 20 programas educacionais. O TK-2000 11ser comercializado nas verses de 48 K e 128 K. Sendo que, tanto a verso de 48 K do 2000-11como o TK-2000 I, que possui 64 K, podero ser expandidos para 128 K atravs das expanses de memria que a estar colocando no mercado. Alm destes novos equipamentos, a Microdigital apresentou tambm, a interface serial RS-232 C. Esta interface permite a conexo dos dois micros a redes, assim como ir possibilitar a comunicao de dados entre micros, atravs de modem - que, conforme disse o representante da empresa, est em fase de desenvolvimento - ou de outros perifricos. Com o lanamento da RS-232 C, Lauand acredita que os micros da linha TK podero participar, assim, de

O novo micro TKS-800 foge da linha de produtos desenvolvidos at agora pela Microdigital. Compatvel em hardware e software com o TRS-80 Color, ser comercializado nas verses de 16 K e 64 K com opo de expanso de 16 para 64 K. Utiliza o microprocessador 6809; tem nove cores; sadas para monitor de vdeo profissional; impressora serial e para at dois joyststicks analgicos, alm de permitir tambm, a conexo de cartuchos e de comunicao mais especfica. O teclado, profissional, do tipo mquina de escrever com 55 teclas e traz incorporado a ele um comando duplo de RESET. Uma das interfaces apresentadas, foi desenvolvida especificamente para ele. Trata-se de um dsplay com sada RF PalM para televiso colorida. O TKS-800 atingir um mercado j bastante concorrido. Ele ir atuar juntamente com o CP-400, da Prolgica, na mesma faixa de mercado. Porm, conforme disse o diretor da empresa, "o micro possue uma qualidade diferente da dos seus concorrentes que a conexo com CP/M". O preo mdio da verso TRS-80 Color da Microdigtal ser aproximadamente 50% acima do preo do TK-2000. A.L.A.

Impressoras e supermini na Elebra

Embratel e Inteligncia Artificial


A Embratel esteve com fora total na Informtica/84. Durante a Feira, a empresa lanou comercialmente o servio REMPAC - Rede de Comunicao de Dados por Comutao de Pacotes. Em sua primeira fase, o servio funcionar com cinco dos oito centros de comutao - Rio de Janeiro, So Paulo, Belo Horizonte, Braslia e Curitiba. Segundo o presidente da Embratel, engenheiro Helvcio Gilson, colocar ao alcance das pequenas e mdias empresas os benefcios da teleinformtica o objetivo do servio REMPAC. Ele explicou que as tarifas sero aplicadas de acordo com o tempo de utilizao dos canais REMPAC e de acordo com a quantidade de informaes utilizadas, o que reduzir os custos, democratizando as comunicaes de dados no pais. Os servios da REMPAC podero ser acionados, atravs de terminais de dados inteligentes e com canais especi~ ficos via rede telefnica ou via telex. E possvel interligar, um terminal operado em Modo Caractere, a 1200 bits por segundo, a uma porta de um computador operando a 4800 bits por segundo em Modo Pacote. Outra novidade da Embratel, apresentada na Informtica/84, foi o projeto de Inteligncia Artificial, que provocou muito interesse. "Ol, como vai? Fico muito contente com a oportunidade de conversarmos." Este um dos tipos de dilogo que o computador dotado de inteligncia artificial pode manter com o usurio. A tecnologia do processador natural de linguagem, ainda em testes, est sendo desenvolvida desde janeiro pela Embratel, em convnio com o Instituto de Nutrio da Universidade Federal do Rio de Janeiro. O primeiro programa, mostrado durante a Feira, um Orientador Nutricional. Segundo o chefe do DPD da Embratel, Mrio Pinto da Luz, dotar um computador de inteligncia artificial o primeiro passo para o pas provar que possvel desenvolver tecnologia atualmente disponvel apenas para os pases industrializados. F.F.

Sistema MX 850 foi o primeiro produto da Elebra Computadores, lanado durante a Informtica/84. O sistema MX 850 um supermini computador de 32 bits projetado para utilizao em processamentos de dados nas reas industriais, cientficas e comerciais. Seu sistema operacional VMS suporta, simultaneamente, processamento em tempo parfilhado, interativo, em lotes e em tempo real. O MX850 tem espao enderevel a 4 Gigabytes. O tamanho fsico de sua memria varia de 1 a 8 Megabytes, permitindo que uma grande variedade de aplicaes seja processada ao mesmo tempo. O sistema MX850 oferece ao usurio todos os benefcios de hardware e software para a arquitetura de redes pblicas, locais e internacionais, e ainda de conexo a sistemas de maior porte,como IBM, CDC, entre outros. Atravs de redes, processadores isolados ou sistemas mltiplos configurados em c1uster, podem trocar mensagens, transferir arquivos, atualizar registros em banco de dados, alm de executar programas e partilhar recursos de perifricos e processadores, de forma transparente ao usurio e ao programa. O MX850 pode utilizar os seguintes aplicativos entre outros: Datatrive, manipulador de dados e relatrios; RMS, arquivos indexados, seqenciais; DBMS, banco de dados codasil; RDB, banco de dados relacional; FMS, gerenciador de telas. O MX 850 um supermini de tecnologia digital, fabricado aqui no Brasil atravs da transferncia de tecnologia, conforme determinao da SEI, e sua comercializao ser iniciada em janeiro do prximo ano. A Elebra Informtica tambm fez trs lanamentos durante a Feira. Foram apresentadas as impressoras Mnica Plus; Alice 9051 e a EI 8035. A Elebra Telecom tambm esteve presente mostrando o sistema de controle distribudo MAX/SD. F.F.

Versacad: lanamento da Comicro


A Comicro lanou na Feira de Informtica o produto que est sendo considerado a menina dos olhos da empresa:o Versacad, um software onde o computador ajuda no desenho de projetos. Este novo software pode ser aplicado a todos os projetos que envolvam a necessidade de desenho, como na engenharia mecnica, arquitetura, engenharia civil, estatstica, etc. O Versacad funciona para todos os micros compatveis da linha Apple e IBM~PC e j est sendo comercializado desde julho, embora s agora na Feira Informtica'84 tenha sido lanado diretamente ao mecado. A Comicro distribui com exclusividade o Versacad no Brasil e est trazendo tambm outros softwares da linha CAD. O lmages 2 D, programa destinado ao clculo estrutural, e o Bil of Materiais, quantitativo de materiais que foram utilizados no projeto, ambos interligados ao Versacad. Segundo representantes da empresa, a Comicro detectou no mercado a necessidade que engenheiros e profissionais das reas envolvidas com desenhos e grficos tinham de encontrar software disponveis que pudessem acelerar seus trabalhos. O Versacad tem um manual em portugus, traduzido pela Comicro, elaborado por profissionais de documentao, atravs do qual qualquer pessoa pode oper-Io sem a presena de tcnicos. F.F. O microcomputador mega 4000 foi lanado pela Omega durante a Feira de Informtica do Riocentro. O MPC 4000 compatvel com o IBM/PC e sistemas compatveis da linha Apple. Sua unidade central possui memria RAM de 256 kBytes e memria ROM de 40 kBytes; interface paralela e seria I assncro-

na.
O MPC 4000 conta com 5 slots de expanso para unidade de di,sco rgido ou flexvel; impressora paralela; impressora serial ou outro computador (RS 232); Winchester de 5/10 Mb e modem. Tem tambm acionador de discos flexveis dupla face, dupla densidade e capacidade de 320/360 kBytes. Tambm foi lanado pela Omega o terminal de vdeo VDX 100 e o microcomputador MC 400. O MC 400 conta com memria RAM de 64 kBytes, duas entradas de chaves para jogos, sada sonora e 8 slots de expanso. Possui at 14 unidades de disco (de 51/4 ou 8), vdeo de 80 colunas por 24 linhas, winchester 5 Mb, entrada analgica de 16 canais, sintetizador de voz, mdulo OM 8088 de 16 bits, mdulo Z80 e expanso de 128 kBytes com coprocessador aritimtico 8087. Como opo, o MC 400 faz conexo com microcomputadores e com minicomputadores nacionais funcionando como terminal inteligente. Tem como software aplicativos o supervisicalc; janela mgica; controle de estoque, contabilidade, mala direta e muitos outros.

F.F.

A LZ Equipamentos, segundo Luiz Antonio Zenobio da Costa, diretor tcnico da empresa, surgiu h dois meses como uma extenso da LZ Sistemas. O surgimento da nova empresa foi conseqncia dos projetos que vinham sendo desenvolvidos na rea de hardware. Junto com a LZ Equipamentos surgiu tambm os trs produtos que a nova empresa apresentou em seu estande. O Color 64, um micro compativel com o TRS-80 Color, o TPV - Terminal de Ponto de Venda e o CRC - Computador de Recursos (um perifrico que se destina a aplicaes educativas).

O Color 64 pode ser conectado com o projeto Cirando como um videogame, e ser utilizado em aplicaes que envolvam a linguagem LOGO em at 64 kBytes. A LZ Equipamentos mostrou, na feira, o micro comutado com outros micros atravs do CRC. Estecomutador foi desenvolvido com o intuito de agilizar qualquer mtodo de ensino que se utilize de um micro como instrumento complementar na educao. Como afirmou o diretor tcnico da empresa, o professor, atravs do CRC, pode unir at 11 micros de seus alunos com o seu, assim como pode ter tambm, 11 micros utili-

zando apenas uma nica impressora. O novo equipamento foi lanado j contando com o apoio da LZ Sistemas, que desenvolveu cerca de 12 software para aplicaes como: Sistema Dentista, Cadastro de Cliente e Empresas, Agenda Eletrnica, entre outros. J o TPV, um outro lancamento, destina-se a aplicaes que visam a resoluo dos problemas de estoques das empresas. Suas caractersticas tcnicas so: proteo contra queda de energia. podendo ser ligado On-line ao micro, em grupos de at 4 terminais, etc. A.L.A.

"Ultra", O Banco de Dados da Cincom


Com mais de 6 mil instalaes em todo o mundo, a Cincom uma softwarehouse independente que oferece solues a mais de 30 diferentes computadores e, pelo menos, 45 diferentes sistemas operacionais. Para a Informtica/ 84, a Cincom levou, entre outros, o NET/MASTER, que permite gerenciar uma rede empresarial como se fosse uma unidade singular. A rede pode contar com uma nica ou vrias CPU'S. O NET/MASTER, carro-chefe da empresa na Feira, fornece controle nico operador sobre um ambiente de rede de CPU local e aplicaes mltiplas remotas. Possui quatro componentes integrados: gerenciamento avanado de redes; integra(o de redes; processamento distribudo e suporte ao gerenciamento de dados, e comunicaes entre os sistemas. Outra novidade da Cincom, apresentada na Feira, o "Series One Plus", com quatro programas: O "Execu/ File", que permite processar, recuperar, expor arquivos individuais e entrar ou recuperar dados sem ter conhecimentos de programao; O "Execu/Writer", que edita, organiza e faz o layout de toda a correspondncia, incluindo memorandum, cartas, comunicados tcncos e documentos; "Execu/ Model" que permite a construo de modelos de spreadsheet facilmente e com perfeio. E indicado para orar e processar projees volumosas, projetar c.ontasa pagar e receber outros planejamentos. O "Execu/ Reporter" seleciona informaes de qualquer programa e coloca-o em qualquer formato, alm de outras funes. O "Seris One Plus" tem ainda o "Execu/ Plot" ea Cincom oferece mais seis programas adicionais para informaes especializadas, como o "Series One Plus Financia!", que se dedica aos profissionais da rea financeira. A Cincom apresentou, tambm, seu novo lanamento ULTRA, o software de Banco de Dados interativo para o VAX. F.F.

Informtica/84 realizado no Riocentro, Rio de Janeiro foi, como muita gente esperava, um espetculo estupendo. A feira ocupou todos os pavilhes (com mais de 300 expositores) e foi dividida em setores. O Congresso teve uma freqncia calculada em aproximadamente 5000 participantes contando com cerca de 350 painis, envolvendo palestras, seminrios, debates, entre outros.
Com o tema "Onde Estamos? Para Onde Vamos;>" a SUCESU - 'Nacional apresentou o XVII Congresso Nacional de Informtica. Uma das promessas feitas pelos organizadores - 18 terminais espalhados em diversos locais, com a inteno de evitar filas - no foi cumprida, pelo menos nos primeiros dias, quando muitos congressistas perderam palestras, pelo fato de estarem nas filas tentando pegar seu material e crachs. Outra promessa, de 40 recepcionistas foi cumprida em parte, pois estas nem sempre tinham condies de responder s perguntas do pblico, por falta de informaes. Mas tirando os contras, o Congresso de Informtica este ano, em relao aos anteriores, foi o que apresentou o maior nmero de atividades. Nos primeiros dias, algumas palestras foram canceladas. Seces como s destinadas a temas relacionados a influncia e conseqncias do uso da informtica na sociedade tiveram pouca receptividade. Porm, as sees tcnicas, as conferncias internacionais e as palestras que envolviam temas acerca da formao e reciclagem profissional foram, como se esperava, as mais freqentadas. Dentro das diversas sees apresentadas no Congresso de Informtica/ 84 algumas mereceram destaque por parte da Microhobby. Entre estas, ressaltamos quelas relacionadas a Reciclagem e Formao Profissional.

Proferida pela professora Ligia AIves Barros da UFRJ, a palestra" A Informatizao do Ensino" no teve um pblico muito grande. Foi constitudo, na maior parte, de estudantes e pedagogos. De incio, a professora destacou ser essencial, a partir da introduo do computador na escola, uma modificao na educao para que haja viabilizao deste uso no ensino. Ligia Alves Barros salientou que deve-se levar em conta a linha de pensamento da criana e, a partir da, traar-se o seu aprendizado. A professora afirmou que o computador deve ser encarado como um novo instrumento tecnolgico, auxiliar no aprendizado e de maneira,-alguma deve influenciar a maneira de pensar do individuo. Um otro ponto levantado pela professora nesta palestra foi o fator de que o suporte produzido (software) para tal finalidade -- o uso do computador na escola - ou desenvolvido por um informtico, que tem uma formao tcnica, ou por um pedagogo que, por outro lado, no possui conhecimento de informtica. Estes dois fatores, segundo ela, geram divergncias na aplicao da informtica no aprendizado. Conforme acrescentou Ligia Alves, esta divergncia ocasionada, muitas vezes, por um suporte baseado em softwares educacionais que trazem implcitos uma realidade educacional que no a brasileira e, muitas vezes, no levam em conta a linha de pensamento da criana. A professora Ligia Alves Barros concluiu no final, que preciso haver no processo de aprendizado, um agente que ela denominou de "catalizador". "O efeito qumico da catalizao tem como principal agente o professor, pois ele que viabiliza a 'reao qumica' do indivduo e a sociedade". E, conforme afirmou, o computador deve ser usado, se muito necessrio, como um instrumento auxiliar do professor e no como principal agente desta catalizao pois - concluiu - este no tem condices de passar pelas mesmas experircias sociais do indivduo. A.L.A.

Verbatim e o Manual de Operao


Considerado pela empresa como um-produto de tecnologia de vanguarda, a Microtec lanou durante a Feira de Infbrmtica o microcomputador XT2002. O equipamento, segundo a Microtec, foi concebido com o que h de mais avanado em hardware e software, tendo como principal caracterstica a integral compatibilidade com o microcomputador IBM-XT. O XT-2002 oferece soluces completas a diversas aplicaes, atravs de poderosos softwares operacionais, linguagens e pacotes multi-funcionais. Interfaces e placas de expanses elevam sua capacidade de processamento, multiplicando duas memrias RAM e magnticas e seus recursos de comunicao de dados entre diversos sistemas. O novo micro emula terminais IBM, terminais Burroughs e possui processamento em redes com outros sistemas XT-2002 e PC- 2001. O novo micro tem algumas caractersticas especficas tais como: memria ROM de 48 kBytes e memria RAM inicial de 256 kBytes; interface seriaI padro RS-232C para comunicao de dados ou impressoras, com velocidade de at 19.200 bauds; placa controladora de unidades de discos flexveis 5 1/4, com capacidade para controlar at 4 unidades de discos flexveis de 320 kBytes; placa controladora de unidades de discos rgidos, com capacidade para controlar at 4 unidades de discos tipo Winchester de 5 ou 10 mBytes. O XT-2002 O Que um disquete. Cuidados que voc deve ter ao manipular seu disquete. Como adquirir o modelo de disquete adequado ao seu equipamento. Estas so algumas dicas que o usurio da Verbatim encontra no manual de orientao ao usurio, elaborado pela empresa e que foi tambm distribudo na Feira de Informtica. Sem muitas novidades, a Verbatim colocou em exposio disquetes de 5 114 e 8 polegadas, alm de fitas magnticas. Seus produtos so fabricados em Manaus e a Verbatim d cinco anos de garantia ao comprador. Mas, para isso, no entanto, preciso ler com ateno ao Manual do Usurio. A Verbatim se responsabiliza apenas pelos defeitos de fabricao do disquete Datalife e no pelos que so conseqncia de um manuseio incorreto. F.F.

possui tambm monitor de vdeo monocromtico, fsforo verde, 12 polegadas, com reproduo da informao de cor com tonalidade de intensidades variveis, alm de 85 teclas com repeto automtica de caractres, contendo 10 teclas de funces e bloco numrico separado. . Alm do novo micro, a Microtec apresentou na Informtica/84 toda a linha de comunicao com o XT-2002, como a placa MEM LL, mdulo de memria de 512 kBytes, at 1 MByte de memria e processamento multiusurio. O MCOX, mdulo de comunicao coaxial, que capacita do PC-2001 e o XT-2002 a operar como uma estao local inteligente de mainframes IBM, emulando os terminais 3278-modelos 2, 3, 4 e 3279 - modelos 2A e 3A.

Prol6gica: Perifricos e micro de 16 bits


Foram vrios os lancamentos da Prolgica na Feira de Informtica, tanto em equipamentos como em perifricos e softwares. Uma das novidades a P500 grfica, nova impressora da Prolgica. A P500 grfica permite que um desenho grfico de alta resoluo possa ser copiado pela impressora sem a alterao da qualidade. As agulhas podem ser controladas uma a uma. Tem capacidade para fazer um programa para gerar qualquer tipo de grfico - de estatstico rea da engenharia - o que leva vantagem em relao s impressoras no grficas. E acoplada, tanto a uma sada paralela quanto a uma saida serial, aos CP300, 400 e 500 e a qualquer micro compatvel com a linha Apple. Possui disco rgido de 5, 10 ou 15 Mgbytes que permite um armazenamento maior sem a troca dos disquetes, o que til principalmente para cadastros e arquivos grandes. A P500 uma impressora pessoal e pode ser usada at com um super 700. O Sistema Profissional 16 um outro lanamento da Prolgica, que foi mostrado durante a Informtica/84. O SP 16 aproveita os softwares hoje existentes para o Sistema 700 e permite o aproveitamento dos aplicativos que rodam em 16 bits. O Sistema Profissional 16 dispe de um sistema operacional, o SO-16, que permite rodar o que h de mais atual no mercado e compatvel com o MS DOS. Possui um poderoso BASIC com recursos para gerao de grficos coloridos e sons. O equipamento aceita software para DOS 700, compatvel com CP/M 2.2, atravs de uma placa de expanso. O Sistema Profissional 16 pode atingir at 320 kBytes de memria RAM sem a necessidade de placas de expanso. F.F.

F.F.

A SID e a nova concepo de apresentao dos equipamentos


A SID levou feira este ano uma nova concepo na montagem de seu estande para apresentao de seus equipamentos. A principal preocupao da empresa foi mostrar ao pblico os projetos em desenvolvimento. Para isto dividiu seu estande em setores: microcomputadores, automao bancria, microcomputadores emulando terminais Bourroughs e IBM, produtos Sharp, multiusurio conectado rede de telex e os minicomputadores, alm de um auditrio para palestras. A empresa apresentou o projeto de seu terminal de ponto de venda, um concentrador de 16 bits para automao bancria que possui capacidade de suportar at 512 terminais financeiros, alm do projeto do supermicro multiusurio. Este tem capacidade de atender at 32 diferentes usurios, memria variando, modularmente, de 0,5 a 8 MBytes, e possui ampla capacidade de comunicao. Alm dos equipamentos, a SID preocupou-se em mostrar os servios existentes para seus produtos. A.L.A.

Suprimentos na BASF e a inaugurao de nova Fbrica


Dentro do programa de comemorao dos 50 anos do lanamento da primeira fita magntica, a BASF apresentou na Feira, um estande fechado e reservado para um pblico especfico. Logo de incio a empresa patrocinou o coquetel de lanamento do evento Informtica/84, assim como a divulgao do Congresso de Informtica atravs de apoio financeiro para a confeco de posters e cartazes. Porm, a atividade em que a BASF esteve mais fortemente presente foi no lanamento do slo comemorativo inaugurado pelo presidente Figueiredo na abertura da Informtica/84. O representante tcnico da empresa, LUlz Cabizuca, afirmou que o fato que mais meree destaque dentro das comemoraes dos 50 anos da apresentao da fita magntica o lanamento da fbrica de f!exidisk em Guaratinguet, So Paulo. Cabizuca disse que a nova unidade industrial da BASF ser inaugurada no prximo ano e possibilitar uma maior participao da empresa na rea, j que o primeiro projeto aprovado para a fabricao de flekidisks no Brasil. A.L.A.

Monitor e terminal videotexto da Splice


COMP-K 7 o novo lanamento da Splice que fez sucesso atraindo a ateno de muita gente, principalmente dos jovens, na Feira de Informtica. O COMP-K 7 substitui os cartuchos convencionais do ATARI por simples fitas para gravador cassete. A partir de janeiro, cerca de 25 jogos j estaro sendo comercializados em fitas K-7, em terceira e quarta geraes. Entre os jogos: Rock, War Games, Buck Rogers, River Rade, Jaxcon, Tarzan e Destructor, alm de Gorf, Basquet, Space Panic, etc. A Splice mostrou tambm seu novo terminal videotexto em duas verses: VR-1oo e V1-1oo. O modelo VR-1oo tem adaptador videotexto residencial, incluindo teclado remoto para ser ligado a um aparelho de TV em cres. E compatvel com o padro Antiope (CEPT) e utiliza 8 kBytes de memria de programas EPROM, com reserva para expanses e 16 kBytes de memria RAM que permite o .armaienamento das ltimas pginas recebidas, at 5 jogos de DRCS e versatilidade operacional. Conta com interface para impressora e interface para leitora de Cartes Magnticos. O V1-1OO uma unidade de videotexto institucional, composta com adaptador, com vdeo incorporado, incluindo teclado. O V1-1oo tem sada RGB para televiso em cores; sada para gravao e reproduo em K-7; teclado com controle remoto infravermelho. Permite edio em modo local com os recursos de movimentao de cursos, escrita de texto na tela, manipulao de atributos (tamanho da letra, cor de fundo, sublinhamento, criao de grficos utilizando mosaico separado ou junto e colocao de grade na tela para visualizaol. Foi lanado ainda pela Splice o Splicevdeo, monitor de vdeo em duas verses: o MVB-7oo, em preto e branco e o MVC-7oo, em cores. F.F.

Perifrioos: uma presena marcante na feira


Uma das empresas que apresentou duas novidades em impressora foi a Ecodata. Em seu estande, a empresa mostrou a EL-8OOQ - impressora hard-copy e a EL-8105lanada na feira. O maior destaque de seu estande foi a EL 8105 que tem velocidade de 6 cps, cabea de 9 X 7, grfica e possue resolues grficas de 62,7 at 166,6. Segundo Reynaldo Joo Zemella, gerente de marketing, a EL-8105 ser comercializada com um preo mdio de 140 ORTN e j encontra-se disponvel com entrega prevista para 90 dias a partir da compra. A EL 8105 possue controle por microprocessador, escrta bi-direcional, imprime em diversos idiomas e pode desenhar, fazer grficos, reproduzir qualquer imagem que o micro produzir em seu vdeo, alm de outras caractersticas. J a outra impressora apresentada no novidade, pois foi lana da em julho e est sendo comercializada em torno de 160 ORTN. Suas caractersticas principais que ela possui duas interfaces (serial e paralela), utiliza papel de formato contnuo, soltos ou bobinas. Possue 6 cps de velocidades, resoluo de 62,7 at 166,6 alm de 103 diferentes tipos de escrita. A. L.A.

Atraces . americanas da H.P.


A Hewllet-Packard trouxe novidades para a Informtica/84 que deixaram seu estande completamente lotado durante os sete dias da Feira. Os micros HP 11e HP 150, lanados nos Estados Unidos, foram trazidos apenas para exposio, j que no podem ser comercializados devido a Lei recm aprovada que protege a indstria nacional. O HP-110, com impressora e disquete, porttil e opera bateria. Usa INTEL 80/86 de 16 bits; c10ck de 5.3 Mhertz, possui memria RAM de at 272 K e memria ROM de 384 K. Na memria ROM j esto includos 4 programas: Lotus 1, 2, 3, que um programa tipo visicalc; memomaker (processador de textos); emulador de terminais, podendo ser ligado a equipamentos maiores e o sistema operacional MS DOS. O HP 110j vem com um modem e sua tela de cristal lquido de 80 colunas por 16 linhas. O micro aceita toda a linha de perifricos da HP. Para ele, no entanto, foram desenvolvidos 2 perifricos especficos: impressora a jato de tinta, operada bateria com 150 CPS (2 K 112) e unidades de discos de 31/2 polegadas com capacidade de armazenamento de 710 K por disco. O HP 150 possui proce5sador 80/ 88 INTEL e c10ck 8 Mhertz, 256 K de memria RAM, podendo ser expandido at 640 K e MS DOS. O micro usa um visor de alta resoluo de 512/390 pontos'. sensvel ao toque, bastando ao usurio encostar o dedo na tela para acio'1ar a mquina. Tanto o HP 150 como o HP 110 so compatveis com o IBM/PC. Outro lancamento da Hawleet Packard o analisador de protocolo 4951 A, que opera por unidade de fita K7. O 4951 A no tem similar e serve principalmente para detectar problemas de comunicao de dados nas linhas entre computadores e terminais. F. F.

Proteja seus olhos


Consiga em sua TV de 12 o mesmo efeito dos monitores de vldeo mais sofisticados.
H

..
.~"

..... -,

Novos QI's apresentados pela Quartzil


A Ouartzil apresentou dois novos produtos na feira. O primeiro, o microcoleto r de dados. Chamado de 01-200, o microcoletor caracterizado pela empresa como um microcomputador porttil destinado a aplicaes como leitura de medidores de gua, luz e gs e tambm no apontamento de mo de obra. Suas caractersticas tcnicas principais so memria RAM de 2 kBytes, memria EPROMem 16 kBytes montados em cartuchos contendo, sistema operacional, a aplicao e os dados a serem coletados. O micro porttil pesa 1,2 kg, possui 290 mm de comprimento e 140 mm de largura e pode ser alimentado com 4 pilhas alcalinas de 1,5 V com opo de eliminador de pilhas. Alm do microporttil, a Ouartzil . apresentou o 01-900, um micro profissional destinado a aplicaes comerciais como sistema de gesto de vendas, sistemas de controle de financeiras. O 01-900 tem memria de vdeo com capacidade de gerar telas de 27 linhas de 100 caracteres, possue microprocessador "c1ock" de 4 MgHz, um conjunto de 158 instrues de mquina, compatveis com o 8080/8085, 19 registradores e memria de 64 ou 128 KBytes de RAM e 40 kBytes de memria EPROM. A.L.A.

Microtela um filtro anti-reflexo facilmente adaptvel ao seu TV, composto por uma tela poliester montada sobre base de acrflico, fornecido nas cres verde ou ambar para TV's preto e branco e incolor para TV colorida. O ofuscamento causado por quaisquer fontes de luz do ambiente refleti das na tela e o cansao visual natural ap6s um perlodo mais longo de utiliza o do seu micro so totalmente eliminados. Microtela proporciona uma soluo barata e efetiva para o "problema" que est tirando o seu prazer de programar.

Master Sti ng Ltda. Caixa Postal 18708 So Paulo - SP

EDITORIAL
o tema interessante e apaixonante. Tanto que ns j falamos dele mais de uma vez (lembra-se do artigo "Podem as Mquinas pensar?"). O assunto, longe de se esgotar, est ainda no seu incio, pelo menos aqui no Brasil, e, por este motivo, optamos por dedicar este nmero Inteligncia Artificial. E no sem razo. Notamos que no exterior o assunto j entrou no domnio do pblico, deixando at de aparecer nas pginas da imprensa no-especializada. Enquanto que, nas pginas da imprensa especializada, deixa-se de discutir possibilidades e problemas de ordem filosfica, para'passar-se a problemas de ordem prtica, como, por exemplo, onde a Inteligncia Artificial necessria, quais os aplicativos disponveis, etc. E o que temos no Brasil? Alguns artigos de carter informativo publicados em algumas revistas especializadas, algum trabalho de pesquisa em Universidades e Faculdades isoladas, nem sempre divulgado (melhor: quase nunca), alguma fico cientfica e s. Diante disto, resolvemos fazer o que estava em nosso alcance: mostrar ao pblico leitor da Microhobby que alguns princpios da inteligncia artificial no so to difceis de compreender. Que um computador pessoal como o TK 2000 (ou mesmo do TK 83/85, conforme demonstramos no programa Carta, publicado na revista 12), pode ser "inteligente", rodando determinados programas. A Inteligncia Artificial est a, sua frente, na forma de um computador pessoal. Ser que ele "pensa'? Acreditamos que agora esta pergunta no tem sentido, pelo menos tecnicamente falando. Quer seu computador pense ou no (e a resposta afirmativa depende apenas de como definimos "pensar"), ele capaz de fazer algumas coisas que, s vezes, o deixam um pouco perplexo, coisas que parecem estar alm daquilo que se espera dele. Isto depende apenas da habilidade do programador que "ensina" certos "truques" para mquina; truques estes que podem ser, ou no, considerados programas de inteligncia artificial. O que importa a criatividade que, somada tcnica e honestidade de propsitos, s pode trazer benefcios.

Indice

Artigo
Gabriela, o computador que aprende . . . . . . . . . . . . . . . . . . . .. 20

Micropress .. . . . . . . . . . . . . . . . 3 Editorial . . . . . . . . . . . . . . . . . . . . 8 Cartas 10 Desgrilando . . . . . . . . . . . . . . . .. 12 Livros . . . . . . . . . . . . . . . . . . . . .. 54

Calculadoras
Curso de programao da HP 41 29

Analisando
Planilha Analtica . . . . . . . . . . . .. 48

Seo Didtica
Observando os cus . . . . . . . . .. 32

Artigos
Operaes usando Assembly Inteligncia Artificial 15 46

Programas
O pulo do cavalo Teoria das Filas Cara ou coroa (um programa inteligente para o TK 83/85) .... 36 42 44

Dicas
O INKEY$ para o TK 2000 50

Explorando o TK 2000
O TK DOS .. .. .. . . .. . .. .. . . . . 38

Por Dentro do Apple


Apresentando o Macintosh . . .. 26

Cursos
Curso de Assembly 51

Quebra Cabeas
A Torre de Vogel Criptoanagnose (resposta) 41 53
MICROHOBBY editada mensalmente por MICROMEGA PUBLICAES E MATERIAL DIDATICO LTDA., INPI 2992 Livro A Endereo para correspondncia: Caixa Postal 54096 - Fone 826-5001 CEP 01296 - So Paulo, SP Para solicitar assinaturas (12 nmeros) envie cheque nominal MICROMEGA P.M.D. LTDA., no valor de Cr$ 27.000,00. Tiragem desta edio: 30.000 exemplares MICROHOBBY 15 S permitida a reproduo total ou parcial das matrias contidas nesta edio, para fins didticos e com a prvia autorizao, por escrito da Editora. Os artigos e matrias assinaladas so de responsabilidade exclusiva de seus autores, no estando a Editora obrigada a concordar com as opinies a expressas.

Expediente
DIRETOR RESPONSVEL Paulo Lauand GERENTE GERAL Dijalma Peinado EDITOR lvaro A.L. Domingues . JORNALISTA RESPONSAVEL Ana Lcia de Alcntara - Mt. 14.495 EDiO DE NOTCIAS Ana Lcia de Alcntara REDAO E ANLISE Caio Marques Bulhes Rogria Gomes da Silva (secretria) Vivia R Bernardo Ana Luisa Mahlmeister (colaboradora) Solange Aparecid.a Menezes (reviso) ASSESSORIA TECNICA Flavio Rossini

Wilson Jos Tucci Aroldo Possuelo Carvalho Angel D. zaccatO Conesa DIAGRAMAAO Paulo Srgio CORRESPONDENTES New York - Flavio Rossini Rio de Janeiro - Ftima Frana PUBLICIDADE Aurio Jos Mosolino (supervisor) Eduardo Garcia de Souza ASSINATURAS Marcia Regina Dominiquini Marcos Lorenzi CIRCULAO Jos Aparecid.9 Bueno DISTRIBUIAO Fernando Chi!)aglia Distribuidora SI A COMPOSIAO E FOTOLlTOS Ponto Reprodues Grficas Ltda. IMPRESSO E ACABAMENTO Editora Parma Ltda.

CARTAS

Meu hobby preferido e Jogar Xadrez e, em 1979, fui campeo do torneio da Prefeitura de Poos de Caldas. Em novembro de 1983 tomei conhecimento do programa TKadrez 11 e comprei um TK 85, com 16 k, para observar como os micros jogam xadrez. A curiosidade em saber como o programa jogava me fez interessar-me pela Informtica e, a partir de maio de 1984, comprei vrios livros sobre BASIC e Assembly. Agora j comeo a por as "manguinhas de fora". Atualmente, continuo estudando Assembly com o objetivo de entender o TKadrez 11, que at agora continua indecifrvel para mim, apesar de j ter conseguido melhorar os letreiros. Agora, se vocs me permitirem algumas crticas sobre a nossa Microhobby, a partir da n? 10 observei que em cima do ttulo da revista no vem mais a frase: "A revista dos usurios do TK". E venho observando que a Microhobby est se diversificando, abrangendo informaes para vrias linhas de micros. Essa uma diretriz que coloca a Microhobby ao lado das vrias revistas existentes no mercado e isso faz com que os assinantes se desinteressem em assinIa, j ,que ser mais eficiente folhear v-

rias revistas antes de optar pela qual vai comprar, pois todas elas dedicam grande parte editorial aos usurios do TK. Neste momento, estou folheando a Microhobby n?12 com um pouco de decepo, porque tenho em mos uma bela revista, mas com fraco contedo.
(,

tempo, teramos um mapa completo da ROMdoTK. Marco Daniel de Barros Accioly Poos de Caldas - MG

.. )

Como meu nico objetivo ajudar a construir uma Microhobby cada vez mais forte, aqui vos algumas sugestes: aI A seo Dicas muito boa e poderia ser aumentada. b) Programas do tipo "ferramenta", como o Merge, so bem recebidos. c) Pequenas modificaes eletro eletrnicas, tais como: inverso de vdeo, alimentao do TK com bateria de carro, etc., tambm so bem recebidas. d) O curso de Assembly, .que um resumo do livro Linguagem de Mquina para o TK, de Flvio Rossini, deveria ser substitudo por artigos e programas em Assembly. e) O Curso de BASIC deve continuar, porque as aulas esto mais ao alcance do grande pblico. f) Anlise das rotinas da ROM do TK so de grande interesse. O ideal seria a publicao de, pelo menos, uma rotina analisada por nmero e, com o

o tema principal desta revista a Inteligncia Artificial, assunto de grande interesse aos nossos leitores. Nessa cincia esto os princpios que nortearam a construo de vrios programas jogadores de xadrez, entre eles o TKdrez 11, fabricado pela Microsoft. Programas como o Gabriela, Carla, Damas, publicados na Microhobby, so bons exemplos desta tcnica em ao e o ajudaro a entender o que se passa em seu computador quando voc jogar xadrez com ele. Voc acha que um provvel assinante no optar pela Microhobby por ela no ser inteiramente voltada para o TK e compativeis. Nossa experincia demonstra o contrrio: o nmero de renovaes de assinaturas foi muito alto e o de novas assinaturas tambm. Alm disso nossa presena nas bancas tem sido bastante efetiva, crescendo a cada dia.

10 MICROHOBBY

A revista que voc disse estar fraca tinha um interessante programa que poderia ensinar-lhe alguma coisa sobre inteligncia artificial e, portanto, compreender mais sobre o TKadrez 11.Trata-se do programa Carfa que nos consumiu muito tempo de preparo. Este programa simula um dilogo inteligente entre o psicanalista (micro) e seu paciente (usurio), e o micro utilizado foi um TK85. Nesta edio, publicamos outro programa que "aprende" a jogar: o Gabriela, qu.e foi desenvolvido para TK 2[X)(), mas que tem sua estrutura minuciosamente descrita e permite ao leitor um melhor entendimento de como se faz este tipo de programa.

Sou assinante desta revista e, apesar de o ser h muito pouco tempo, tenho acompanhado a sua publicao desde o primeiro nmero e percebe-se durante a sua tragetria, um aumento indiscutvel do seu contedo e, consequentemente, do nvel da revista. O tratamento que vocs passaram a dar a outras lgicas, que no a dos compatveis com o TK 85, eu acho vlido. Apesar de possuir um TK-85, entendo ser necessrio o conhecimento de outras linguagens, para aumentar nossa integrao neste universo to vasto que o da Informtica.

Tambm a incluso de novas sees e o aprimoramento das j existentes contribuiram para uma melhor qualidade da revista. Em particular aho muito interessante as sees "Dissecando" e "Vice-Versa"; a primeira pela excelente qualidade e a segunda pela utilidade, podendo ser usada como ferramenta para nos auxiliar na converso de programas de uma linguagem para outra que melhor nos convenha. A variedade e a qualidade dos programas tm melhorado muito, indo desde aplicativos como "Dinheiro no Tempo" at os de lazer, como o excelente Carla. Isso prova o esforo e a dedicao de vocs no sentido de elevar o nvel da revista "Microhobby" o que, acredito, vocs podem conseguir mais. Mesmo assim, gostaria de fazer algumas sugestes e observaes que me parecem viveis no momento: - Incluir mais vezes as Tradues para o BASIC TK; - Continuar com as dicas: elas so utilssimas. - Incluir, sempre que possvel, nas sees "Por dentro do Apple" e "Os Oitenta", listagens com programas equivJentes para o TK 83/85 e uma comparao entre elas. Jos Eduardo Zanardi So Carfos - SP

Agradecemos as suas sugestes, bem como os elogios. As sees que voc indicou aparecero sempre que se fizerem necessriase, se o interesse dos leitores por elas for significativo, faremos o possvel para torn-Ias regular.

Escrevo para congratul-Ios pelo excelente software desenvolvido na revista Microhobby. Refiro-me, especialmente, ao programa CarJa,publicado na revista nmero 12, que "rodei" em um TK-85 de um amigo. Mas sou possuidor de um Apple e no consegui fazer o mesmo rodar no meu computador. Benedito Campos Lima Jnior So Luiz - MA

o programa Carfa, da forma como foi apresentado, utiliza-se das funes de "fatiamento de strings" do TK 85, que tem uma forma particular, diferente das do Apple ou do TRS-80. Na revista nmero 7, mostramos como isto ocorre, no artigo "Um Editor de Cartas". De qualquer forma, vamos estudar a possibilidade de escrever uma adaptao para o Apple e para o TK 2000, ou para o TRS-80.

PROTEJASEU
M/eRO

LANAMENTO
Terminal com teclado profissional tecnologia ITT compatvel com toda linha Sinclair NE e TK. Teclado com feed-back tctil com todas as funes gravadas na prpria tecla. Caixa em ABS expandido 6 mm de espessura pronta para receber seu micro computador com todas as interligaes instaladas. Acompanha manual para montagem com opes de fixao da fonte internamente ou usando externamente. Sadas: Expanso memrialimpressora Fonte externa ou interna Rede Gravao EAR/MIC Chave Liga/Desliga Chave 110/220 VaC Joystick INTERCOL IND. E COM. LTDA.
Deplo. Vendas fone: 456.3011 Av. Alda, 805 . Diadema (Centro)

CONTRA:
. PICOS DE VOLTAGEM - TRANSIENTES DE TENSO - RuDO ELTRICO -INTERFERNCIA: RDIO FREQNCIA (RF) POTNCIA: ATINGE AT 1,5 KVA TENSO: 220 V ou 110V

ELETRONICA,INDSTRIA E COMRCIO LTDA. NO BREAK ESTABILlZADORES DE TENSO

Av. Vitor Manzini. 410/414 CEP 04745 - Santo Amara - S. Paulo Tels.: 011) 522-2159 e 548-0651

Uno., tia Fauiicao:


Chaves comutadoras reclas e tecladOS sem i profiSSIonais Teclas e teclados profiSSionaIS

(. .. ) Sou possuidor de um TK2000 e queria saber como implementar a funo INKEY$ no mesmo. Fawzi Mikhail Abd el Sayed Volta Redonda - RJ As instrues que voc aponta como sendo do Apple e no do TK 2()(J(), na realidade, pertencem ao conjunto de instrues de ambos os computadores. A instruo SCRN fornece a cor de um determinado ponto na tela e a instruo POP faz com que uma sub-rotina, ao invs de retomar ao programa principal, execute a prxima sub-rotina, ou linhas de programa que lhe so posteriores. As dicas para adaptar essesprogramas sero fornecidas paulatinamente, a medida que forem surgindo oportunidade para isso. No momento, aconselhamos a tomar cuidado com PEEKs, POKEs e programas que envolvam grficos. Por outro lado, os programas para o TK 2()(J() sero cada vez mais freqentes em nosas pginas.

O artigo que publicamos na Microhobby n~ 10 tratava de compatibilizao entre TK 2000 e Apple e os conselhos dados eram relativos adaptao de programas de uma linha para outra. De qualquer forma, programas que ocuparem mais de 6 kBytes, com telas grficas, devem sofrer as modificaes citadas. Quanto aos jogos da Microsoft ou de qualquer outro fabricante, voc no precisa preocupar-se em cham-Ios na pgina adequada, uma vez que isto est "embutido" no prprio software. Em relao ao programa "Minidata" nada podemos responder, uma vez que no o conhecemos. Sugiro que voc escreva para a Editora Abril, procurando solucionar seu problema.

Informamos a voc, bem como a todos que nos tm escrito sobre o INKEY$ no TK 2()(J(), que esta pergunta foi respondida em duas oportunidades: uma na revista 13, na seo "Desgrilando", onde resolvemos o problema com uma pequena sub-rotina em linguagem de mquina; outra na revista 15, na seo "Dicas", onde um leitor descobriu o endereo PEEK (39) que fornece um valor diferente para cada tecla pressionada, embora diferente do cdigo ASCII. Uma pequena converso resolve o problema.

Sou mdico e, para usar um microcomputador no consultrio, optei pelo TK 2000. Consegui faler vrios programas (o manual de instruo muito claro, auxiliando muito, pois mesmo sem curso de BASIC consegui fazer vrios programas), mas tive dificuldade de gravar dados em fita (como DSAVE e DLOAD do TK 2000). Sei que isso possvel atravs de uma sub-rotina em linguagem de mquina, que seria comandada pelo BASIC (. .. ) mas como tenho o micro s6 desde junho, e no tenho nenhuma experincia de programao, tentei e no consegui. Assim, apeIo para "Explorando o TK 2000" para conseguir a soluo. que a Microhobby a revista ideal para apoiar os possuidores de TK 2000 e a se "Explorando o TK 2000" uma magnfica idia. Como a similaridade entre o TK 2000 grande, sugeriria que, no "Por Dentro do Apple" viesse tambm uma indicao de como alterar esses programas para "rodar" no TK2000. Joo Jos de Araujo Moura Filho Rio de Janeiro - RJ

.. ) E indiscutvel
(.

Inicialmente gostaria de congratul-Ias pelos timos temperos dessa deliciosa revista Microhobby. Desejaria saber, tambm, se possivel, para ns leitores, alterar alguns programas publicados na Seo "Por Dentro do Apple" de forma que possam ser rodados num TK 2000 pois, segundo o manual e tambm um artigo mostrando as diferenas entre o Apple e o TK 2000, publicado na Microhobby n~ 10, existem basicamente trs comandos tlN, PR, FLASH) que so executados num Apple e no no TK 2000. Todavia, num programa recente da Seo "Por Dentro do Apple" (Disco Voador, Microhobby n~ 12), encontrei dois comandos (SCRN e POP) que no existem no TK2000. Em suma, como seria possvel adaptar os programas da Seo "Por Dentro. do Apple" para suplementar a escassa safra de programas para o TK 200Q? Edgard da Veiga Lion Neto So Paulo - SP

Solicito que a Microhobby me auxilie esclarecendo as seguintes dvidas com relao ao TK 2000: 1) Li na Microhobby n~ 10 que, para programas com mais de 6 kBytes, deveremos usar a segunda pgina de vdeo. Acontece que, antes de ler tql artigo, havia digitado um programa com 12 k sem apresentar nenhum problema. O que aconteceu? 2) Quanto aos jogos da Microsoft que possuo, todos com mais de 6 k, devo cham-Ios em qual pgina. 3) Considerando que o Ml' permite o acesso a 38 k de RAM, como poderei digitar programas como o apresentado na coleo "Enciclopdia Prtica de Informtica", Minidata, para computadores de 64 k, e indica o TK 2000 como um dos que aceitam tal programa? Cludio C. A1vesde Moura So Paulo - SP

Em primeiro lugar agradecemos, em nome do professor Tucci e seus colaboradores, os elogios que faz seo "Explorando o TK 2()(J()". Quanto sua pergunda, informamos que existem duas instrues especficas no TK 2()(J() destinadas manipulao de dados em fitas: STORE e RECALL, que esto descritas no manual do TK 2()(J() na pgina

113.
Estas instrues so especficas para gravao ou leitura de matrizes numricas. Como se trata de matrizes numricas, elas devem ter sido pr-dimencionadas (pela instruo DIM) antes da gravao e antes da leitura.

A instruo STORE armazena em fita o contedo de uma matriz numrica. Suponha que voc tenha uma srie de dados a ser armazenados, por exemplo, 200 flUmeros quaisquer. Voc poder, por exemplo, colocar estes valores numa matriz de 10 x 20 nmeros. Assim, no incio do programa, para evitar redimencionamento, coloque a seguinte linha:

A matriz poder ter qualquer nome, e quaisquer dimenses, desde que comporte o nmero de dados que voc deseja armazenar. Em algum ponto do programa, voc deve carregar os dados na matriz A. No final do programa ou onde julgar conveniente, acrescente a seguinte linha:

mando MOTOR. A maneira correta de utiliz-Io est descrita na pgina 114 do manual do TK 2000. A sua funo ligar e desl7gar um dos gravadores por meio de sua entrada REMaTE. Assim, voc poder deixar o gravador no modo "REC", conectar o cabo apropriado na entrada REMaTE e comandar a sua ligao por meio de MOTOR " se o REMaTE do gravador estiver conectado entrada A, ou MOTOR3 se o REMaTE do grav.ador estiver conectado na entrada B. E necessrio o uso de uma pausa devido inrcia do circuito. Por exemplo, supondo que a instruo STORE est na linha 100, acrescente as seguintes instrues: 95 MOTOR 1 96 FOR I = 1 TO 100: NEXT I lOOSTOREA 101MOTOR() 102FOR I = 1 TO 100: NEXT I A linha 95 liga o gravador A, a linha 96 executa um loop vazio para permitir uma pausa, a linha 100 carrega a matriz em fita, a linha 101 desliga o gravador A (se estivssemos usando o gravador B, deveramos usar MO TOR2) e a linha 102 executa um loop vazio, originando uma

pausa antes da continuao do progra-

ma.
A instruo RECALL l uma matriz gravada em fita, previamente gravada por uma instruo STORE. As dimenses devero ser as mesmas, mas o nome da matriz poder ser outro. Se voc, por exemplo, desejar recuperar a matriz gravada pela instruo STOREdo nosso exemplo, poder faz-Io da seguinte forma: a) dimensionar a matriz no comeo do programa com as mesmas dimenses do programa anterior (ou, na melhor das hipteses, com a ltima das dimenses maior que a do programa anterior):

b) carregar, da fita, a matriz no computador por meio da instruo RECALL, estando o gravador funcionando no molo "PLAY": 100 RECALL D. c) dar prosseguimento ao prograDa mesma forma que utilizamos no programa anterior, poderemos nos utilizar do comando MOTOR, facilitando o trabalho com a fita.

As letras "n" indicam que pode ser um nmero qualquer de linha. EvidentejTIente, o gravador dever estar rodando no modo "REC". Voc poder incrementar esta operao usando o co-

D-Iheum

0p~~eae'el~
ter:
Vantagens:
O Maior dinamismo na entra(ja de dados O Vida til maior que 2 milhes de operaes 0 IJm teClado profissional com switches individuais e acionamentmecnico O GabinetenfFiber-Glass que suporta vdeo de 12 polegas e acondiciona expanso e fonte. . .
j;Yi
> _ _ ._

.. micro,

speed Eletr~Eletrnica

lida. - Rua I (i) ~ n? 395 - Bernardo Monteiro - 32.000 -Contagem- MG Caixa Postal 1036 - Tel: (031) 463-3171 - 351-1887
'.

Operaes Aritmticas no TK 83/85 usando o Assembly

A maioria dos clculos necessrios em rotinas escritas em linguagem de mquina so feitas usando simplesmente os registradores disponveis. Desta forma, com apenas um registrador, podemos manipular nmeros entre 0 e 256. Aproveitando o recurso da CPU, interligando dois registradores para formar um par, temos f possibilidade de realizar clculos com valores entre 0 e 65535. Colocando o resultado no par BC, podemos imprimir este nmero usando o comando:

Rgura3 Exemplo: somar 38510 com 40000 LD HL, +38510 LD BC, +40000 ADDHL,BC LDB;H LDC,L RET 21 01 09 6E 96 40 9C

44
4D

C9

dar aps PRINT USR 16514 o valor 12974 (m. Na figura 3 temos um exemplo prtico do que foi falado anteriormente. Como o resultado ultrapassou o valor 65535, o nmero na tela representa a diferena entre o resultado real menos 65636 (o nmero 65636 ser impresso como

o exemplo
nmeros.

da figura 1 demonstra como podemos somar dois

01.

LD HL, (nmero) LD BC, (nmero) ADDHL, BC LDB,H LDC,L RET

210000 010000 09

44
4D

; soma os nmeros ; transfere o resultado para BC ; retorna ao BASIC

65535 65636 65637 78510

. . . .

65535

1 12974

C9

Isto demonstra que, colocando valores relativamente pequenos em HL e BC, obtemos o resultado na tela com o comando PRINT USR 16514. O resultado corresponde sempre ao valor correto quando este no ultrapassar o limite mximo 65635 (figura 21.

ou ainda, expressando, esta "divergncia" do resultado numa frmula matemtica: Valor em BC = resultado correto INT {resultado correto/65536) *65536. O caso semelhante subtraindo, multiplicando ou dividindo os nmeros. Quanto a subtrao, as rotinas escri~ tas em linguagem de mquina no so complicadas, pois temos a nossa disposio OS mnemOnicos. SUB SBC (subtrao normal) (subtrao em observao do Carry-Flag)

LD HL, + 719 LD BC, +9310 ADD HL,BC LD B,H LDC,L RET dar aps PRINT USR 16514 o valor 10029

CF 02 5E 24

A multiplicao j complica um pouco mais, pois empregando apenas um mnemOnico podemos apenas realizar multiplicaes na base de 2 (*2, *4, *8 etc.1. Este mnemOnico o SLA A(shift left), que desloca todos os bits do acumulador A uma casa para a esquerda, que corresponde ao dobro do valor'inicial: A ='3 aps SLAA 00000011 (valor inicial) 00000110 (o valor agora 6)

14 MICROHOBBV

Assim, se quisermos multiplicar o valor 3 por 8, podemos escrever a seguinte rotina: 16514 LD A, + 3 SLAA SLAA SLAA 3E03 ; valor inicial CB 27 ; multiplica por 2 (3*2 = 6) CB 27 ; multiplicapor2(6*2= 12) CB 27; multiplicapor2(12*2=24)

Aps PRINT USR 16514 teremos o resultado 8, enquanto o resultado correto seria 8,5. O motivo evidente, pois "perdemos" o ltimo bit aps a instruo SRA A: antes: A = 17 00010001 APS SRA A 00001000 ( = 8) Podemos concluir, que somente nmeros pares podem ser divididos usando o SRA, pois no h condiOes de apresentar as fraOes. Expressando tambm esta deficincia numa frmula matemtica, temos:

e, para imprimir o resultado na tela, teremos ainda que carregar o par BC com este resultado: LD B,0 RET

LD C,A

0600 4F

C9

Se o valor no acumulador A, aps a instruo SLA, ultrapassar o valor 255, teremos novamente resultados irreais: Ex.: A = 201 11001001 aps SLA A 10010010 (= 146) Tambm aqui podemos prever o resultado, aplicando a seguinte frmula: Valor em A = resultado correto INT (resultado correto /256) *256 Para realizar multiplicaOes diferentes aos de base 2, podemos usar somas repetidas at chegar ao resultado final: Exemplo: multiplicar 83 por 7 16514 LD LD LD ADD DJNZ LD B,H LDC,L RET HL,0 DE, +83 B,7 HL,DE 44 210000 115300 0607 19 10 FD 44 4D C9 ; define o par HL-0 ; define o par DE com 83 ; B controla a quantidade das somas ; soma DE ao HL ; repete a soma at completar 7 loops ; carrega o resultado de HL para BC

Continuando com estes recursos, percebemos logo os limites dos mnemOnicos disponveis, principalmente quando queremos realizar clculos mais complexos, como extrair raizes, logaritmos ou outros clculos no campo da trigonometria. Voc seria, por exemplo, capaz de desenvolver uma rotina em linguagem de mquina, que eleva o valor 3,1506 na potncia de 5,01137 Para estes casos, est a nossa disposio o monitor do nosso micro, que contm vrias sub-rotinas especficas, facilitando clculos complexos. Estas sub-rotinas ocupam cerca de 3 kBytes dos 8 kBytes originais, e so acessadas com a instruo RST28. . Este mnemOnico RST28 significa "restart at 28", que leva a CPU a executar a rotina localizada neste endereo. a inicializao para clculos com ponto flutuante, e cada instruo aps RST28 ser interpretada como uma funo, e no mais como um mnemOnico usual. A nica instruo capaz de indicar ao micro que terminaram os clculos em ponto flutuante a instruo FIM (valor 34 em hexadecimal). Temos, portanto, a seguinte configurao usando RST28:

LANCAMENTO
I

Aps o comando PRINT USR 16514, teremos o resultado 581 na tela. Deve-se observar tambm aqui o limite mximo traado pelo nmero 65535. Da mesma maneira podemos, dentro dos limites j conhecidos, dividir nmeros usando o Assembly. Semelhante ao SLA para a multipl~cao, temos para a diviso o SRA A, que desloca todos os blts do acumulador A uma casa para a direita, dividindo, desta maneira, o nmero por 2 (figura 4). Exemplo: A = 16 apsSRAA A = 78 apsSRAA 00010000 00001000 (valor = 8) 01001110 00100111 (valor = 39)

Podemos observar que, neste caso, no precisamos nos preocupar com o valor mximo permitido (255), pois o resultado sempre ser menor do que o nmero inicial. Todavia, no podia deixar de ser, este mtodo apresenta uma outra desvantagem no menos despresvel.

Voc j imaginou a importncia dos disquetes para o seu micro? Agora no mercado o mais recente sistema de arquivamento para disquetes 51/4" para seu micro. - Protege o disquete do p, sol, umidade, contato, etc. - Facilidade no manuseio e ordenao de seus programas e jogos. Possui ndice interno (para duas faces) para que voc possa classificar e localizar seus programas: Possui visorlndice externo para ordenao e localizao do seu conjunto de disquetes. Com capacidade para 10 unidades (51/4"1. Bonito, leve, resistente, prtico e de fcil locomoo. A venda nas melhores lojas do ramo.

LDA, +17 SRAA LB B,0 LDC,A RET

3E 11 CB2F 0600 4F

.; define o valor inicial ; divide por 2 ; passa o resultado para BC ; volta ao BASIC

C9

fls"o

111

FORMULRIOS INTEGRADOS SISTEMAS CONSULTORIAEORGANIZAAOLTDA. R.lbirapitanga, 216 - V. Pires Santo Andr - SP - CEP 09000 Fones: 440-2674/440-5412/4121408

(rotina ASS~mbIY) RSt28 linstruesdeclculo) 34


( rotina Assembly)

J 1

aqui so feitos os clculos

Antes, porm, de entrar na rotina de clculos de ponto flutuante necessrio definir os valores iniciais, com os quais se quer efetuar a operao matemtica. O procedimento para esta preparao o seguinte: 1. carregar o primeiro nmero no par BC 2. chamar a sub-rotina em 1520 3. carregar o segundo nmero em BC 4. chamar novamente a sub-rotina em 1520 5. iniciar os clculos com o RST 28 6. programar as funes desejadas 7. "fechar" os clculos em 34 8. continuar com o programa normal A rotina no endereo 1520 em hexadecimal transforma o valor em BC para uma configurao de 5 bytes, diferente da que n6s j conhecemos. Esta transformao necessria para clculos em ponto flutuante e, por hora, no h necessidade de nos preocuparmos como esta transformao feita. Se quisermos colocar nmeros menores do que 256 no stack do calculador, podemos tambm usar o acumulador A ao invs do par BC, s6 que neste caso deve ser chamada a sub-rotina do endereo 151D. Na verdade, esta ltima rotina nada mais faz do que carregar o registrador B com 0 e o registrador C com o valor contido em A. Sabendo que para a adio temos o cdigo 0F, podemos somar os nmeros 31000 e 7112 da maneira mostrada na figura 6: Figura 6 16514 LD Be, + 31000 01 1879 ; define o primeiro nmero CALL 1520 CD 20 15; coloca o nmero no stack do calculador C8 1B ; define o segundo nmero CD 2015; coloca o nmero no "stack" do calculador RST28 EF; prepara o calculador Adio 0F; soma os dois nmeros FIM 34; final dos clculos Nesta altura, o resultado j se encontra no topo do stack do calculador, porm ainda em forma de 5,bytes. Devemos retirar este valor do stack pois, caso contrrio, o micro entra "no ar" voltando ao BASIC. Uma das maneiras de colocar o resultado no par BC chamando simplesmente a subrotina prpria para este fim, localizada no endereo 0EA7. Assim, a rotina acima deve continuar com as instrues mostradas na figura 7.

Dando PRINT USR 16514, percebemos que o programa pra com a indicao de erro B no canto inferior esquerdo da tela, demonstrando que houve um clculo fora do limite permitido. Esta a diferena fundamental entre o RST28 e o mtodo comum, pois, toda vez que o resultado se tornar negativo, ou ultrapassar o valor 65535, a rotina retorna ao BASIC durante a execuo da sub-rotina em 0EA7. O resultado real, no caso 100000, foi realmente encontrado e fica no topo do stack do calculador, porm, ainda em forma de 5 bytes. A questo : o que fazer para "ler" o resultado sem correr o risco de parar o programa. A soluo mais simples do que se imagina. Basta substituir a sub-rotina em 0BF5 pela sub-rotina no endereo 0B55. Esta ltima rotina imprime o nmero localizado no topo do stack do calculador na tela, independente do seu valor e grandeza. Alteramos, portanto, a rotina acima a partir da instruo "FIM" conforme segue: FIM CALL0B55 RET 34 CD 550B

CS

O comando certo agora RAND USR 16514, e no mais PRINT USR 1651.4,pois deixamos de usar o par BC para imprimir o resultado ria tela. E para a nossa satisfao, apareceagora, finalmente, o resultado correto na tela! Criando coragem, vamos ver se o programa realmente capaz de imprimir qualquer nmero (figura 9). Figura 9 Ex: subtrair de 5 o valor 13 LDA, +5 3E05 CALL 1510 CD 10 15 LDA,+133E0D CALL 1510 CD 10 15 RST28 EF Subtraco 03 FIM . 34 CALL0B55 RET C9 que leva realmente ao resultado -8 aps RAND USR 16514, ou ainda, provocando resultados fracionados, dividindo, por exemplo, 7por4(figura 10}. Figura 10
LDBC, + 7 CALL 1520

LD BC, +4
CALL 1520 RST28 Diviso FIM CALL0B55 RET

010700 CD 2015 010400 CD 2015

EF

05
34 CD 550B C9 ; seguido de RAND USR 16514

Figura 7 CALL 0EA7 RET

CD A7 0E C9

; transfere o resultado para o par BC ; volta ao BASIC

Na tabela I, vemos uma listagem das funes disponiveis aps RST28.


Tabela I Funo adio MUL TIPLlCAO EXP SQR COS ASN ATN USR CODE LN STRS NOT potenciao trocar Cdigo 0F 04 23 25 10 1F 21 29 19 22 2A 2C 06 01 Funo subtrao diviso ABS SEN TAN ACS SGN VAL PEEK INT CHRS OR deletar duplicar Cdigo 03 05 27 1C 1E 20 26 1A 28 24 2B 07 02 2D

Aps PRINT USR 16514, teremos novamente na tela, exatamente como aconteceu anteriormente. Por enquanto, no h vantagem aparente entre esta maneira, usando RST28, e o mtodo convencional j descrito. Vamos ver como o programa reage quando o resultaqo ultrapassa o valor 65f;j5, somando, por exemplo, 40000 com 60000 (figura 8). Figura 8 16514 LD BC, + 40000 CALL 1520 LD BC, + 60000 CALL 1520 RST28 Adio FIM CALL0EA7 RET 01409C CD2015 0160 EA CD2015

EF
0F 34 CDA70E C9

16 MICROHOBBY

Temos ainda uma rea reservada para clculos em ponto flutuante, onde podem ser guardados ~t~ seis nmerosde 5 Bytes cada. Esta rea abrange 30 posloes. (tabela 11)
Tabela 11 Endereo 164n (4050) 16482 (4062) 16487 (4067) 16492 (406Cl 16497 (4071) 16502 (4076) Contedo '1~ nmero 2'? nmero ~ nmero 4~ nmero 5~nmero 6~nmero

FigUf812

Problema: multiplicar 9000 por 10,5 e guardar o resultado nc endereo 20480, sem que o resultado aparea na tela. Soluo: 16514 LC BC, + 105016900 ; para chegar ao valor 10,5 . teremos antes que fazer um pequeno clculo intermedirio

As instruces necessrias para colocar, ou retirar, os valores nesta re so simples: C0 - Coloca C1 - Coloca C2 - Coloca C3 - Coloca C4 - Coloca C5 - Coloca o ltimo o ltimo o ltimo o ltimo o ltimo o ltimo resultado resultado resultado resultado resultado resultado na na na na na na memria memria memria memria memria memria 0 1 2 3 4 5

CALL 1520 CD 2015 LD BC, + 10010A00 CALL 1520 CD 2015 RST28 EF Diviso 05 STORE MEM 0 C0 FIM 34 LD BC, +9000012823 CALL 1520 CD 2015 RST28 EF

; estamos dividindo 105 por 10, obtendo assim, o valor 10,5 desejado ; guarda o valor 10,5 na memria 0 ; final do primeiro clculo ; define o segundo nmero ; leva 9000 ao stack do calculador ; incio dos clculos (continuao) ; recupera o resultado anterior (10,5) ; multiplica 9000 com 10,5 ; guarda o resultado na memria 0

e, para chamar estes valores de volta temos, respectivamente, E0, E1, E2, E3, E4 e E5. Aps o RST28, podem ser efetuados diversos clculo.s de uma s vez. Utilizamos este recurso, bem como a possIbIlidade de usar as memrias, no exemplo da figura 11.
Figura 11

CALL MEM 0 E0 Multiplicao 04 STORE MEM 0 C0

Exemplo: calcular o resultado de V(7/5) * 73 Soluo: ; define o primeiro nmero 16514 LD A, + 7 3E 07 ; leva o nmero ao stack do CALL 1510 CD 10 15 calculador ; define o segundo nmero LDA,+5 3E05 ; lev ao segundo nmero ao CALL 1510 CD 10 15

At aqui, nada mais fizemos do que calcular o produto de 9000 e 10,5 e guardamos o resultado na memria 0. Resta ainda uma pequena rotina adicional para limpar o stack. (figura 13)

stack
RST28 EF Diviso 05 Store MEM 0 C0 ; inicia os clculos ; calcula 7/5. ; guarda o resultado na memria 0 ; retoma ao Assembler normal ; define o terceiro nmero ; leva o terceiro nmero ao

LD A, + 73 3E 49 CALL 1510 CD 10 15 RST28 EF CALL NEM0E0 Multiplicao SQR 04 25

stack
; inicia os clculos ; recupera o resultado anterior ; multiplica (7/5) com 73 ; extrai do resultado a raiz quadrada ; fim dos clculos ; imprime o resultado na tela ; retoma ao BASIC

FAA COMO OS
FUNCIONARIOS DA AlCAN. XEROX. SEARlE. COPAS. INTElPA, DARlING. AIR SERVICE:

FIM 34 CALL 0B55 CD 55 08 RET C9

5.0.5.

MATRICUlEoSE NA COMPUTADORES. CURSOS DE

Confira o resultado impresso na tela aps RAND USR 16514, com o resultado obtido atravs de um programa equivalente escrito em BASIC. Chegamos concluso de que muito fcil de realizar, desta maneira, operaes matemticas. Ficou, porm, ainda uma dvida no ar: "E se eu no quero ter o resultado na tela?" Isto na prtica bastante comum, principalmente quando se trata de resultados intermedirios. J sabemos que raramente podemos usar a sub-rotina em 0EA7 para "limpar" o stack do calculador, por motivos de paradas indesejadas do programa. . A soluo guardar o resultado numa das seis memrias disponveis e realizar, antes da rotina em 0EA7, uma operao matemtica que, com certeza, no resultar num valor negativo ou maior que 65535. Por exemplo, podemos fazer uma multiplicao com 0 e chamar tranqilamente, a seguir, a sub-rotina em 0EA7. O exemplo da figura 12 ilustra este procedimento.

Nmero limitado de alunos por classe 1/3 de todas as aulas com uso dreto dos computadores, inclusive nos cursos de Cobol Professores altamente qualificados Cursos apostilados e apresentados com transparncias. Modernas instalaes com vrios equipamentos Dismac. Prolgica. Sysdata entre outros Preos extremamente acessveis. A NOVA MANEIRA DE APRENDER A PROGRAMAR
NCLEO l-S. NCLEO l-S. PAULO PAULO

Av. Paceemb. 1.280 Fone.: 66-78li6186-1513


NUCLEO 11- S. PAULO R. CaNalhal. 380 (Prximo EstaAo Metr Paraso)

Av. Pacaamb. 1.280 Fone: 82lHI466


NUCLEO IV - IT ANHAEM R. Zeperino Soares. 19 - sala 25

To"".

Fone: 92-1492
NCLEO V - SANTOS R. Mato Grosso. 450

Fone: 570-6097

Figura 13

Figura 15

LD BC,0 CALL 1520 RST28 Multiplicao FIM CALL 0EA7

01 00 00 CD 20 15 EF 04 34 CD A7 0E

Soluo: ; leva o valor 0 ao topo dostack ; multiplica com 0 ; "limpa" o stack 16514 LD BC,

+ 31506 0112

7B

; para chegar ao valor 3,1506 temos de realizar uma operao a parte

Nesta altura, j terminamos com todos os clculos necessrios, faltando ainda a transferncia do resultado para o endereo 20480 (figura14l.
Figura 14 .

; so 5 bytes a serem transferidos LD HL, + 16477 21 5D 40 ; HL aponta para a posio do resultado ~D DE, + 20480 11 00 50 ; DE aponta para onde deve ser transferido o resultado. LDIR ED B0 ; feita a transferncia RET C9 ; retoma ao BASIC Agora podemos ter' acesso a este resultado quando desejamos, transferindo-o, por exemplo, novamente para a rea das memrias do calculador, para efetuar novas operaes. Aps ler e estudar este artigo, creio que voc seja capaz de solucionar qualquer problema envolvendo operaes matemticas, familiarizando-se com estas tcnicas, descobrindo macetes e - assim espero - divulgar suas experincias aos programadores menos experientes. Alis, voltando um pouco, como mesmo o resultado da elevao do valor 3,1506 na potncia de 5,0113? (figura 15l.

O BC,

+5

01 05 00

CALL 1520 CD 20"5 LD BC, + 10000 01 1027 CALL 1520 CD 2015 RST28 EF Diviso 05 STORE MEM 0 C0 FIM 34 LD BC, + 50113 01 C1 C3 ; procedimento idntico ao valor acima CALL 1520 CD 2015 LD BC, + 10000 0110 27 CALL 1520 CD 2015 RST28 EF Diviso 05 CALL MEM0 E0 ; necessrio trocar a Troca 01 ordem dos dois nmeros

nostack
Potenciao 06 FIM 34 CALL 0B55 CD 550B RET C9 Que, aps RAND USR 16514, dar o resultado 314,48373 confere? O RESPOSTAS DO CURSO DE ASSEMBLY/AULA 10

1.

30000 30003 30005 30006

3fl1l1lJ7
30008 30010 30013 30100 30102 30103 30104 30105 30106 30000 30002 30004

LD LD INC LD INC CP JR RET LD CP RET SUB INC JR LD LD CAL L LD LD RET ADD LD JR LD LD LD ADD LD RET LD ADD LD LD RET PUS H POP LD RET

HL,(16396) A,0 HL (HU,A A 20 NZ ,30005 D,0 E C A,E

'2A0C40' '3E00' '23' 77' '3C' 'FE14' 'C27535' 'C9' '1600' 'BB' '08' '93' '14' 'C27596' '160A' '1E05' 'C 09475' '44' '4D' 'C9' '80' '3E28' 'DA7539' 'BE33' '2A0C40' '1122' '19' '77' 'C9' '2100' '39' '44' '4D' 'C9' 'F5' 'C1' '0600' 'C9'

5 REM TENTE ESTAiTK2000 10 HOME 20 FOR J = 1 TO 30 30 F = INT ( RND (1) * 20) + 1 40 C = INT ( RND (1) * 35) + 1 50 HTAB c: VTAS F 60 PRINT H! !H 70 HTAS C: VTAB F + 1 80 PRINT H!@ @!H 90 HTAB C: VTAB F + 2 100 PRINT HI X IH 110 HTAS c: VTAS F + 3 120 PRINT fil===IH 130 FOR K = i TO 50: NEXT K 140 HTAB C: VTAB F: PRINT 150 HTAB c: VTAS F + 1: P~INT
H

O
NZ,30102 D,10 E,5 30100 S.,H C,L A,B A,40 C,30009 A,51 HL,(163961 DE,0034 HL,DE (HU,A

3fl1l1lJ7
30008 30009

3fl1l1lJ1 3fl1l1lJ2
30004 30007 30009 30012 30004 30015 30016 30001 30003 30004 30005 30006

fi

HL,0 HL,SP B,H C,L AF BC B,0

180 NEXT J 190 HOME: END

3fl1l1lJ2
30003 30004 30005

Venha'collhecercOossoc shov/ room ec particlPlr,afivaml'lte, das mais recentes e:rtw~ucionrilcs te'Cnologias a respeito 'dosw mrocomputadores: Alm de }lzer;mgos,~ventualmente podero ~descobriro "que um Microcomputador poder' fazr por vocs Ol,{' pela sua Empresa. Trata;e, d uma prfe(ta e balanceada ~strut~ra' pafl"representar altura, as PIincipai.sEmpresasde Computadores

tais como: Texs, Zirok, Micra"digital; Dactari, Polymax,Unitron,0 Elebra, Aceco, Prolgica, Apple ,lI. Sav~ge, Microcraft, CMA, Phillips, Ringo, Matrx

RUASANTAEFIGi:NIA, . . ~ ~

~..

568 - SP - FONE:221-9055
"-

Gabriela, o computador que aprende

Gabriela um jogo didtico da FUNBEC - Fundao Brasileira para o Desenvolvimento do Ensino das Cincias, adaptado do original - Gabriela I - por lsaac Epstein (seu idealizador) h aproximadamente dez anos. O jogo foi projetado para crianas de at dez anos, com o intuito de desmistificar a crena de que os computadores podem pensar ou imaginar. Conforme afirmou Verenice Leite Ribeiro, gerente de Marketing da FUNBEC, o kit Gabriela j foi usado tambm por escolas, quando os interesses das mesmas era transmitir aos alunos os primeiros fundamentos do processo de interao entre o computador e o operador. Hoje, alguns kits do Gabriela (O computador que aprende) encontram-se numa das prateleiras da lojinha da instituio, (localizada no campus da Universidade de So Paulo) espera de que algum que ali vai para comprar outros kits se interesse por eles. Mas, por que isto? Segundo a representante da FUNBEC, quando o jogo foi projetado no havia um interesse to grande por Ciberntica no Brasil. A idia e o jogo chegou a ser aceito por diversas escolas e ainda hoje algumas ainda o procura, mas o kit no recebeu um investimento suficiente para que se formasse uma infraestrutura forte que justificasse um incremento maior de marketing em cima do mesmo. Afinal, a Fundao sobrevive com recursos de outras instituies de apoio pesquisa que fornecem verbas para seus projetos. E assim outras reas em que a

FUNBEC atua, como ptica, produtos de laboratrios quimico e clnico, obtiveram um maior sucesso j que a outra rea - na linha de produtos para o ensino das cincias - (justamente pela pouca verba disponvel) foi aos poucos, ficando em segundo plano.

O jogo original foi desenvolvido com o intuito de transform-Io num instrumento de aprendizado baseado no processo de "tentativa e erro", que faz com que a mente da criana passe por um processo de seleo de respostas at chegar ao resultado desejado. O objetivo inicial demonstrar como funciona o processo mental e no imit-Io. O processo de seleo realizado entre os dois jogadores principais: o computador que aprende e o seu adversrio - o homem.

rada que determina o lance escolhido pela mquina. O adversrio joga a seguir, dispondo somente de 305 situaes possveis. Da em diante, o jogo prossegue at que se tenha as instituies finais. Caso Gabriela seja derrotada, deve-se retirar as bolinhas que propiciaram a sua perda afim de que ela no torne a fazer esta jogada. Se Gabriela vencer, ento as bolinhas retornam mquina, porque o resultado foi positivo (pois o intuito fazer com que Gabriela sempre vena - afinal o computador). No caso de empate, as bolinhas tambm so devolvidas, sendo que o empate tambm um resultado positivo para a mquina.

Gabriela I (o primeiro) formada de uma caixa de madeira contendo 14 recipientes plsticos compostos de 306 cavidades. Cada cavidade possui bolinhas plsticas de Cores alternadas que correspondem ao nmero possvel de alternativa no jogo, alm de um mapa que indica a situao correspondente cavidade e um dispositivo (uma im), usado para a retirada - ao acaso - de uma das bolinhas da cavidade entre as vrias l existentes. A cor da bolinha reti-

Gabriela o computador que aprende da FUNBEC foi desenvolvido baseado no objetivo do primeiro jogo: o aprendizado atravs da teoria de tentativa e erro. O jogo faz parte da srie Jogos e Descobertas da Fundao e vem acompanhado de um tabuleiro de plstico com 27 cavidades onde so colocadas as bolinhas de diferentes cores. Ao lado das mesmas, esto quatro outras cavidades onde se acomodam as outras bolinhas. Acompanha-a o tabuleiro e duas cartelas de papelo, que possuem dois jogos diferentes, o 21 e o mini damas. Estes dois jogos substituem as modalidades do primeiro, mas possuem ambos os mesmos mecanismos de aprendizado do Gabriela I.

20 MICROHOBBY

o objetivo do primeiro jogo (o 21) fazer com que um dos dois jogadores atinjam o nmero 21. Para isto, existem algumas regras: o incio cabe sempre ao adversrio de GabrieIa; tanto Gabriela como o jogador pode, a partir do primeiro lance, pular de uma a trs casas aps a posio do lanamento anterior; se o jogador vence, o ltimo lance de Gabriela eliminado ou seja, retirado da mquina (enquanto os outros lances so devolvidos). Se o contrrio ocorrer . (Gabriela vencer) todos os lances so devolvidos. Este jogo, segundo constata atinje o pblico que est na faixa dos 10 anos. Durante o jogo, foram encontradas algumas situaes nas . quais no h continuidade, como por exemplo, casos em que o "sistema" (com bolinhas coloridas, representando movimentos na cartela de nmeros) impede que a mquina continue o jogo, pois elimina as bolinhas da quase totalidade das casas. Diante disto, conclui-se que o jogo no est completamente "fechado" (ou seja, todas as situaes levam a mquina ao resultado), A srie "programvel" de lances em que Gabriela sempre vence pode no ocorrer. A situao programvel de Gabriela 5,9, 13, 17 e 21 (Figura 1), O outro jogo de Gabriela, MiniDamas, constitudo de um tabuleiro com nove casas, exatamente

HARDWARESOFTWARE
6809 6502

o
O
Z t-

a:
w ..J
W
W

~/~ 8086/0088
6800 1 60000
como no jogo da velha. O jogador faz o primeiro lance, escolhendo ao acaso uma das bolinhas das trs primeiras situaes (de abertura) do jogo. H trs possibilidades de vitria: quando o jogador consegue imobilizar uma ou mais peas do adversrio; quando captura todas as peas do adversrio ou ainda, quando avana com a dama at a terceira casa do adversrio no ocorre empate. No teste do jogo, descobriu-se duas situaes de empate. H possibilidade de andar em linha reta e capturar somente em diagonal. O manual de instrues que acompanha o jogo diz que no ocorre o empate. Porm, as situaes de empate descritas acima deveriam ser vlidas, porque a filosofia do jogo Gabriela considera na realidade, o empate como um bom resultado. Situaes de empate de Gabrie-

t.
O
~

se

Z -00 1 Z-8000 . APPLE ATARI COMMOOORE

O LI.
Z
~

a:

IBM TRS-OO SINCLAIR BASIC dBASE ROBS VISICALC

Q
~

..J

O
Q. (I)

w
w

G 0

G 0

G 0

CP/M UNIX

z
"C

.
o
~ 'a>
O <ll ~

o w t ..J

CJ .C
-'Q) ~

~'E

CJ

.W m .
"C

O +'"

:E o o 'E C E (/) :E 8, .. o a: o:ro ) a:


~e 8.E
(/)0.

a:

(/)u

..c a>

o.u
(/) (/)

'O<ll CU-

o o E c a>
I

> :.J

a> a> .0..

O
~

a:
> ..J

Gabriela e o TK 2000

Q
Ser que um computador pode aprender? Este programa, destinado ao computador TK 2000, procura simular uma situao de aprendiZado, baseado nos conceitos de tentativa-e-erro e no uso de uma "punio" para desestimular o "erro". No se preocupe: esta punio no dolorosa para o seu micro.

Se voc tem lido os artigos sobre inteligncia artificial e mquinas que "pensam" que temos publicado, o Programa Gabriela servir para voc ver como podemos programar mquinas que "aprendem". Um programa , antes de mais nada, um conjunto de instrues feitas em linguagem de alto nvel (BASIC, PASCAL, etc.) ou linguagem de mquina, que o computador interpreta e executa. Tudo que est em um programa s compreensvel para o computador se codificado de acordo com seus caracteres interpretativos e decodificadores. O programador deve fornecer todos os dados, parmetros e conexes lgicas de programao para que o computador possa executar o programa. A mquina no tem a capacidade de gerar ~<Mtras informaes alm daquelas fornecidas pelo programador. Ela no pensa, deduz ou aprende, a no ser que voc fornea todas as informaes para isso. Ento, nesse caso, como ensinar a mquina a "aprender"? simples. Voc pode usar, por exemplo, a mesma filosofia da mquina "GABRIELA", idealizada por lsaac Epnstein, que baseia-se na tcnica de aprendizado por "tentativa e erro". O programa "Gabriela", desenvolvido para o TK-2OOO, simula o jogo mini-damas do Kit "GABRIELA", da Funbe'c, e contm o princpio de "aprender por tentativa e erro", como a mquina original de Epnstein. No programa no foram colocados todos os lances possfveis, para que no ficasse muito extenso. Um programa completo deve ter todos os lances possveis do Gabriela (mini-damasl e do adversrio, para que todas as possibilidades de jogada possam ser avaliadas.

triz lance B21. No decorrer do programa, a mquin'a desenvolve o aprendizado atravs da punio do lance que gera a vitria do adversrio, at "aprender" qual o lance ideal para sua vitria. A punio, no programa, colocar na posio da matriz-lance que provocou a vitria do adversrio nmero 99. Na figura 1 voc poder ver a lgica usada para comparao do lance escolhido pelo Gabriela (micro).

LANCE

DO
GABRIELA

COMPARAR COMAS MATRIZES LANCE

O programa comea com a carga da matriz-jogo (matriz que conter cada fase do jogol com as posies iniciais do mini-damas (linha 202l. Os lances, do primeiro ao quinto, foram prefixados, sem interferncia da mquina, ou doadversrio (escolha do programador), para simplificar o programa e tornar desnecessrio o uso de inmeras matrizes-lance (matrizes que contm as posies dos pees do jogo em cada lance). Os demais lances, a partir do &., foram armazenados em matrizes de ordem 3x3 (matrizes-lanceI, A3, B1, B2, para que exista a possibilidade de escolha dos jogadores (tanto do micro como do adversriol. Os lances mpares so feitos pelo adversrio do Gabriela, simulado no TK 2000, e os pares so feitos pela mquina. O programa diferencia o adversrio da mquina atravs do nmero 1 (adversrio) e nmero 2 (mq~ira). As casas vazias contm o nmero 0. Do endereo 210 a 300, os 5 primeiros lances fixos neste programa so carregados com os nmeros de acordo com o jogador; a posio anterior ao lance ser carregada com 0 (exemplo linha 270l. Esses primeiros 5 lances foram escolhidos propositalmente para que duas situaes diferentes fossem apresentadas: uma, de vitria do Gabriela (matriz-lance A3l, e outra de vitria do adversrio (ma-

COMPARAR COMAS MATRIZES LANCE

VOLTA PARA ESCOLHA DO LANCE

OSSo 1 - a comparao ser feita com as matrizes-lance de movimento do jogador (no ocorreu captura de pea do adversrio). OSSo 2 - a comparao ser feita com as matrizes-lance de captura de peas do adversrio.

Figura 1

22 MICROHOBBV

9
VOLTA AO INicIO 00 PROGRAMA

o
VOLTA PARA ESCOLHA DOGABRIELA

Figura 2 A linha 311 do programa faz a escoiha do &. lance do Gabriela. Se o lance escolhido for uma casa vazia na matrizjogo, o lance assume valor 2. e a comparao feita com a matriz-lance A3 (linha 318), E necessrio comparar as posies da matriz A3 com o nmero 99 para verificarmos se algum lance dessa matriz-lance foi punido. O fluxograma da figura 2 mostra como essa comparao efetuada. Se o lance escolhido for uma c;asacom o nmero 1, significa que o Gabriela ir capturar uma pea do adversrio e a comparao ser feita a partir da linha 327, com a matrizlance B 1. No &. lance, quando a matriz-jogo igual a matrizlance A3, o Gabriela vence e a partir da linha 400 seu nmero de vitrias, VG adicionado de 1 e inicia-se uma nova partida. Neste caso, o Gabriela venceu graas sorte; a aleatoriedade de sua escolha permitiu que ela vencesse. No programa, a partir do &. lance, h somente duas matrizes-lance como possibilidade de escolha (A3 e B1). Quando a matriz-jogo igual a matriz-lance B1, o Gabriela captura uma pea do adversrio e propicia que este faa o 7~ lance. Ento, o adversrio vence lIinha' 420) e neste ponto do programa feita a punio do lance do Gabriela (colocar 99 no lance que proporcionou a vitria do adversrio; lance XL e XC da matriz-lance B11, e o jogo reiniciado. Depois que ocorre a vitria do adversrio e o Gabriela punido, a nica opo ser a escolha do lance que d a vitria ao Gabriela. Da em diante, o Gabriela, claro, sempre vencer. O lance do Gabriela salvo na linha 420. A linha guardada no campo XL, e a coluna no campo XC. E importante ressaltar que o lance do Gabriela deve sempre ser salvo quando ele no vence e o prximo lance, proporcionado ao adversrio, faa com que ele vena. A linha 500 contm a mensagem de movimento invlido para que o jogador (o adversrio do Gabriela), no efetue um lance fora das especificaes das regras do jogo mini-damas. A rotina de plotagem do lance usada para os dois jogadores, mudando-se somente a cor de acordo com o lance efetuado (azul para o adversrio; amarelo para o Gabriela).

Voc pode aumentar o jogo "Gabriela", implementando outras possibilidades de lances do adversrio e da mquina no programa. Voc poder ter o nmero de matrizes-lance que a memria de seu micro puder armazenar dentro de um mesmo programa. Basta que, para isso, voc siga a mesma

MICROHOBBV

23

lgica e estrutura do programa "Gabriela", comparando os lances da matriz-jogo com a matriz-lance e punindo os lances do Gabriela que proporcionarem a vitria do adversrio. No esquea de zerar a posio a partir do qual o lance ser feito (linhas 318 e 327). Deve-se, tambm, invalidar o lance da mquina que j foi feito por ela, ou seja, um lance com a posio

igual a 2 (linha 315: volta para a instruo 311 onde a mquina efetua sua escolha). Esta tcnica de programao pode ser usada para fazer programas de inteligncia artificial como: jogo de damas, jogo da velha e outros, tornando seu computador um micro invencivel aps um perodo de aprendizagem.

5 REM GABRIELA IMICROMEGA - SETEMBRO 1984 7 REM CARGA DAS MATRIZES LANCES 14 FOR I = 1 TO 3: FOR J = 1 TO 3: REAO A3(I,J): NEXT J: NEXT I 15 FOR I = 1 TO 3: FOR J = 1 TO 3: REAO B1(I,J): NEXT J: NEXT I 16 FOR I = 1 TO 3: FOR J = 1 TO 3: REAO B2(I,J): NEXT J: NEXT I 20 DATA 0,2,0,1,1,0,0,0,2,0,0,0,2,1, 2,0,0,0,0,1,0,2,0,2,0,0,0 50 REM INICIO DO PROGRAMA 60 VA = O:VG = 200 K = O:W = O: TEXT : HOME : GOSUB 5 000 202 FOR I = 1 TO 3:J(1,I) = 2: NEXT I : FOR I = 1 TO 3:J(2,I) = O: NEXT I: FOR I = 1 TO 3:J(3,I) = 1: NEXT I 205 COLOR = 2: FOR C = 1 TO 3:L = 1: GOSU8 5200: MEXT C 207 COLOR = 1: FOR C = 1 TO 3:L = 3: GOSUB 5200: NEXT C 210 REM 1. LANCE(AOVERSARIO) 212 PRINT "SEU LANCE SERA:": FOR A = 1 TO 300: NEXT A 215 COLOR = l:L = 2:C = 1: GOSUB 520 O:J(L,C) = 1 220 COLOR = O:L = 3:C = 1: GOSUB 520 O:J(L,C) = 225 PRINT "OIGITE 'C' PARA 08TER O PR OXIKO LANCE" 228 GETEi: IF Ei ( ) "C" THEN 228 235 REM 2. LANCE (GABRIELA) 240 PRINT"O GABRIELA FAZ SUA ESCOLHA ": FOR A = 1 TO 300: NEXT A: 250 COLOR = 2:L = 2:C = 3: GOSUB 520 O:J(L,C) = 2 255 COLOR = O:L = l:C = 3: GOSUB 520 O:J(L,C) = 257 PRINT: PRINT 260 PRINT "OIGITE 'C' PARA OBTER O PR OXIKO LANCE" 262 GETEi: IF Ei ( ) "C" THEN 262 265 REM 3. LANCE (AOVERSARIO) 266 PRINT: PRINT 268 PRINT "SUA ESCOLHA SERA:" 269 FOR A = 1 TO 300: MEXT A 270 COLOR = l:L = 2:C = 2: GOSUB 520 O:J(L,C) = 1 275 COLOR = O:L = 3:C = 2: GOSUB 520 O:J(L,C) = O 276 PRINT: PRINT 278 PRINT "OIGITE 'C' PARA OBTER O PR OXI"O LANCE"

279 GETEi: IF Ei ( ) "C" THEN 279 280 REM 4. LANCE (GABRIELA) 281 PRINT: PRINT 282 PRINT"O GABRIELA FAZ SUA ESCOLHA ": FOR A = 1 TO 300: NEXT A 285 COLOR = 2:L = 2:C = 2: GOSUB 520 O:J(L,C) = 2 290 COLOR = O:L = l:C = 1: GOSUB 520 O:J(L,C) = 291 PRINT: PRINT : PRINT "OIGITE 'C' PARA OBTER O PROXIMO LANCE": GET Ei: IF Ei ( ) "C" THEN 291 293 PRINT: PRINT : PRINT "SEU LANCE SERA:": FOR A = 1 TO 300: NEXT A 295 COLOR = l:L = 2:C = 2: GOSUB 520 O:J(L,C) = 1 300 COLOR = O:L = 3:C = 3: GOSUB 520 O:J(L,C) = 301 PRINT: PRINT : PRINT "OIGITE 'C' PARA OBTER O LANCE DE ESCOLHA DO GABRIELA" 302 GETEi: IF Ei { } "C" THEN 302 305 REM 6. LANCE (GABRIELA) 307 PRINT: PRINT 310 PRINT"O GABRIELA FAZ SUA ESCOLHA ": FOR A = 1 TO 300: NEXT A 311 L = INT ( RNO (1) * 3) + l:C = INT ( RNO (1) * 3) + 1 312 IF L ( 1 OR L ) 3 OR C ( 1 OR C ) 3 THEN 311 313 IF J{L,C} = THEN 318 314 IF J(L,C) = 1 THEN 327 315 GOTO 311 318 LET J(2,3) = o: LET J(L,C) = 2 320 K = o: FOR H = 1 TO 3: FOR I = 1 TO 3: IF J(H,I) = A3(H,I) THEN K = K + 1 321 NEXT I: NEXT H 322 LET W = 323 FOR H = 1 TO 3: FOR I = 1 TO 3: IF A3(H,I) = 99 ANO L = H ANO C = I THEN W =W +1 324 MEXT I: MEXT H 325 IF K = 9 ANO W = THEN GOTO 400

326 J(L,C) = 0:J(2,3) = 2: GOTO 311 327 LET J(1,2) = O: LET J(L,C) = 2 328 K = O:W = O: FOR H = 1 TO 3: FOR I = 1 TO 3: IF J(H,I) = B1(H,I) THEN K = K + 1 329 MEXT I: MEXT H . 332 FOR H = 1 TO 3: FOR I = 1 TO 3: IF B1(H,I) = 99 ANO L = H ANO C = I THEN W=W+1 334 MEXT I: MEXT H 335 IF K = 9 ANO W = O THEN GOTO 420

400 COlOR = 2: GOSUB 5200 402 COlOR = O:L = 2:C : 3: GOSUB S20
O

5025 GETEI: IF EI ( ) "J" THEN 5025 : RETURN 5100 REli ROTINA DE CONSTRUCAO OA TEL
A

403 VG = VG + 1: IF VG)
O

= 10 THEN 60

405 PRINT M[U VENCI ": FOR A = 1 TO 900: MEXT A: PRINT : PRINT "DIGIT E 'N' PARA NOVA PARTIDA": PRINT " YG= ";VG: PRINT uVA: n;VA 410 GETEI: IF EI ( ) "N" THEN 410 415 GOTO 200 420 XL : UXC = C: COlOR : 2: GOSlIB 5 200: COLOR . = O:L = I:C = 2: GOSUB S200:J(L ,C) = O 430 REli 7. LANCE (ADVERSARIO) 435 GOSUB 5290 438 LET J(2,2) = O 440 J(L,C) = I:K = O: FOR H = 1 TO 3: FOR I = 1 TO 3: IF J(H,I) = B2(H,I) THEN K=K+l 441 NEXl I: MEXT H 442 IF K ( ) 9 THEN 500 445 COLOR = 1: GOSUB 5200 450 COLOR = O:L = 2:C : 2: GOSUB S20
O

5105 HOIIE: GR : COLOR : 5: FOR I = 10 TO 25: PLOT 1,12: PLOT 1,22: NEXT I: FOR I = 5 TO 31: PLOT 15,1: PLOT 20,1: NEXl I 5110 RETURN 5200 REli ROTINA OE PLOTAGEII 00 LANCE 5205 IF L : 1 ANO C = 1 THEN PLOT 12 ,8 5210 IF L : 1 ANO C : 2 THEN PLOT 18 ,8 5215 IF L : 1 ANO C = 3 THEN PLOT 23
,8

5220 IF L : 2 ANO C : 1 THEN PLOT 12


,17

5225 IF L
,17 ,17

2 ANO C = 2 THEN PLOT 18

5230 IF L : 2 ANO C = 3 THEN PLOT 23 5235 IF L : 3 ANO C : 1 THEN PLOT 12


,27

455 PRINT "VOCE VENCEU! EU ESTOU APRE NDENOO": FOR A = 1 TO 900: NEXT A :VA = VA + 1: PRINT "VG= ";VG: PRINT "VA= ";VA 460 Bl(XL,XC) = 99: PRINT "DIGITE 'N' PARA NOVA PARTIOA" 462 GETEI: IF EI ( ) "N" THEN 462 464 6OTO 200 500 PRINT "IIOVIIIENTOINVALIDO": PRINT "DIGITE 'N' PARA REINICIAR A PART IDA" 50S' GETEI: IF EI ( ) "N" THEN 50s 506 GOTO 200 600 PRINT "EU VENCI NOVAIIENTE, JA APR ENDI A JOGAR": FOR A = 1 TO 900: NEXT A 60S TEXT: HOIIE : PRINT "FIII IGABRIEL A/IIICROIIEGA-S&TEIICRO 1984" 610 END 5000 REli ROTINA DE APRESENTACAO 5001 HOIIE: PRINT "GABRIELA: A IIAQUIN A QUE APRENDE": PRINT : PRINT "RE GRAS DO JOGO": PRINT "A) PARA 1I0V IIIENTAR-SE ,O LANCE DEVE DER NA V ERTICAL PARA FRENTE": PRINT 5005 PRINT "B) PARA CAPTURAR O LANCE DEVE SER EIIDIAGONAL": PRINT : PRINT "OBJETIVO 00 JOGO; VENCE AQUELE QUE: ": PRINT : PRINT "- ELIIIINAR AS P ECAS DO ADVERSARIO" 5010 PRINT"- ATINGIR A ULTIIIA FILA O POSTA A SUA INICIAL": PRINT "- 111 OBOLIZAR O ADVERSARIO": PRINT : PRINT "SE A IIAQUINA OU VOCE EFETUAREII UK LANCE NAO PERIIITIDO APARECERA UIIA IIENSAGEII" 5015 PRINT "VOCE JOGA COIIO AZUL; EU COIIO AliAR ELO" 5020 PRINT : PRINT "DIGITE 'J' PARA O BTER A TELA DO JOGO"

5240 IF L = 3 ANO C : 2 THEN PLOT 18


,27

5245 IF L = 3 ANO C : 3 THEN PLOT 23


,27

5250 RETURN 5290 REli ROTINA OE ESCOLHA DO AOVERS ARIO 5300 PRINT "QUAL SEU LANCE?": PRINT " LINHA?(I(L)3)": INPUT L: VTAB 22: HTAB 16: PRINT L: PRINT "COLUNA? 11(C)3)": INPUT C: VTAS 22: HTAB 18: PRINT C 5305 IF L ( 1 OR L ) 3 OR C ( 1 OR C ) 3 THEN 5300 5310 RETURN

o Macintosh

da Apple

o que o Macintosh? Uma mquina especial, um computador revolucionrio? Ou apenas um entre outros tantos que aparecem e desaparecem todos os anos no merGado mundial, como marcas de cigarro ou automveis? Estas e muitas outras perguntas sobre o Macintosh so respondidas por seus autores neste artigo.
Daniel R. Falconer/Wilson Jos Tucci

Introduo No inicio de 1984, em sua reunio anual, a Apple Computer finalmente lana seu novo computador, j to esperado e comentado. J acontecera algo semelhante ao que houve com o PCjr muita expectativa em torno de sua publicidade, muitas histrias sobre o que esta "maravilhosa mquina" poderia, ou no, fazer. Surgem notcias de que a Apple estaria prestes a lanar um computador porttil, de tecnologia avanada, utilizando-se dos resultados de pesquisas feitas em torno de "janelas" e multi-tasking, talvez at semelhante ao Lisa, introduzido no mercado algum tempo antes, pela prpria Apple. Certa poca houve at boatos de que o projeto no sairia enquanto no fosse compatvel com o IBM PC. As expectativas aumentam com a propaganda "1984", largamente divulgada nos Estados Unidos. Chega janeiro de 1984, com a apresentao do novo computador. Por fora, uma estrutura leve, fugindo completamente das tendncias atuais: um "design" vertical, ocupando pouco mais que uma folha de papel deixada sobre a mesa, com uma tela de 9 polegadas e um microfloppy de 3.5 polegadas. Ligados a ela, um teclado simples notavelmente sem teclas especiais e um "mouse", um pequeno aparelho apontador, de tecnologia desenvolvida inicialmente pela Xerox, em seu centro de pesquisas de Paio Alto, e mais tarde adaptada e comprovada pela Apple, para a Lisa. Por dentro um circuito genialmente simples, com 128k de RAM e alguns chips que compem o vdeo de alta resoluo, o relgio interno, o sistema de comunicaes, o controlador de disco e o som, tudo isso puxado por um MC68000 e 8 Mhz e pelos 64k de cdigo altamente eficientes, armazenados em ROM. Muito mais do que uma verso reduzida e limitada do Lisa, como esperava alguns, um computador que goza de uma personalidade at agora nunca vista em qualquer sistema, de qualquer preo.

A filosofia por trs do Mac A Apple mostrou ser uma empresa em evoluo. No incio de sua histria, procurou atingir com seus produtos - o Apple I e, logo depois, as vrias verses do Apple 11- a faixa dos "aventureiros" e experimentadores, criando sistemas completamente abertos aos seus usurios, com documentao extensa e completa de toda a parte de hardware e boa parte do software interno. Raro era o computador que se mantivesse em seu estado original, como veio da fbrica; as modificaes tornaram-se as mais diversas imaginveis, desde a simples instalao de um carto perifrico, at alteraes nos prprios circuitos. Com a introduo do Macintosh, a Apple deixa de lado completamente essa imagem, procurando atingir o outro extremo da faixa de usurios - aqueles que no tm qualquer interesse em tirar a tampa de sua mquina e fazer experincias l dentro - dando a eles a combinao perfeita de hardware de alta tecnologia, simples e extremamente eficiente, e software inovativo, com um meio de contato com o usurio padronizado e bem definido, dentro de um sistemd operacional essencialmente transparente ao usurio ou programador comum.

reuniu, aos poucos, sua equipe de trabalho em uma localidade distante do resto da empresa (atitude considerada, por alguns, uma tentativa de Jobs de voltar s suas origens, quando o Apple Computer nascia de uma pequena garagem), sua inteno era a de criar um computador de uso geral, de baixo custo e muito mais fcil de usar que qualquer um que estivesse no mercado. Mas, principalmente, por ser um computador realmente destinado ao usurio final, ele deveria ser confivel a tal ponto de nunca precisar de manuteno. Ele viu na tecnologia Lisa a resposta para a facilidade de uso; restava, ento, tornar essa tecnologia acessvel.

Trabalhando no Mac, nota-se nitidamente a influncia de seu irmo mais velho, o Lisa. Desde o controle pelo "mouse", praticamente dispensando o teclado - exceto na digitao de texto - at a idia de se fazer a tela representar uma mesa de trabalho, com aplicaes, arquivos e pastas que podem ser abertos e fechados, como na vida real, e organizados como se desejar, pode ser sentida essa chamada "tecnologia li-

sa".
Mas a principal preocupao do grupo que idealizou o Mac no foi qualquer tipo de compatibilidade com sistemas j existentes. Quando Steve Jobs

A confiabilidade, no que diz respeito eletrnica, foi em grande parte mrito de Burrell C. Smith, que criou uma placa contendo pouqussimos chips, todos LSls especializados e de altssima qualidade e capacidade. Um exemplo tpico: todo o controlador de disco - que em muitos computadores um circuito separado, chegando a ter dezenas de componentes - foi reduzido a um nico chip. Quanto s duas sadas seriais, ao invs de pegar um controlado r padro, Smith escolheu um chip que se destaca em meio aos outros, um controlador de comunicaes que permite velocidades de transferncia de 230 kbits por segundo, ou at quase 1 Megabit por segundo com "c1ock" externo (isso comparado com 9.6 kbits por segundo de um controlador mais comum). Tanto por motivo de simplicidade e custo quanto por espao e confiabilidade, a equipe decidiu eliminar os slots . no Macintosh. Os conectores de cartes perifricos so uma grande causa de problemas em um sistema, alm de aumentarem significativamente o tamanho e o custo final do computador. Como ocorreu com os modelos anteriores da Apple, no havia como prever o que seria instalado nesses conectores; portanto, uma srie de precaues tinha que

26 MICROHOBBV

ser tomada, tanto em hardware - como, por exemplo, instalando uma fonte de alimentao de alta capacidade quanto em software ~ compatibilidade com cartes e entre um e outro carto. Com o enorme potencial de comunicaes do Mac, sem deixar de dar crdito ao excelente .software que faz o controlador serial funcionar, toda interao entre computador e perifricos feita serialmente - uma soluo que, ao mesmo tempo, diminui drasticamente os custos e aumenta infinitamente a confiabilidade do computador. A mesma idia aplica-se quando percebemos que h apenas duas placas de circuitos dentro dei Mac: com a reduo do nmero de peas vem a conseqente diminuio na quantidade de conexes - a parte que mais d problema em um computador.

A escolha do driver da Sony foi mais um passo rumo eficincia e confiabilidade do Mac. Para comear, o prprio disco magntico da Sony, de 3.5" comprovada mente mais resistente - alm de, em alguns casos, armazenar mais informaes - que o floppy de 5.25", hoje largamente utilizado. Ainda assim, a equipe foi mais adiante: conseguiram que a Sony fizesse para eles algumas modificaes no desenho de seu driver, colocando nele coisas como: velocidade de motor vari-

vel, controlada por software, ejeo do disco, tambm controlada por sofware, e o aumento do nmero de trilhas no disco, de 70 para SO. Com a ejeo feita por software, um programa nunca tem que se preocupar com o usurio removendo o disco quando no deve. O controle da velocidade, alm de garantir sempre um funcionamento timo do drive e a leitura de qualquer disco (do Mac, claro), permite que mais informaes sejam gravadas nas trilhas externas, diminuindo a velocidade do motor ao acess-Ios. Em outras palavras, a densidade de gravao no disco pode ser mantida linearmente constante ao longo de todas as trilhas, contra uma densidade radial constante nos drivers comuns. A principal conseqncia disso que, enquanto outros computadores que usam os microfloppies conseguem armazenar por volta de 270k por face, o Mac coloca 400k por face - 800k em um nico disco, quando sair o driver de dupla face. Desenvolvimento em conjunto

lados, com o desenvolvimento de software ocorrendo paralelamente ao desenvolvimento de hardware, colocando no computador o hardware que o software precisava, elaborando software para fazer com que todo o hardware funcione eficientemente. Andy Hertzfeld, com seu software, conseguiu fazer com que tudo dentro do Mac funcionasse ao mesmo tempo: enquanto se est gravando um bloco de informaes no disco, pode-se colocar a impressora em funcionamento, ao mesmo tempo em que se produz um som com quatro vozes, ou se movimenta o "mouse", ou se pressiona uma tecla.

Talvez o fato mais importante seja que, usando as palavras de propagandas feitas para o Mac, a primeira vez que "engenheiros de hardware realmente falaram com engenheiros de software em um tom de voz moderado". Em outras palavras, todo o processo de criao do computador foi acompanhado dos dois

Mais adiante, no desenvolvimento do computador, a equipe percebeu que ela queria lev-Io ao mundo todo. Do modelo final foram retiradas todas as palavras em ingls, colocando figuras para identificar conectores; a fonte de alimentao tornou-se internacional: o sinal de 60 Hz para o vdeo (na maioria dos computadores retirado diretamente da rede eltrica) gerado internamente, possibilitando o uso do Mac em reas com corrente alternada de 50 Hz; o teclado mapeado por software, podendo ser redefinido para qualquer lngua; como os caracteres so desenhados na tela pelo microprocessador, estes podem ser redefinidos para uma lngua qualquer

COMO UM COMPUTADOR DARDO - O MELHOR PROGRAMA DE TRANSPORTE " TAMBEM NA INFORMATICA

0.....0

~~
FASCI NANTE JOGO GRA'FICO

<q
'"~"

DE
SI MUL... AO ECONOMICA

Cr

Rio, So Paulo e vrios pontos do Brasil


RIO DE JANEIRO - Telex: (021) 31060 - Tel.: (021) 580-2373 SO PAULO - Telex: (OU) 22314 - Tel.: (OU) 201-4266

nominal

12000

cruzado

Remeter para

cheque

MONOLlTH
R. AUGUSTA TEL. (011)

2001

1371 S/LOJA 7 268 - 4370 SP

Tivemos um pequeno problema na listagem do programa demonstrativo de "Perspectiva Exata", publicado na revista Microhobby n~ 13. Aqui vo os trechos da Iistagem que em alguns exemplares no puderam ser lidos.

~~_~_~_~_~_~_~_~_ ~_~_~_~_~_~_S~lj_~_ t_l'm_.~ oldl'r


6 jtpms 29K ln foldf'f

LJ II~I IlI Ic::=! = =


Firl,j~r Irf,19.;.wrlt~r (h~,t";'~rd tllo:-

ICJI
1:::::;'
('/('.':'
F'1,j

li----=!II

r,l",

'0=

:.(r'r,r ..... :.I. ti]':'

3040 RETURN 3055 OATA 130,48,143,49,200,40,190,3 6,130,48,145,11,159,3,159,121,145 ,112,145,11,130,37,130,48,190,36, 190,17,130,37,158,106,172,112,159 ,121,145,112,158,106,190,17,200,2 9,200,40,190,36,190,17 3058 DATA 159,3,172,11,172,112,159,1 21,159,3,159,42,190,36,200,40,172 .,45,159,42 4000 REM ROTINA DE CONSTRUCAO DA ESC AOA EM PERSPECTIVA 4010 HOME: HGR : HCOLOR = 7 4020 FOR N = 1 TO 21 4025 READ Xl,Yl,X2,Y2,X3,Y3,X4,Y4,X5, Y5: HPLOT Xl,Yl TO X2,Y2 TO X3,Y3 TO X4,Y4 TO X5,Y5: NEXT N . 4030 GET CS: IF CS ( ) C THEN 4030

5040 RETURN 5050 REM DADOS LETRA M 5055 DATA 40,55,58,50,58,73,40,80,40 !SS,40,55,58,SO,69,60,53,65,40,55 ,80,50,69,60,53,65,65,55,80,50,80 ,50,65,55,65,80,80,73,80,50 5060 REM DADOS LETRA I E C 5065 DATA 83,55,97,50,97,73,83,80,83 ,55,100,55,112,50,112,72,100,80,1 00,55,100,55,120,55,130,50,112,50 ,100,55,100,80,112,72,130,72,120, 80,100,80 5070 REM DADOS LETPA R 5075 DATA 130,55,155,55,164,50,140,5 0,130,55,13C,55,155,55,155,65,130 ,bS,130,55,i55,55,155,65,164,58,1 64,50,155,55,130,65,140,58,164,58 ,155,65,130,65,130,65,140,58,164, 71,155,80,130,65,130,55,140,50,14 0,72,130,80,130,55

Figura 2: Desenho executado com o aplicativo Um aspecto muito importante a incrvel facilidade com que um aplicativo qualquer pode ser traduzido de uma lngua para outra. Atravs de um editor especial, todos os textos produzidos por um aplicativo podem ser retirados, traduzidos, um a um, e recolocados em seu lugar. Essafacilidade vem do fato que o Mac armazena os textos em uma rea bem definida, separada do resto do programa. Assim, eles podem facilmente ser trocados e, mesmo que o novo texto precise de mais espao na tela que o anterior, a janela de texto pode ser manipulada para faz-Io caber - tudo isso sem mexer em um byte sequer do programa em si. Com esta capacidade, qualquer programa desenvolvido para o Mac pode ser comercializado em todo o mundo, adaptando-se em questo de minutos.

Mac Print

computador inovador, tanto em hardware quanto em software. Sua facilidade de uso faz do Mac um computador extremamente agradvel de se trabalhar e explorar. Dia aps dia surgem novos produtos, programas e perifricos, todos igualmente fceis de usar, graas padronizao estimulada pela prpria Apple. Todo o investimento, de mais de trs anos de projeto, trouxe a ns este novo computador, corajosamente contrariando todas as tendncias estticas e de compatibilidade com outras mquinas - especialmente a tendncia de compatibilidade com o IBM PC. Introduzido inicialmente a US$ 2495 (com 128k e um drivel, em alguns meses seu preo j caiu para $.2195; ao mesmo tempo, foi lanada a verso de 512k, vrios meses antes do previsto, a $ 3195. Mesmo com a qu8da de preo, porm, o Mac est ainda um pouco longe de poder atingir com fora o pblico dos "home computers".

Curso de Programao HP-41 Aula 3


Jos Eduardo Moreira Wilson Jos Tucci

Agora que voc est acostumado com a HP-41 e j sabe us-Ia bem, podemos entrar no assunto que deve lhe interessar muito: a "programao". Se voc nunca programou antes, ver que programas no tm nada de "mgico" e depende muito mais de voc do que da mquina. Se voc j est acostumado a programar microcomputadores, vai reparar que programar a HP-41 d um pouco mais de trabalho, mas em compensao, ela tambm oferece alguns recursos habituais em microcomputadores. Para voc fazer um programa, ter antes que estrutur-Io e para isto ter que estudar. No dever esquecer que a sua capacidade de fazer programas o resultado do treinamento contnlJO e raciocnio aplicativo. Quanto mais fizer, melhor saber faz-Io: Um programa de calculadora consiste de uma seqncia de passos; cada passo constitudo por uma funo da calculadora ( +, -, *, STO, RCL, GTO, SIN, COS, IN, ... ), essa seqncia de passos realiza um trabalho. Programa Faamos um programa para calcular o valor da funo y = sin(x) + 3 para um dado x. Se voc fosse calcular' o valor dessa funo para um certo x, voc faria: x SIN digitaria o nmero

Um programa para calcular essa funo teria os seguintes passos:

LBL SIN 3 END

Agora o programa j est digitado na memria da mqyina. Para us-Io basta dar XEQ FUNAO e o programa, ou seja, a seqncia de passos que o compem, executado. Usemos esse programa para completar a tabela: x 30 45 sin (x)

Todo programa da HP-41 comea com um nome (linha 01), que pode ter entre 2 e 6 caracteres. Depois vm os passos que executam o servio, e ento o comando END, que significa fim do programa. Para introduzir esse pequeno programa na mquina, faa:

60 90
Para colocar a mquina em modo de graus d um XEQ ALPHA DEG ALPHA . Se quisssemos em radianos, bastaria colocar: XEQ IALPHAI RAD IALPHAI. e fazemos o que mostra a tabela I.

GTO LBL IALPHAI FUNOIALPHAI SIN ;

Tabela I digitar CLX 30 FUNO 45 FUNO 60 FUNO 90 FUNO display 0.00 30 3.50 45 3.71 60 3.87 90 4.00

XEQ IALPHAI XEQ IALPHAI XEQ IALPHAI XEQ IALPHAI

IALPHAI IALPHAI IALPHAI IALPHAI

Voc deve achar muito chato ter que digitar XEQ ALPHA FUNO ALPHA cada vez que quer executar o programa. Felizmente podemos, atravs do comando ASN (Assign), associar uma tecla a qualquer funo da calculadora ou programa que fizermos. Digite: ASN IALPHAI FUNO IALPHAI LN Agora o programa que fizemos executado sempre que apertamos a tecia LN em modo user. A calculadora est em modo user se o aviso "user" estiver visvel no display. Para colocar

ou tirar a mquina no modo user, basta apertar a tecla USER. Com a mquina em modo user faa:

3.50 3.71
3.87

Para podermos estruturar corretamente um programa devemos, ento, fazer seu fluxograma. Fluxograma a representao grfica da lgica do programa e representa )Odos os passos que devem ser seguidos para sua execuo. Todo fluxograma construdo em cima de alguns poucos blocos bsicos \tabela 11). Exemplo: faa o fluxograma de um programa para calcular o quociente e o resto da diviso de um nmero M por um nmero P, utilizando apenas as operaes de adio e subtrao. Soluo: O quociente da diviso entre M e P o nmero de vezes que P "cabe" dentro de M e o resto o quanto sobrou de M na ltima vez, quando no deu mais para tirar P. Obviamente o resto menor do que P (figura 1).

4.00

Fazer programas grandes diretamente na HP-41 no um processo muito eficiente e est muito sujeito a erros.

Tabela 11 bloco nome funo ponto de incio ou trmino de um programa conjunto de operaes aritmticas indica a possibilidade de desviar para outro ponto do fluxograma baseado numa comparao. indica continuao do fluxograma em outro lugar onde N um nmero de referncia cada seta indica o caminho a seguir no fluxograma entrada de dados do exterior para o programa. sada de dados do programa para o exterior.

terminal processamento deciso

O
O

continuao

t~

cJ
()

caminho leitura sada

1. Faa um fluxograma para achar a raiz de equao de 1~grau ax + b = O, supondoquea=O. 2. Faa um fluxograma que, dado um nmero natural N calcule N! (N! = Nx(N-1)x(N-2)x ... x2x1). Por definio O! = 1. 3. Faa um fluxograma para achar as raizes de uma equao de ~ grau ax + bx + c = O. Se o discriminante for menor que zero, no h raizes reais.

RESPOSTAS AULA 11

AOS EXERCCIOS

DA

1. Passar para RPN e calcular o resultado: a. 4/8/6/2 + 4' 8/6/2 = IHl4 b. [(3+2)/5]+1 + 3' 2+5/1 + = 2.00 c. [(2+3)/(4-12)] + [(8 + 5)x(7 + 15)] = = 2 t 3+4 t 12-/8 t 5+7t 15+x+ 285,38

.!.+l
2
inicializa o contador que quantas vezes P cabe em M

2
5 3/+2 = 6.96

2+l...
7
5112 7/3

11

13

!.+

2 = 1 2/1

11/+-4
M maior que P?

t 13112+

no

e. sin2 (30) + cos2 (30) = =30 SINx2 30 COSx2 + = 1.1')0

volte para tirar mais

+ I
~

Sim. ainda d para tirar P

<ii0
( FIM)

tI

quantas vezes P coube em Meo resto

f. eTAN2(\I3') = 1.01

= 3O\/X'TANx2ex

2 Passar para a notao cular o resultado:

infixa e cal

1.-1+1

a. 1 f 5+2*3= (1 +5)*2-3 = 9.00 b. 4' 6' 2*3 -+- = 4-(6*2)+3 = 0.00 c. 3 H+5 t 8+4 3-2*/ = [(3+5)* *(5+8)]/[(4-3)*2] = 52.00 d. 45 tan\f)(l =Vtan 45'-1.00

Computao McGraw-Hill
NOVA REVOLUO INICIAO AO BASIC Fax/Fax - Cr$ 9.900,00
Escrito em estilo fcil, este livro, destina-se especialmente aos principiantes que no tenham acesso aos micros, mas que desejam familiarizar-se com os conceitos de programao. Pode ser aplicado a qualquer computador que use a linguagem BASIC. Um texto alegre que aceita a possibilidade do leitor no ter experincia anterior.

INDUSTRIAL

Na Era dos Computadores Osborne - Cr$ 6.900.00 Esta convincente e provo cativa obra, fornece ao leitor, esclarecimentos sobre o poder e o futuro dos micros, antecipando mudar,cas radicais at o final deste sculo. . O autor explica a revoluo da microeletrnica e seu impacto na sociedade.

CP/M - GUIA DO USURIO


Hogam -- Cr$ 13.900,00 Escrito para usurios de bom nvel de conhecimento. Este livro considera a histria e funes do CP/M bem como os comandos prprios para o usurio. Inclui o CP/M-86, sistema operaconal baseado no 8086 e 8088.

PROGRAMAO
Scheid -

COMBASIC

Cr$ 13.500.00

INTR. AOS MICROCOMPUTADORES


Osborne Cr$ 12.500,00 Livro para p'rincpiantes em microcomputao. Os conceitos bsicos sobre todos os Micros: como funcionam e que eles podem fazer. Introduz o leitor nas linguagens de programao, cdigos binrios e aritmtica, lgica, temporizao, memria e como us-Ios.

A finalidade deste texto fornecer um curso de programao de computadores, empregando a estrutura padronizada da linguagem BASIC. Proporciona ao leitor condies de organizar e escrever eficientemente programas de computador. 350 problemas resolvidos. Destina-se a todos o curso do ensino Superior e Tcnico que utiliza o BASIC como linguagem.

COMPUTADORES
~ttffied ~Cr$ Quinhentos gramas usando Introduo do Universitrio Tremblay -

E PROGRMAO

APPLE 11- GUIA DO USURIO


Poole Cr$ 23.SOO,OO Este o melhor e mais completo manual do APPLE 11. Contm descrio de todas instrues, comandos e funes. Uma seo especial em programao avanada e aplicaes. Claro e objetivo. Obrigatrio para os usurios do APPLE 11.

13.500,()(I e trinta e cinco problemas resolvidos e vrios proa linguagem FORTRAN, BASIC, PASCAL e PUl. Computao e Programao, destinado ao mercaem cursos de Engenharia e Administrao.

CINCIA DOS COMPUTADORES


C.r$ 13.500,00 Introdu.o Cincias dos Computadores, usando uma abordagem ALGORITMICA. Livro texto dirigido Engenharia, Matemtica e outras reas afins. Best Seller nos EUA.

PROGRAMAS

USUAIS EM BASIC

* Programas usuais em Basic TRS-SO * Programas usuais em Basic APPLE 11 * Programas prticos em Basic
Cr$ 12.000,00 cada

INTRODUO
Scheid -

A CINCIA DOS COMPUTADORES

CrS10.900,00

* Vrios programas prticos para pequenos negcios, pequenas empresas de Engenharia, Admnistrao, Matemtica e Economia Domstica.

Teoria que possibilita plena compreenso da introduo cincia dos computadores. Indicado para cursos de Engenharia e Administrao (2'?sanos). Vrios problemas propostos e resolvidos.

MANUAL
Peckham -

DE BASIC PARA O APPLE 11


Cr$ 13.900,00

CIRCUITOS DIGITAIS E MICROPROCESSADORES Taub - Cr$ 14.900,00


Livro texto dirigido Escolas de Engenharia, s reas de projetos lgicos e microprocessadores. Concentram-se nos modelos 8080/8086 com detalhes para aplicaes em outras unidades. Explicaes claras sobre FLlP-FLOPS e MEMORIAS. 300 problemas cuidadosamente elaborados. UM BEST SELLER!

Manual prtico que possibilita ao letor aprender a programar o APPLE 11 atravs de exerccios drigidos. Escrito em linguagem fcil, acessvel, dirigido a hobistas e estudantes.

VISICALC
Castlowitz Cr$ 12.900,00 Um guia prtico para utilizao do software VISICALC. Atravs da leitura deste manual, o usuro poder obter o mxmo em qualidade e efcincia em sua atividade.

PROCESSAMENTO PROCESSAMENTO
Verzello -

DE DADOS - Volume I DE DADOS - Volume 11

Cr$ 10.900,00

CONSTRUA SEU PRPRIO MICROCOMPUTADOR


Usando Ciarcia -

z-ao

Cr$ 22.900,00

Este guia prtico, mostra como voc pode construir seu prprio microcomputador, baseado no famoso microprocessador, o ZILOG Z80. Cada subsistema do computador completamente explcado e baseado em informaes testadas de forma que o leitor possa facilmente modificar o sistema. Muito fcil compreenso.

Mantendo-se independente de qualquer tipo de linguagem ou tipo especfico de mquina, os autores discutem todos os assuntos da rea de maneira integral. Como usar a tecnologia de computao para resolver problemas de processamento de dados. Livro introdutrio para Economia, Administrao e Engenharia. E acessvel a estudantes com limitados conhecimentos matemticos.

~r~~.
NOME

.tna.
LIVROS

EDITORA McGRAW-HILL

DO BRASIL LTOA.

PROGRAMAO
Hurley -

TKS 82-83-85 CP200

Cr$ 5.900,00

ENDEREO _

Aprenda a programar seu TK e CP-200 muito facilmente. Programas em BASIC, jogos, grficos, etc., para principiantes. Fcil assimilao e compreenso.

MICROPROCESSADORES
Osborne Cr$ 13.500,00

- Conceitos

Bsicos
Rua Tabapu, 1105 - CEP 04533 - Telefone: 881-8604 -Itaim-BibSo Paulo - Brasil.

A mais compreensiva e atualizada introduo ao sistema de microprocessadores. Tudo sobre microprocessadores. A maneira mais fcil e simples de entender os microprocessadores. Conceitos bsicos.

* Em todas livrarias do Brasil ou diretamente.


Solicite catlogos.

Observando os cus
3000), que coloca o observador na superfcie da Terra. O resultado a posio do planeta no cu terrestre no sistema equatorial, que caracterizado pela declinao e ascenso reta. Esse sistema fixo em relao Terra e no preciso se preocupar com a hora ou posio na superfcie da Terra. 5) Como dispomos das coordenadas heliocntricas da Terra e do planeta (sua distncia em relao ao Sol e ngulo em relao a uma origem fixa), podemos calcular a distncia que os separa usando a lei dos cossenos (a2 = b2 + c2 + 2bc. cosA,com a, b e c lados de um tringulo e A o ngulo entre os lados b e cl. O clculo feito pelo programa e o resultado fornecido em unidades astronmicas. 6) Tambm da trigonometria, podemos calcular o dimetro aparente do planeta, j que se conhece a distncia at o planeta e o seu dimetro. O clculo parte do valor tabelado de8o. (dimetro angular em segundos de arco a uma distncia de I U.A.), e corrige este valor para a distncia real. O resultado tambm fornecido em segundos de arco (1 segundo de arco vale 1/3600 de um grau). 7) O ltimo clculo o da magnitude aparente do planeta e feito baseado na distncia do planeta ao Sol e Terra na sua fase iluminada e em uma constante que caracteriza ~ poder de reflexo do planeta. Lembre-se que quanto maior o valor da magnitude, menos brilhante o planeta; e que um aum~nto de uma unidade na magnitude diminui de 2,5 vezes o brilho do planeta. Para referncia, diga-se que as estrelas mais brilhantes do cu tem magnitude entre O e - 1.

o objetivo deste programa fornecer informaes sobre posio, distncia, tamanho, fase e magnitude de todos os planetas do Sistema Solar, em qualquer data a partir de primeiro de janeiro de 1980. Foi programado na linguagem BASIC, utilizada em microcomputadores compatveis com o Apple 11, mas pode ser facilmel.1te adaptado aos demais microcomputadores. E necessrio apenas entrar com a data desejada (dia, mes e ano) e o planeta, que o programa se encarrega dos clculos e imprime os seguintes dados na tela: a) Declinao em graus, minutos e segundos. b) Ascenso Reta em horas, minutos e segundos. c) Distncia do planeta Terra (em unidades astronmicas, que a distncia mdia da Terra ao Sol e vale 149.600.000 km). d) Distncia do planeta ao Sol (tambm em .A.). e) Tamanho angular (em segundos de arco). f) Fase, que a porcentagem iluminada do planeta que vista da Terra. g) Magnitude Aparente, que uma medida do brilho do planeta.
A

Programa em Funcionamento
Aps a digitao do programa basta acionar RUN e a tecla RETURN. A tela ser limpa e aparecer uma mensagem pedindo o cdigo do planeta e uma tabela de cdigos (l-Mercrio, 2-Vnus, 3-Marte, 4-Jpiter, 5-Saturno, 6-Urano, 7-Netuno e 8-Plutol. Basta digitar o nmero do planeta desejado e RETURN que aparecer na tela uma mensagem pedindo a data. Digite o dia, tecle RETURN, digite o ms (em nmeros de 1 a 12), tecle RETURN, digite o ano (em nmeros completos. Ex.: 1981 e no apenas 81) e tecle RETURN novamente. Os resultados aparecero impressos na tela.

Hipteses Fsicas
. O programa assume as rbitas dos planetas como sendo elipses com o Sol em um dos seus focos e pertencentes a planos inclinados em relao ao plano da eclptica (plano da rbita terrestre). Foram desprezadas as perturbaes que uma rbita sofre devido fora gravitacional exercida pelos demais planetas, pelo fato da diferena de resultados no ser muito significativa.

Preciso dos Dados


Para se ter uma idia da preciso dos dados obtidos pelo programa, vamos apresentar um exemplo (Mercrio) comparado com os resultados esperados (tirados do Anurio de Astronomia de 1983, de Ronaldo Rogrio de Freitas Mouro - Editora Francisco Alvesl. Planeta: Mercrio Data: 12/02/1983 Resultado do Programa Declinao: 20 graus 23 minutos e 35 segundos Ascenso Reta: 20 horas 13 minutos 24 segundos Distncia de Terra: 1,101 U.A. Distncia do Sol: 0,459 U.A. Tamanho angular: 6,119 segundos de arco Fase: 0,722 Magnitude: 0,761 Resultados do Anurio Declinao: 20"21 minutos O segundo Ascenso Reta: 20 horas 12 minutos 6 segundos Distncia da Terra: 1,084 U.A. Distncia do Sol: no fornecido Tamanho Angular: 6,2 segundos de arco Fase: 0,706 Magnitude: 0,1 -' A distncia do Sol no foi fornecida no Anurio; foi comparada com valores mdios e se mostraram corretos.

o Programa
O programa obtm os resultados, seguindo os seguintes passos: 1) Com a data fornecida, ele calcula o nmero de dias transcorridos desde o primeiro dia de janeiro de 1980. Isso feito na sub-rotina que comea na linha 2.000 e o clculo feito com exatido, inclusive levando em conta os anos bissextos nos finais de cada sculo. Lembre-se que um ano bissexto quando divisvel por quatro e no por cem, ou quando divisvel por quatrocentos. Para verificar essas condies, foi usada a comparao da diviso do ano por quatro, cem ou quatrocentos com o valor inteiro da mesma diviso. Isso objetiva uma maior facilidade na adaptao do programa a outros microcomputadores. 2) Com o tempo transcorrido, os dados referentes rbita do planeta e posio do planeta em primeiro de janeiro de 1980, (fornecidos pela sub-rotina que comea na linha 1(00), calcula-se as coordenadas heliocntricas do planeta isto , a posio do planeta no plano de sua rbita. ' 3) Faz-se o mesmo procedimento para a Terra, obtendo as suas coordenadas heliocntricas. 4) Usando-se o ngulo de inclinao entre os planos das rbitas e as posies dos dois planetas, faz-se a projeo da posio do planeta para o plano de eclptica e uma transformao de coordenadas (sub-rotina que comea na linha

Antonio Fernando Bertachini de Almeida Prado aluno de Engenharia Qumica da Escola Politcnica da Universidade de So Paulo e de Fsica do Instituto de Flsica da Universidade de So Paulo.

32 MICROHOBBY

420

PSI
)(.

{:I

ATN
U :. ;.. I...

(AU

SGR

(1 - AU

i5

REM

ANTONIO

fERNANDO

8ERTGCH

4::~O'( ~:: ~~IN


iDO)(-

20
;::;0

lN! DE ALMEIDA PRADO rOR 1 ~ i TO 25= PRINT


I F F J N T ';F::;C:OI...H(~ . ..1 tiDO i" FI< 11"-1T

cor:

O)
(Ij. )(

~f

3111416
3,,'i.,(l:i.

li:.

: NEXl
1::\

DO)
iDO)

F' L.tiNE"I'

D[ EE .q. (;.

450 K8

= ATN r )( ;: o

(1

X)
1< .... 1< b + :J" i 4

T H [N

rF<INT PF,:INT P P I 1"'/ T P F~I HT Pi<INT

i"!EPCUF<: 10
1.) [:
ii ;:)

l/ U ~::: ,..

470

Ir y < o AND X ) o [NEM K8 !< B + 2:":::;;.:i.


/} :i.
I

iDO 1.iD
i ;.:!.() :. :3 o

TE'" .. Jl...iP J T[I'<'.' U(:lTUPNO'" UI::tll-..lO .. Pi=<:Ij-iT ..../ .. j-ILTUNO.'/ r R I l\!T .u D .... P L. U'"I' {-\ () ti r O F< ! .. , i TO )':: PRli---IT I
rij(;!.;

480 K8 - K8 ~ 180

J.i4i6=LL

- K

500

IF P ~
700

aR P ~ 1. THEN

GOTO

1.40 INPUT F
UO~::;UD .~~~DUU c;O::::;UE: 1.000 i/O.N o::: :] (i Ci .)i; 1:) :1 I Fi' NJ{:.CI i ')[)N N .... 3{,U:: Ef')T() i:JO i."j ~~ !'''i .:;; i-"j ~.; 1D H i! -} E:I. i :.::;0 J .:()D

ao

'.::.; 3U

540
-;1(-

I r:' L. (1 r'j ) L.AM ~ LAM

o 'r li i::: 1'1 c o TO::;::.:: o


i

2'; 3.1416= GOTO

220

I... - N ~ 360

/ :3.1416 ~ EP

SIN
';::.; t. D
'.:.:.:7 {) (11...1
o:::

(ri) + E: :i ;):.'::10 IF i... > o lHEN (iOTO 2~:5jJ ;.:.i -4D L o::: L. + J (:. D:: C o T t) ~:~ :::: u 250 IF I... 360 THEN GOTO 27D ;.:.:~ o I .... L. ::j(;,n;; C}() T <> ;:,:,:: :.:.:;(J ;:.:.:70 \) o::: 1... L!:: \) .... 1. .1 :u:'::; .. i 4 i 6 ' :. n () '::::UO j=( o::: {ll"j)i (t EF:<0 EP) ./ :::.i. {-

ri L)';
....

L (:,(i 1:::./ SElO ':.'i?D

T (:1 i'! (P ';)I;:' ')i; :::' I ii ( Li... .;( :3:1 ~i.l:}:. ,,/ i UD) ,./ F~ ~::; I (j ::: (L L!... I::: )',i; :::;,,:. 4 i /;

[P

COS

(V

600

CiOTO

290 REM CALCUL.OS PARA 300 ME = 360 ~ D / (TE


~:~j.(:)

A TERRA * 365.2422

/00

AU

~ RI...*
(ITN

UCiO

SIN
(lU)::

L[/
L.(i t-i

LL.)
180
:::: :::: .. i4:.6

3
.}

L[(.11...1 ::::

I...L) * J.14i6
t

If:' N~:: ( :;6(:) -I'I';!I~:N (~()'f'O ~:~~~~(:) 320 NE = NE - 360= GOTO 310

AU LAM
/;2.0

LE

330 ME = ME
"i4i,S
'340 1...[ ::::" NE

ET - WT=ME
iDO
:360 ,/

ME
)1

IF LAM )
Ir I...AM
(

o
~

3 .. 1416 / 180

THEN

/
+

~ I...AM + 2

GOTO 740
3.1416=

G01'0 GOTO

:::;.. i 4 :\(:.

F T:'I;

3"i4'i.6 lHEN

:'::'50 IF 360 LE

370 Ir I...E < :360 THEN GOTO 390 380 LE = LE - :]60= GOTO 370

1...[ ) U Tii!:::N CiOTO :::):'0 = L[ .~ 360= coro 350


1... E 1/.1 l :: l.) I:::

/40

AU
: (.

::)(;;' o ') E::::

o:::

' .. 1 [li

:;:: .:i. '~i

:'} oD

,/ itlO F<E:::: (1
COS

= RI... * TAN (PSI) * SIN ( I...AM - LI...* 3.'i.4:.6/ 180) / R E, SIN LL - LE)* 3.1.416
.. i

... P Til;

PT)

.I

(:;

}.

P T .)(??U

i DO;'
o:::

(l)[

HEI"

(lTi'i

(i\l!...i)

410 AU

SIN I... - O)

3.14:1.6

/uu

UObUr::

::lUDO

R0
0:1.0
B~.~()

SGR

(RE RE + R

R .i(. 1\ E ,)( CO~:; ~(: 3 . :.4:1.; / tBO TT ,::, TD / PC


~~ 'l~

I...L. .... I...E )

43579,48.0941733,6.74

.00000

R -

"6j.52j.?:~~55,,7:~3~352~j.3i'l 2~395792rIIO{J67826T"72~J:33i673u .
394435,?6.4997524.16.92 .. 000 O:.72i DA'TA i"E~(~()897i26,,:~07E~~~,~:~J5

:.?:.8 DA'T"A

FA = (1 +
G (~ I'~ (F

(LAM - L * 3.:1. 4j.{; iDO ./ ;? MAG = 5 * LOG (R * RO I F8 I COS


(1

./

1169(J~3j.66rOu09:}3865TlI15236883
.1.8498011,49.4032001,9.36,.
UOODD4::53C/

l...O G

(;\. U)

... ;;:~ <S ,.

FOI'. 1 :::: 1 TO ;?;':i:: 1

[)A1'A ii .. El6224ri46n966:365yi 4.0095493.0.0484658.5.202561

PF<INT liCODIUO P + :l
U ~:.'j~~i
O()

1)(>

,1.3041:1.819,100.2520:1.75,196.
74,. "ClDO:.9(?4 C;,:

PRINT
PF<INT

P F<:urr

..... [) (d'

(~I:: ir;;

D ,; /i./

1/

i=

i/i'

li ;;

r:'

DA'JoA 29tI4577jrj65"3222q2,~ 2"6653974~"(:)556155.y9'1554747r ~.4893741.113.4888341.:1.65.6,

PPINT

,'iDECI...I NtICt-,O ~ .",,.


:::: D (lf'l[! DD

Ir
D/A D/I:')

C(l

< o

lHEi"l
N

FFINT

.DUD:.?4 DA"fA l~~4,,(Ji2477228~07(:)E~55iy i72"7~~6~:~2i3l~)t~(:)46~~~2:327j"9"2j"~3 4T7729i~95r7::~~fJ7~)f~J642~65'18,u


i'1 .U-,)

F R :u) l 1.0: H :; .' C FU\il..l ::; i';; Iili"! ;= i"~~:;FG;:ii ~::'.EGir FRIHT

UOOU7/E

1130

880

PRINT
H o i<:
,:\ :::;

.'.

!lASCFNSA0 RETA~ N;;AH;li ~i< !l.i i: r. :" I i\! i~1r; ;: rr ~::; I::: D
li ,:

DATA 164./9558.260.3578998 ,47.8672:1.48 0090021.30.1095 ::~~~~~~~~7.131.56064Y4.62.2 DATA 250.9.209.439,222.972 11,25~~~~37r:}9t,78459,j.71,1~:)7r1"(:)9~


941,8.2,.000004073 T ~ J(7 * P + :1.) Fi = j(9 ~ r + 2) W = J(9 P + 3) EP - J(9 * F' + 4)

1140

892
U')~:5 ?Clo '?O~5
'):. C) '~):1.!:S

PRINT N1
F'H

U.0N~i49600000

KMN
E iii U

:un

P P 111 T .., [) I:::. T ti I'i C I ti F'F~I: (IT


o :: f' ';;

c:C'

,::. n i..

1150 1160 1170 1180

r ri :L N r
LU F'F<JIiT

i'

T tIH(ii1HO DL (IF,' C,)

(,Nt:)UI...j~!R::
f.

i'

:.:

TT

120U li = J(9 P + 6) 1210 o = J(9 * P + 7) 1,22(:) 'r"(:) :~ \.J(9 ~0 F) t 8) 1 ~~:4CJ r~ETUh'(.!


;:'::000 ;.:.-010

PRJNT
):?~:.:; 9;W
(j

NFASE

(PORCENTAGEM

ILU

l"i I N 1:'1 D t,):: li;: F (, PR 1i"lT

REM FOR
THEtJ
FF<'INT

SUBROUlINE DATAS = 1 TO 25: PR1N'r


I
!/[)(IT(\;: .....

PRINT
lv'itlf:! END
:=

liMAGNITUDE SUBROUTINE

AP~RENT[~

li

~5 () :l.OOO
100;::;

REM
f~IDO~:)

TA81:::LA DE D

iOiD

":: P .... 1. Dlt'i -./(/;2) 1.();2 () I~E(.~D TE.ET:.IAlT,.FT 1 .. 00004.98.83354.102. iD3D DATA ;~j'J 4 () ::i :' o :1. {.? i \:j FOF~ I :"~ .t TO 72 i04D 1.(l;:'jO H[(-ID j(I) NEXT I 1060 DATA .24085.231 .. 2973,77.14 1070 42i28 2Cl56306 3870986~/.OO

It~PLIT rrDltl/!;;D I NP UT"'H[~:;'" ,: C 2U~:.:iO I t) P U Ti ..ti ij () ..... ;; F :::: C) ;:.:::CJ (, Cl 1< :::: O:::;: :.:.~ ri 7 Cl Ir r < 1980 THEN 2020 ~:::ocu Ir r = 1980 THEN 2130 For;: I :::: 1')00 '1"0 (r: .... :\.~: .;?O')[) ;.:.::.OU IF I I 4 - INT (1 / 4) AND 1/ :.oo < :> lNT (1./ iDO:' v .... i< }- 1;::)04C) I iDO) IF I / :1. 00 :::: Ij--.!T (I INT (I ./ ADO tiNO I / 4UD ... ) lHEN 1< :::: I(i i

*-IBERNE~
;.~ i ;;:.() NEXT I ;;.:1.3D IF C ... ~2 ,., ~::j. 4D IF C .... '.:)

;;::1.50
;.;~ J. 60

IF

~:.: t 70
;':"1DO
;::' j

IF IF
IF'

'? C)

Ir:' c

'7 .... ::l i THEN ,lHEN 1 ..- ~59 C .... 4 THEN Z .... (1'0 ~.) THEN :1.;:::0 C .... "" .L ..1::.... i ,.! r .... THEN .i: i .. , C .... ./ THEN l_ ..v
",':! "V

---seu mlcro merece.

SOFTWARE

:UJi

.... f:
....

:':::;2UO

IF C

Ir:' c Ir:' c
o:::

IF C
D
.;

.... .... .....~.

Z .... ;? 1. ~~ r, '1 THEr-! O'r ,,~ .. .... ;.~4:] ."~ ,'7 ':) i Cl lHE:N Z .... f: " _.' .., :. :. THEN ". .... ~JCI4 . C'O THEN ?: .... :3:]4 .~ .. + ( "!'.. .... :i. ?BD ) .)(.

THEN

PARA aUEM
EM CADA FITA

aUER AVENTURA E MUITA AO


PARA MICRQS

5 SENSACIONAIS JOGOS, EM LINGUAGEM OE MOLnNA, DE lGICA SINClAIA' COM 16 K DE RAM A.VIN1\Jl4.&'MI.5TtRIO COMBATE NIGHT GUNNf;R
ALERTA POLARIS OUELO VERMELHO

0';

PATRULHA GALAcncA
NAVE ME FUNGOS MUT ANTES GALTlCA PEASEGU100R

0''

~:~{..~ ~,:5
(')ND

CASCA,

A COBRA

PIRMIDE INCA
SA80TAGEM MA,ZQGS USS ENTERPRI5E

l<

CRAZY KONG CENTOP~IA FROGGER

.OAVENTUREIAO

SUCURI

SCRAM8lE

50S VEGA III

li'
F' C

INT

(F

./

A)

:ioDO < INT (F I iDO) AND ;. ;::.~THEN D .... D + :l. Ir: F ./ :iDU o::: INT (F / iDO) tiNO F ./ 4;;ID o::: INT <F / 400 ) (:ND C > ;2 THEN D o::: D + :. r:ET!..Jr~N r~[i"l ::;UBROUTINF or; i"iti COOF~ DEr,!tlDtiS

SE

SEU NEGOCIO PROGRAMAR

2 FITAS CONTENDO AS MAIS POOfROSAS FERRAMENTAS PAAA PROGRAMAR EM BASIC ou LINGUAGEM DE MAQUINA

ROT 1-P1us
SOG UtrlI now trlIispoderoWl Vff5l0 dt ROT I NU _cion.1 SinetN OPltKo~1 Gr~fieo . I

MERGE
ROT 11

ASSEM8lER OESASSEM8lER COMPilADOR

BASIC

Procure nossos revendeclores em todo o Brasil


Av. Graa Aranha. 145 -S/lOJa n~ 1 . Rio de Janeiro RJ CEP20.03(1 Tel (021)262-6968

"y,

MICROCOMPUT

ADORES

l TOA.

(iNU.... ( i... ~il' ) [) :1. ._.

::;I i''-!

(I:)
i':

C O::::. (DEI')
f~l T j'-i

ET))< ~:;IN

COf:; (F)
'1(.

(E)

3IN
Para A"' 10pgrafas e Tcnicas Agrcola o Programa para a F!lmRia Sinclair <TK83, TK85, CP200) e muitos outros. que economiza horas de servio.

NU Di DO T(iN
ii 1... ::::

;.;~) ) D:. :J~ iDD . Di:: Di O":

\' ~:; ....

/ J ..14:.6 (lB;:; (D:'!.) ~::: J i"~ (i... tI fi) )(. CO~; ([) (BE::T) .j(. ~:)IN ( [ ) C O ::; (I... (1 ij ) ) t,TN (\'::) /

AGlRJIM]E
PLANILHA I!:

N ({]R
ANALTICO

DE CLCULO

~il. .. +

:i. DO

I F Y::::. <

O (.\ND
o:::

c o ::::: (L
+ 3:::'0

(,ll" )

U 'fHEN ('11... (i 1. ... (, L. ./ F' F~ ._. (1 :1. ....

{lI...

j,

:5

::l:i.UO
3:.U:::; ::):.:'i.0

(lil....

i< :::.;....
F: ;:;.....

I NT INT (.~i) I d T (6 O
I i"~T

'I(

(. o ,i
INT

FF1 ::: (U

'li:

FI~ ....
* Aceita ngulos, distncias e primeiro azimute.
Faz compensao de ngulos e projees. Calcula a rea em poucos segundos. Mostra todas as colunas de clculo. Com opo para imprimir em papel.

(6D

')(.

r:' J.

....

[::.

(Di)

:::':i. :::::0 C(, o::: lr,!T <[):.) ::::5.;::::::; (.;(,) :::: ~~; CiN (D D) :li: Ci(, ::::j,4U ";i I f) o::: I N 'r ( U )(. F1.) ::li ~:;O ;:;FLi o::: I NT <: O :,i: (/:.C)
Ji'-!T.(.CJ F<LlUI,:N J P 1:< :fiO
\.

.)(. Fi))

REMETER CHEQUE DE 6 ORTN PARA: INFORMTICA DINAMICA LTDA,

Rua Minas Gerais. 56 Santa Rosa - RS.


CEP98.9(X)

o pulo do Cavalo

Feito para micros compatveis com o TK 83/85, o programa baseado em um jogo de sucesso nos paises germ~ nicos, quase to popular quanto o das Palavras Cruzadas. E jogado em um tabuleiro de xadrez e utiliza uma nica pea: O cavalo. O pulo do cavalo tem como objetivo fazer com que a pea percorra as 64 casas do tabuleiro, porm, sem passar duas vezes pelo mesmo lugar. Podem ser feitos trajetos fechados ou abertos (como mostram as ilustraes das pginas que se seguem). No trajeto fechado, parte-se de um ponto escolf-Jido vontade e, aps se percorrer todas as casas, cai-se novamente no ponto de partida. Isto no ocorre no trajeto aberto em que, ao atingir a 64~ casa, no h possibilidade de se retomar primeira. O matemtico e gemetra alemo Leonhard Euler descobriu um engenhoso sistema para a resoluo do quebra-cabea. Cobre-se completamente a primeira metade do tabuleiro, antes de se passar para a outra metade. O trajeto fechado.

Em 1773, o matemtico Collini descobriu outro mtodo. Uma rea de 16 casas demarcada no centro do Tabuleiro. So, ento, alternados doze e quatro pulos, fora e dentro da rea demarcada, respectivamente. O trajeto aberto. Na tabela I mostramos quadro das variveis e na tabela 11 mostramos a estrutura do programa.

Varivel

eTo

X(64)

XS/S,B)
L

C Ll Cl
US N

J
I

S
IS ES e FS

Descrio Contador de lances 64 bytes dimensionadospara arquivar as colunas de at 64 lances. 64 bytes dimensionados para arquivar as linhas de at 64 lances. Contm dados que verificam a veracidade dos movimentos do cavalo. AS( 1) corresponde coluna AS(2) corresponde linha O tabuleiro com a situao atual do jogo Linhaatual do cavalo Colunaatual do cavalo . Varivelintermediriautilizada na atualizaode L Varivel intermediriautilizada na atualizaode C Varivelde 2 bytes utilizada na leitura do teclado Varivelde diversasutilidades. Varivelutilizada na leitura de AS Varivelutilizada na leitura de AS Varivel utilizada na venflcao da cor da casade coordenadas(L,C)' Parteinteira de S. Utilizadasna montagem do tabuleiro.

rororororo ro :~~~~~~~~
00000
"ti () r

~~ ~~.,~ (,) ru f'~ o 'D m .... ] m~wro~_or~~'m~~'mm~ :ono :00 :000 o 000000
Z
"tI (J I' 'r) ,;) l JJo:rJ:rJ(::OH H 0:." -i H 0:."::;:
"ti

r- r -ltJ o 'TJ JJOmmml:o:nnlXI H 0:." .._j "'1 -iOJ H ..H


2: _..j

c: :~: ... ;.... ;~~: c: ~Mi :;::: c:: m (":o (::o r" f;' ....j "::::j i m :n .. _j m ::.:: i 11 11" ~Ff I) Ul o o::: 0;::, j :n'". I) f;' '... :n (fi .'-'. i (fi 11 I' o I" :1.. . ..j .._j .... i't:J' .._j i ~::ou.
onr'~) rn
-l
rl"l 00::

r-" tJ r:::I~:J r'M Ij') rTIHHHrTlO -l :-':-':,: '-1 0:."


r'" ", 0'1 cri ~) ~..:. ~r'::Of"f"1I O
11 f' I I;' I
1"1::0

~ ~~~.:<';lJ:i
:m
. O'.l) 1~:,1

~~~ ]:: 1:::1 C) f' C:: III

,:.,:0

* r'"
I

+mC::
f'.m

... ...1""

ru

IJI 0:..:0

I'

(1)
m

0:.,:0 0:0
.... ,

O'"

o 0:.::0 rl"lc: ru zr"


.... I:,}<:::CI o:onlC) f' r'" ':) C) <::: () H
C)t:t(")

.....(j)

1)'I'rJ

ru
('.J

~::O' ..... ...... ~ t,:"


-.. ]
I

I
--i

000

00

* C)
+
f-'

ru :r.o

:no:.::o:n

--1

(rI

-' " ()
'-1

::::-:

1--

:1: rn z:::r:

m
Z
I;)

::-<
m

IJ]

~:) 0::::: 11"11:0 ... :0 H


f'
I

~
ru ru
I;'

r'"
f'

()

'1

C)

f'~

:ro
to
("I

:n

i
J:O
IJI

f;'

(}1

ru

~~~~~wrn0 J) ~DO~OOOO o -~Jmm~(~)(~(~r~)r'-'()(~~-~(')~mij)(n-~Jm (fl

~~~~~mJ)~OHC~WJJ~~~~~O~

OOOOOHWOC
C)
~"'I fi)

DOHDOOOOO
(fi'.::.

::0 fi,:n (":o "rl::: 0::) '1) J) rl"l:n TI Z f::otJ:n:n (":o (;::0 o:::: :n [TI r'" J:O rl"l Z .:0: I J I . ;:: r :n Ji :n :n ITI rl"l r'" 0:.::0 z o::: i 0:.,' c:: rl"lo, " r:::o H r.. TI H:': "'1 o:i' i

C)

r'l'lc:
. ::..

:n

1)1 ~::~:

rl"l III "1


i

I' TI 1
1.11111 I'"

.... . ::[1 2:
f")j .Ii () 1:)-,.

c::

:n

()

1'1

+:..
Z:

(li""

:n

.::..

(t]

rn r" .. 1 f:" ""i f)'

J.I To
Ijl ..

r. T'

rn

n
1.1
].1

'::::'oJ' !"IIIJI rn(11 .)1::.1 1

rn I::) ',.

0::::: -1"" ::0 .1.' I.II:V ,:~:.'1:] TI

.. ::0

])

U III
.... ~ (fi

J)

I"'i

III :n T. UI T' III H o), (,' rn r'" ITI r.l' ,:":0 ]:0 (fi r:l I) :1) =~: C) ::tJ 1)"1rn I)'

<:.o:i'"O

rl'l:n r:1 :;::~: C)


T'jo:::

tTlf,',

... '::'1

z:

1','.(."

(::O'''j(").

::ji;

....J 11 ':0

'rn c: 1)1r' 1)1 :r III III

:::>:1J:13:r:o

To 0:::"

III
(li () rI"!

t,)

II.~I

t::)

-+.

'.J

I . II
I

+
.,;: ..

Z ITI

.,....

Apresentao do TK-OOS
Luiz Carlos Nunes Szente Wilson Jos Tucci

Iniciaremos, com esse artigo, uma srie de esclarecimentos aos usurios do TK 2000 sobre a utilizao da unidade de disco e sobre sugestes do melhor armazenamento de informaes (arquivos). Em primeiro lugar, o que vem a ser o TK DOS? DOS uma abreviao de "Disk Operating System" e significa Sistema de Operao de Disco e o TK, de prefixo, indica que esse sistema foi construido especialmente para utilizar todos os recursos do TK 2000. O equipamento necessrio para operar um disco (figura 1): CPU - TK 2000 unidade de disco (por exemplo: HORCIO da Elebra) interface de disco unidade de vdeo

o que

um disco 7

Um disco de computador (mais conhecido como disquete) um meio de armazenamento de informaes. E um pequeno disco de 13 em. (5" 1/4) de dimetro, tendo em sua superfcie uma fina camada de um material magntico semelhante a uma fita cassete. Um disco dividido em 35 trilhas. Trilhas so faixas concntricas para gravao. Essas faixas so magnticas e no sulcos fsicos, como ocorre nos discos de" msica. Essas trilhas so numeradas de O a 34. A trilha zero a mais externa e a trilha 34 a mais interna. Atravs da abertura ovalada, o cabeote de leitura/ gravao fica em contato com a superfcie magntica do disco. Esse contato em termos. Na ver-

unidade de disco

dade fica a uma distncia de um micron (menor que a espessura de um fio de cabelo). A unidade de disco constitui-se assim, em um instrumento de alta preciso, devendo ser muito cuidadoso o seu manuseio. A unidade de disco possui um mecanismo de posicionamento do cabeote que lhe permite situar sobre qualquer trilha, lendo/gravando as informaes da mesma. Cada trilha est dividida em 16 reas que recebem o nome de setores. O setor a unidade mnima com a qual a unidade de disco trabalha. Em cada setor so armazenados 256 bytes (uma pgina de memria) (figura 2 e 3). Para se acessar uma informaco necessrio, portanto, fornecer em' qual setor e em qual trilha se encontra a informao. O disco gira a 300 rpm, os setores passam, um a um, sob o cabeote. Quando passa o setor desejado, o "drive" efetua a operao leitura/gravao do bloco de 256 bytes. Para se acessar uma informao fim de que este no se preocupe com a velocidade do disco, com o nmero do setor e da trilha, foram criados programas utilitrios. Esses programas constituem o TK DOS. O TK DOS "reside" no prprio disquete, nas trilhas numeradas de O a 2. Ao ligarmos o microcomputador, este possui um circuito que "percebe" se est ou no conectado a ele uma unidade de disco. Se no estiver, ele entra em operao normalmente; se estiver, a unidade de disco ser acionada e a cabea de gravao posicionada para as trilhas O, 1 e 2. O computador l estas trilhas e armazena o Sistema Operacional na regio destinada segunda pgina de vdeo (MP). Sendo assim, uma vez com o TK DOS em operao, esta rea no dever ser usada. O ato de colocar o Sistema Operacional (TK DOS) na memria do computador, denomina-se "boot". Boot

F
I :

-------r
Tracks $3 - $10 ~

-v-

-::

~ -

""" -

-:;r~;k:$0- ;; I
(DOS I I

~ ~ __

:J
\ \ _

~ I

.--

I
: Track $11(diretrio ou catlogo)

,~'q"'" d'_'ri.1

/~

/----1~-------J.--_____. ~
------_ O

': \ ~

I
I

Tracks $12 - $22 .--,(arquivos do usurio) ,-,

I
Track $22

I
11

I
I I I I I

"D'CJ
I'

I I I
I I I I I I I

I
I O

\ \

/ '/

I
I I
L1

'-_/

I I I

rJ
1
I I I '

I I
I I I ~~~ 1- d'

~SqU~

Isquete

'"

ATENCO ,
Voc, que possui um micro de tecnologia SINCLAIR ZX81, a partir do prximo ms poder transform-Io em um poderoso micro, com a incluso de 24 novas funes, tais como READ, DATA, RESTORE, TRON, e muitas outras. Instalao SLOW, de HIGH SPEED, ALTA RESOLUO, PORTAS PARA COMANDO DE CARGAS EXTERNAS, TECLADO MECNICO, etc. para microcomputadores de tecnologia SINCLAIRZX81. Manuteno de microcomputadores de tecnologia SINCLAIR e TRS. WILSON DE ASSIS RUA FABRCIO CORREIA, 145 TUCURUv FONE 203-7967 CEP 02311 So Paulo - SP

Sinclair Place
O lugar compatvel com OS mini-micros.
IZ X 81, TK 83, TK 85, CP 200, APPL Y 300, TS 1000, RINGO, AS 1000, ETC ..,)

MICROS , ACESSO RIOS SOFTWARE LIVROS REVISTAS


Sinclair Place do Brasil Com, de Microcomputadores Ltda.
Rua Dias da Cruz, 215 - Sala 804 Ed. Meyer Golden Center CEP 20.720 - Meyer - Rio de Janeiro Tel.: (021) 594-2699 - RJ.

\.

~
MICROHOBBV

39

MICROK
ASSISTNCIA TCNicA E

DE

MicROCOMPUTADORES

PERIFERICOS

/.

Microdigital , Prolgica , Dismac, Sysdata, Apple, Commodor e

Suporte Tcnico Hardware e Software

RUA BANDEIRA

PAULiSTA

300

iTAiM - SAO PAULO FONE:

853-8640

uma abreviao de bootstrap, que foi tirada da expresso inglesa "to pul/ oneself up by one's bootstraps", que em uma traduo livre, significa "erguer algum pelos cadaros" (do sapato). Isto porque o Sistema Operacional auxilia muito uma pessoa, retirando-a da "lama". O Sistema Operacional "alivia" o usurio de muitas tarefas de controle de disco, permitindo que ele dedique seu tempo ao seu programa propriamente dito. Ao adquirir sua unidade de disco, um disco especial acompanha o equipamento. Esse denominado de Disco Mestre . Ele contm o Sistema Operacionale muitos outros programas aplicativos. Atravs deste Disco Mestre possvel colocar o Sistema Operacional em outro disco. . Vamos ento colocar o Sistema Operacional na memria. Para tanto, desligue o micro, abra a janela da unidade de disco e insira o Disco Mestre. Observe a posio correta (etiqueta voltada para a parte superior direita), prxima ao seu polegar. Feche a janela. Ligue o micro e a unidade de disquete ser acionada e ao mesmo tempo o Sistema Operacional ser colocado na memria. Retire o Disco Mestre e introduza um disco novo. Este disco vem "liso" da fbrica, ou seja, vem com a pelcula magntica, mas no est dividido em trilhas. Devemos inicializar esse disco (colocar as trilhas) para que possamos trabalhar com ele. Digite NEW e coloque um programa qualquer, por exemplo:

Vamos ver um mtodo para classificar um veto r de tamanho M. O mtodo descrito chama-se BURBLE-SORT e consiste de comparaes. Seja dado o vetor A com 4 elementos e que contenha os nmeros 9, 8, 7, 6 e que ns desejamos que fique em ordem crescente. ~~6

a) Compare a posio 1 com a 2. Se 1 > 2 ento troque de posio.

b) Compare a posio 2 com a 3. Se 2 > 3 ento troque

c) Compare a posio 3 com a 4. Se 3 > 4 ento troque

>5 ~

REM DISCO NUM fi:. 1 HOME PRINT "DISCO # 1" Ao fim dessa passagem, voc nota que o maior elemento est na ltima posico. . Devemos repetir os passoa a, b novamente

> 10
>20

7lfJ}(J)1j)a(j(jJ~
-=INFORMTICA FINALMENTE UMA L1STAGEM CONFIVEL
A melhor opo em programas da lgica Sinclair, listados em impressora e testados. Pea j sua assinatura anual e receba gratuitamente uma Pasta-Arquivo para seus programas.

A TROPICAL a'inda lhe oferece:


- Microcomputadores e perifricos - Suprimentos e acessrios em geral - Desenvolvimento, venda e locao de programas das lgicas: Sinclair, TRS-S e Apple - Consultaria e servios empresariais

CONSULTE-NOS SEM COMPROMISSO


TROPICAL INFORMTICA LTDA AV. NOVA INDEPENDNCIA, 281 CJ. 1 FONE (011) 5334971 - CEP 04570 - BROOKLlN SO PAULO - SP

A seguir digite: INIT INiCIO Ao ser pressionada a tecla RETURN, esse programa se~ armazenado no disco com o nome INICIO. Ao mesmo tempo seu disco ser "inicializado", ou seja, ser dividido em trilhas e colocado nas trilhas O, 1, 2, Sistema Operacional. Digite o coma,ndo CAT ALOG e voc ver o nome INICIO aparecer na tela. Na trilha 17 do disco, reside o diretrio. Neste lugar est armazenado o nome e o endereo de seu arquivo. Arquivo o nome do programa que voc gravou. Por que o diretrio reside na trilha 117 Porque ao pesquisar se um determinado arquivo existe ou no, a unidade de disco posiciona o cabeote no meio do disco, minimizando a distncia a percorrer no caso de localizar o arquivo. Nos prximos artigos ns trataremos especificamente de Arquivos (Seqencial e Randnicos), mtodos de acesso, Arquivos Binrios (para gravar parte da memria), Classificao (sort), Hashing (Pesquisa), etc

Devemos repetir o passo a novamente

Isto , a cada passagem, reduzimos um passo. No inicio temos N - 1 passagens e depois 1 s passagem. No prximo nmero daremos a soluo deste programa. O

Quebra-Cabeca: , a Torre de Voguei

Aps deixar a Inglaterra, Nabor Rosenthal foi visitar um amigo na Alemanha. Na ltima carta que ele me enviou, falou-me de uma certa torre que encontrou no castelo de nosso amigo Friederich VogueI. O quebra-cabea deste ms consiste em descobrir, com o auxlio de seu micro, qual a altura da torre. Como Nabor escreve em sua carta, existe uma frmula que permite o clculo direto dessa altura; entretanto, queremos uma soluo semelhante a que o Nabor utilizou, baseada em simulao numrica. Adiante encontra-se parte da carta que recebi, juntamente com os desenhos feitos por Nabor. "No primeiro dia em que estive no castelo de Friederich, ocupei todo o meu tempo em conhecer a milenar constru-

o. O que mais me interessou, nesse dia, foi uma estranha torre que, aparentemente, era intil. No havia como subir ao seu tOpo. No dia seguinte Friederich explicou-me que a torre era utilizada com uma escada mvel que era introduzida em seu interior sempre que necessrio. A escada deveria ser usada mais ou menos como mostram os desenhos que estou lhe enviando. Friederich me disse ainda, que a escada j no existe mais h sculos e durante todo esse tempo, ningum tem subido torre. Pensamos, ento, em fazer uma nova escada,

mas para isso precisvamos saber a altura da torre. Devido a posio em que ela estava, no podiamos usar a sombra do Sol para med-Ia; ento lembrei-me de um antigo problema de clculo elementar. Medi a largura da torre e a altura de sua entrada. Depois, como no me lembrei da frmula para calcular a altura da torre e no quis perder tempo deduzindo-a, fiz um rpido programa para meu micro. Aps alguns instantes necessrios para a simulao de vrias alturas, ele me deu como resposta o valor 13,6 metros.

A TORRE DE VOGUEl: FIGURAS ENVIADAS PELO SR. NABOR


DIMENSES QUE

EU MEDI

ESCADA NA POSiO INICIAL

ALTURA DA

entrada

ESCADA 1\1A POSiO FINAL

Acabando com o problema de filas para Apple e TK 2000


A finalidade desse programa a anlise econmica de um problema de filas, no qual supe-se que a previso de chegada de clientes atravs do modelo de Poisson. O tempo de atendimento dos clientes segue a lei exponencial, tem-se vrios setores de atendimento, a disciplina para desfazer a fila PCPS (ou seja: o primeiro a chegar, ser primeiro a ser servido), o espao para espera bem grande e a populao que pode querer este servio muito grande. No nosso livro Pesquisa Operacional Vol. 2, editado pela Livraria Nobel, deduzimos as frmulas para o processo de "nascimento e morte" e, como caso particular, obtemos o caso acima que representa-se de forma sinttica por (M/M/s): (PCPS/oo/-o), ou seja, o modelo no qual tem-se s atendentes em paralelo, ou ainda, o caso em que s clientes podem ser atendidos simultaneamente (Fig. 1l.

ps ,u Po
(5 -1)1 ls,u- '11)2

5) Tempo mdio no sistema, ou seja, o tempo mdio da fila mais o tempo mdio para um cliente ser atendido.
EIW s) = E(W II

+...L ,u

(5)

6) Nmero mdio de clientes no sistema .


E(Ls) = 'A E(Ws) = 'A E(W,)

+!T=

'A

E(Lf)

+.p -

(61

Fonte
I

,/
,

, , ,

, ,

, ,,
,

a - muito importante que nesse modelo se tenha f< 1 ou seja 11.< s,u, pois, caso contrrio, ou seja, se taxa de chegada ('A ) for maior que a taxa global de atendimento (s ,u), a fila ir aumentar cada vez mais e diz-se que o sistema vai "explodir". Na anlise econmica vamos procurar o custo mnimo do sistema, levando em conta o custo do atendente (c2) e o custo do cliente esperando no sistema (c,), ou seja, queremos um mnimo de E (C,) dado pela expresso:
] E(e,) = c, E(Ls)

COCO

---\~\-\-l-I

\:

+ c2

I-

(7)

\ \
\

\ \ \ \ \ \

---------

O programa permite exprimir cada parcela da frmula 7 em separado, alm de fornecer as probabilidades simples e acumuladas at um limite especificado por voc, carola) leitor (leitora l.

o Programa
Na organizao do programa em BASIC para o seu TK-2OOQ Color observamos as seguintes etapas: a) Mensagens iniciais b) Introduo e verificao de parmetros c) Processo de clculo d) Sada de resultados e) Apresentao da distribuio de probabilidades f) Mensagem final Tabela I - Variveis utilizadas no programa TABELA I varivel STRING na qual entra a sua resposta, caro (a) usurio (a) taxa mdia de chegada ( ) taxa mdia de servio ( ,u ) nmero de setores de atendimento (s) fator de utilizao do sistema ( t/; ) probabilidade de se ter um certo nmero de clientes no sistema (P n) k probabilidade acumulada [n~ oPn] nmero esperado ou mdio no sistema [E(Ls)] nmero esperado ou mdio na fita{EiL )] tempo esperado ou mdio no sistema lE(W.)] tempo esperado ou mdio na fila [E(Wf)] nmero de clientes no sistema (n) limite superior para a distribuio de probabilidade custo de espera por cliente por unidade de tempo
(C,)

Como se pode notar, o que pode ocorrer em um posto de pedgio, nas bilheterias de um estdio de futebol, nas caixas de um super-mercado, etc. As frmulas que demonstramos no nosso livro so: 1) Probabilidade do sistema estar ocioso l\ 1 P = 'J.4
po

= -------

s! _1_ 1- f

(1)

5- 1

'A taxa mdia de chegada jJ. = taxa mdia de servio

R$

L-J
n = O

~+~.
n!

f=-f-

TC
TS

= nmero de setores de atendimento

S
PSI P

2) Probabilidade de se ter n clientes no sistema -_Po


n! p se

PA
O

-..

(2)

--P_Po
s!\sn-s

se

LS LF WS WF N K

C1

C2
s

p ,u

IP o

CE

(5 _ 1)! (s,u _ '11)2

CS CT

custo do setor de atendimento ou da atendente por unidade de tempo (C2) custo total de espera por unidade de tempo custo total de servio por unidade de tempo custo total do sistema_Qor unidade de temoo

/r-------------------------------------1 REM MODELO M/M/S/PCPS 5 REM MENSAGENS INICIAIS 18 GOSUB 1008 15 REM INTRODUCAO' E' UER IF ICACAO DE PARAMETROS GOSUB l18 REM PROCESSO DE CALCULO GOSUB 1388 REM SAlDA DE RESULTADOS GOSUB 1458 REM APRESENTACAO DA DISTRIBU ICAO DE PROBABILIDADES 55 GOSUB 1550 68 'REM MENSAGEM FINAL 65 GOSUB 1669 78 IF R$ = "5" THEH 18 88 PRINT 9 PRIHT"E O FIM DO PROGRAMA" 180 END 1008 PRINT" ANALISE DO MODELO D E FILA COM CHEGADA POISSOH. IADA EXPOHEHCIAL, UARIOS SET ORES DE ATENDIMENTO PCPS. GR ANDE ESPACO PARA ESPERA E PO PULACAO QUE SOLICITA DE SERU ICO MUITO GRAHDE" RETURN Hl10 PRINT : PRINT 1100 PRINT "TAXA MEDIA DE CHEGAD 1119 A ": . 1129 IHPUT TC 1138 PRIHT "TAXA MEDIA DE SERUIC O ": 1140 IHPUT TS 1150 PRINT "NUMERO DE SETORES DE ATEHDIMEHTO ": IHPUT 5 1160 11713 IF TC < S TS THEN 1220 1190 PRIHT "CAPACIDADE DE ATENDI MEHTO E INFERIOR A PROCURA" 1290 PRINT "COM ESSES DADOS O PR aCESSO VAI EXPLODIR. EHTRE C OM OUTROS DADOS" FOR Z = 1 TO 299: NEXT 2 1205 HOME 1219 GOTO 1100 1215 fRINT 1228 PRINT 'CUSTO POR UNIDADE DE 1230 TEMPO PARA" 1235 PRINT 'UM CLIEHTE ESPERANDO ., 12413 INPUT Cl 1250 PRINT"E PARA UM SETOR DE A TENDIMENTO OU ATENDENTE ": 12611 rNPUT C2 1270 ~:ETUF:H. 1300 P~I = Te / (S * TS) 1310 REM UAMOS USAR UMA UARIAVE L AUXILIAR T PARA OBTER A PR 08ABILIDADE (P0) DE TODOS OS ATENDENTE5 ESTAREM SEM SER VIC 1320 T = I:P = 1 1339 FOR N = 1 TO S - 1 1340 T = T * S * PSI / N 135e P = P t T 1360 NE>;T ti 1365 P P t T * S * PSI / (S
1379 - PSI P = 1 / P

1455 1468

1470 1475 1488 1485 1490 149~ 1588 1518 1515 1520 1525 1530 1535 1540 1550 1560 1565 1578 1575 15:30 1585 1590 1595 1600 1610 1615 1620 1625 1630 1635 1640 1645 1650
166lJ

PRINf PRINT "NUMERO ESPERADO NO S ISTEMA ":L5 PR INT NUMERO ESPERADO NA F ILA ":LF PRIHT PRINT PRINT "TEMPO MEDIO NO SISTE MA ":US PRINT "TEMPO MEDIO NA FILA ":UF PRINT PRINT PRINT "CUSTOS DO SISTEMA PO R UNIDADE DE TEMPO" PRINT PRIHT "CLIEHTE ESPERANDO "ICE PRINT "SETORES DE ATENDIMEN TO ":CS PRINT 'TOTAL ":CT FOR Z = 1 TO 299: NEXT Z RETURN PRINT PRINT "DISTRIBUICAD DE PRoB ABILIDADES ATE UM CERTO NunE RO DE CLIEHTES NO SISTEMA" PRINT PRIHT "LIMITE SUPERIOR PARA A DISTRIBUICAO DE PROBABILI DADES" I~PUT K PRIHT: PRINT PRINT "NUMERO": TAB( 18):"P ROBABILIDADE": TAB( 25):"PRO BABILIDADE" PRINT TA8( 14):"NO POHTO"' TAS( 27):"ACUnULADA" PA = P PRINT TAS( 5): "0": TAB( 11 ):P:TAB25:PA FOR H = 1 TO K IF H > S THEH 1630 P = P S PSI / H GOTO 1635 P = P * PSI PA = PA t P PRINT TAS( 5):N: TAS( 11): P: TA8, 25):PA NEXT N RETURN
PR I N1

1680
5 169tt

PRINT OuTRO
1 NPUl

"UOCE QUER ENTRAR COM CONJUNTO NOVO DE DADO


R$
11

(S/H)?l;

1700
1710 i72~

[F Ri Ir: K$ PRIHT

S;I

"NU

THEN THEN

1 (se 1 i'~;'3 A LE1RA

PRINl rlVOCE TECLOU CO[) I GQ ERRAC'H 11 1 ;'4l3 GlJT lt;t:


1750 RE TU R,;

1739

1375 1380 1385 1390 140e 141e 1420 1438 1449 1459

T = T S * PSI * PSI / (S (1 - PSI)' 2) LF T. P UF LF / TC US UF + 1 / TS LS TC * US CE Cl * LS CS C2. S CT CE t CS RETURN REM AI VAI UM SUMARIO

Suponhamos que um modelo (M/M/51: (PCPS/oo /-0) possa ser aplicado a um certo problema. Vamos achar o nmero adequado de atendentes para que o custo total esperado seja mnimo. Dados: C1 25 u.m/h -C1 o custo de espera do cliente e u.m unidade monetria 5 u. m/ h - custo do setor de atendimento 10 clientes/ h - taxa mdia de chegada = 3 c1ientes/h - taxa mdia de servio Note que deve-se comear as tentativas a partir de S 4 pois este o menor inteiro tal que: S * TS = 4 * 3 > TC = 10. Termina-se o programa quando se obtm o menor CT e para isto ele deve estar confinado entre dois valores adjacentes maiores.

Adivinhe se cara ou coroa?

~.
.;;

--

-~

10 .':'
\

'".'
,r.

Wl'~'

Um programa de Inteligncia Artificial para o TK 83/85


Alvaro A. L. Domingues Ser que um programa com menos de 2 kBytes pode ser considerado inteligente? Tudo depende do que consideramos inteligente ... Entretanto, temos um critrio que pode ser usado. Se voc leu nosso artigo sobre inteligncia artificial, "Podem as Mquinas pensar?" (Microhobby n~ 81, deve estar lembrado do teste de Turing. Basicamente, este teste diz que, se num jogo de imitao, uma pessoa no distinguir, num conjunto de perguntas e respostas, se seu interlocutor um homem ou uma mquina, podemos dizer que a mquina, ou grograma em teste, inteligente.

-..' -.. ;-;

.= '
'-''''

+-:',
,

~=;,;

Ojogo
Ainda no se construiu uma mquina que passe neste teste em todas as situaOes possveis, mas pode-se construir mquinas ou programas que "se saem bem" em um ou mais campos; como, por exemplo, o programa Carla, que publicamos na revista 12, que simula um dilogo inteligente entre um psicanalista e seu paciente, ou o Sdrlu, que simula uma criana brincando com cubos, esferas, cilindros e pirmides. Nestes programas, o teste de Turing ser bem sucedido se o interlocutor humano, que o estiver aplicando, ater-se somente ao jogo. O jogo que simularemos no TK bastante popular nos Estados Unidos e muito simples, o que o torna atraente para uma simulao. Trata-se de adivinhar que face da moeda o adversrio escolheu: cara ou coroa. Parece apenas mais um jogo de advinhao, que tanto. tem aparecido em revistas de programao. Entretanto este jogo tem o seguinte aspecto: o jogador que esconde a moeda do adversrio vai adotar uma, estratgia baseada no que conhece do adversrio, ou numa ou outra caracterstica psicolgica sua. Cabe ao adversrio dScobrir esta estratgia para poder comear a ganhar. Quando o adversrio ganhar um nmero significativo de partidas, o primeiro jogador dever mudar de estratgia, uma vez que ele notou que o adversrio descobriu seus truques. Quando o adversrio perder um nmero significativo de partidas, notar que o primeiro jogador mudou sua estratgia e tentar descobrir qual a nova estratgia. E assim sucessivamente.

'-'

. .'

L ET

'-

li2!G LET ~=4~C+2+L+~+-:.. 110 IF O((;~ =~~ THEr~~GOTO 1221 LET E =t-i +~ " .~. ,"
1.:.30 ;,3;:;TC;
...i.."'~:

= J..

j . :

"

t-~ ~

t< + -:.. ,"

O programa
O TK 83 ser o primeiro jogador, ou seja, quem esconde a moeda. Ele escolher uma estratgia e voc dever descobr-Ia, analisando seu comportamento. Quando voc ganhar um certo nmero de vezes seguidas, ele mudar sua estratgia e, at que voc ganhe um nmero significativo de vezes, quando ento mudar a estratgia novamente. Isso continuar indefinidamente. Quando o computador mostrar em sua tela a pergunta: COMEO?, voc dever digitar um nmero entre 1 e 65.535, que indicar ao computador qual a primeira estratgia que dever usar. A seguir o computador perguntar: (FIACE OU (CIOROA? Voc, ento, dever digitar uma letra para a sua escolha: F para cara, C para coroa. Os pontos sero indicados, juntamente com a mensagem de que voc ganhou ou perdeu (figura 11.

::::50 :~~ :~.2

=::::;.~; c: E =
i;: ,_,

J='F Ir:'
i
c-"

7 2: .

44 MICROHOBBY

H O B BYS H O P
SO PAULO

VEJA SE SUA CIDADE TEM O QUE VOC PRECISA

SO PAULO
DATA RECORD INFORMTICA
Cursos, Consultoria, Ass. Tcnica e Suprimentos Comece 85 programando! Cursos Intensivos em Janeiro Reserva de vagas at 211 12/84 Cursos: Cobol Basic I e 11 Debase 11 Aplicativos Vantagens: 1 aluno pl Micro Professores da USP Estgio garantido Bolsas de Estudo Av. Sto. Amaro, 5450 - Brooklin - Tel.: 543-9937.

MEM~OATA
Processamentode Dados Ltda.

BASICemTK Consulte as outras escolas. Voc ser nosso aluno. Av. Bernadino de Campos, 294 - 5~ andar Cj. 52 - Fone: 284-8352 - Metro Paraso SP.

,,,,,all,uiil

",""imlfti' , lillm4lfliilUlIil
Software-House especializada no desenvolvimento de sistemas e cursos de treinamento para microcomputadores.

Loja de Microcomputadores TK-83-85-2000 - CP200-300-500; jogos - suprimentos - programas. Cursos Basic I e 11 Av. Brig. Faria Lima, 2178 - Fone: 813-3338 Pinheiros SP.
"' v

c,:\.. f~':J" (jOf

d~

c,~'vc, 1Jb~ \\ -4\':J" Qf~ ~

~O':J O-V-{.

COMPUTADORES

oCIDo
Cursos Basic, Cobol, Assembler A nova maneira de aprender a programar. Ncleo I: Av Pacaemb, 1280 - Fone: 66-7656 -SP.

A~C

COMPUTAO

A POLlVALENTE DA INFORMTICA:

Cursos Basic, Assembler e Cobol. Microc9mputadores - Suprimentos, Calculadoras, Orgos Eletrnicos, Software, Microclub. Av. Senador Vergueiro, 4962 - 1~andar - Sala 6 - Rudge Ramos - S. B. Campo - CEP 09720 - Tel. 455-1940.

MINAS GERAIS

ENG

Comrcio de Computadores Ltda. TK85 x TK2ooo? S na ENG voc adquiri o seu TK2000 nas melhores condies e ainda d o seu velho TK83, TK85 ou CP200 como parte de pagamento. TK2000 na ENG. Showroom - Tel. 284-1218. Av. Paulista, 1159 - Cj. 611.

(rryyQuhl
Seja mais um amigo do Compu Club. Voc recebe: duas fitas com 6 excelentes programas grtis de procedncia estrangeira e boletins do Compu Club regular e gratuitamente. Como fazer: indique o tipo de equipamento que possui, anexe cheque de S6.500,OO/despesas de postagem. Compu Club CEPo 1795 CEP; 3oo - Belo Horizonte - MG.

RIO DE JANEIRO
CiENTRO rJ\UL ISTIt :JiE IN;=ORM.TICI't
PROSERV-Processa.ento CURSOS (Cobol. Basic. Dados. Cursos

Rep.ltda.

,MICROCOMPUTADORESINovos .SUPRIMENTOS (For.ularios. LIVROS E REVISTAS .SOFT~ARE ITRS80. Apple. 19.Nove Tel: de Abri I 27 salas (0243)

Usados) DBase III Disquetes. Fitas. etc.J

CP/M.

Curso de Basic "Promoo Especial" O mais moderno curso de Basic de S. Paulo. Rua Itumait, 349 - SI - Cj. A - Esq. Brig. Luiz Antonio - altura n~ 1000 - Fone: 35-4511 Liberdade SP.

TK85)

626/628
- RI

429800 - V.Redonda

RIO GRANDE DO SUL

Eletrnica e Jogos Com. e Exp. Ltda. Equipamentos TK85, Elppa 11, Elppa Jr. e Color 64. Jogos em Geral. Rua Augusta, 1371 S/L7 - Fone: 268-4370 SP.

INFORMTICA DINMICA "AGRIMENSOR"


LJ LJ LJ MONOUTIi 2001

LTDA.

Planilha de Clculo Analtico para agrnomos, topgrafos e tcnicos agrcolas. O programa para a famlia Sinclair (TK83, 85, CP2(0) e muitos outros, que economiza horas de servios. Remeter cheque de 6 ORTN para: Rua Minas Gerais, 56 - Sta. Rosa - CEP 98900 - Rio

Grande do Sul.

Inteligncia Artificial:
Tornando o computador mais esperto
Quatro anos aps o lanamento do ENIAC, o primeiro computador eletrnico do mundo, Alan Mathieson Turing publica seu artigo, "Computer Machinery and Intelligence" (1950), no qual formula uma srie de perguntas englobadas em uma nica: "as mquinas podem pensar?". Turing acreditava, que se fossem propostas uma mquina e a um homem .uma mesma srie de perguntas, e para um observador fosse impossvel distinguir de onde vieram as respostas, ento a mquina estaria apta a pensar. Posteriormente, vrios programas escritos em linguagens especficas de IA passaram brilhantemente no teste; como Parry, um programa que simula um esquisofrnico dialogando com o usurio-psicanalista. Se o teste de Turing realmente serve para medir a capacidade de inteligncia de uma mquina, ou no, questionvel. Em todo caso, o exemplo de Parry, e tantos outros, nos consubstancia o quanto as mquinas puderam crescer no sentido de imitar algumas capacidades humanas em to pouco tempo. Nos anos 50, o trabalho em Inteligncia Artificial cresceu consideravelmente na Amrica, com trabalhos semanais como o da The Advanced Research Projects Agency, que desenvolvia um sistema de traduo literal ingls-russo via computador. O sistema funcionava razoavelmente bem, mas considerando que todas as Iinguas possuem um ndice de redundncia e que tradues literais de expresses idiomticas ou de grias no podem ser levadas em conta, a traduo do ingls "hydraulic ram" (arete hidrulico) para o russo e a volta ao ingls "water goat" (cabra d'gua), fez com que o projeto fosse desativado. Um pouco mais tarde, Allen Newell e Herbert Simon criaram o programa Logic Theorist, que demonstra teoremas lgicos; os dois autores predisseram que o computador viria um dia a ser Campeo Mundial de Xadrez e escrever composies musicais de gnios dentro . de 10 anos. No entanto, somente no fim dos anos 50, comearam a aparecer efetivamente a pesquisa que levaria s verdadeiras linguagens de Inteligncia Artificial, uma vez que as outras linguagens de alto nvel, usadas at ento, haviam se mostrado falhas em muitos pontos, quer pela pouca flexibilidade de recursos de programao, quer por restringirem bastante o uso da linguagem natural no dilogo usurio-mquina. A pesquisa forneceu um substrato muito grande para que a Inteligncia Artificial evolusse at o ponto de hoje.

As Linguagens
John McCarthy, membro do MIT Massachussets Institute of Technology, desenvolveu o "time-sharing", processo pelo qual uma unidade central de processamento pode ser partilhada por vrios usurios ao mesmo tempo e criou a linguagem L1SP (aberviatura de L1ST Processing), considerada a me das linguagens de Inteligncia Artificial. At hoje, ela a mais usada por oferecer uma grande eficincia na construo de modelos lgicos e processos cognitivos - processos de aprendizado - num computador. Sintaticamente poderamos dividir a L1SP em dois grupos: os tomos, que so seqncias de caracteres alfanumricos similares s strings do BASIC e as listas, que so seqncias de tomos encadeadas logicamente. Uma das caractersticas mais marcantes do L1SP o uso espantoso de parnteses delimitando, logicamente, as separaes entre um ou mais tomos e/ou listas. Embora muitos possam achar excessivas as quantidades de parnteses utilizadas, elas so necessrias para que a construo do programa se faa de maneira lgica, coerente e flexvel. Em 1966 Joseph Weinzenbaun escreveu "Eliza", um programa em L1SP que simula uma psicanalista em linha rogeriana que conversa com o usurio paciente, (ver programa "Carla", Microhobby n~ 12). Eliza foi testada, pela primeira vez, com a secretria do prprio Weinzenbaun. O resultado foi to surpreendente que, num dado instante, ela lhe pediu que sasse da sala, enquanto interagia com o programa em linguagem Natural. Apesar de tudo, o programa tem bastantes limitaes quanto ao vocabulrio utilizado por Eliza e se, por exemplo, perguntarmos a ela o significado de alguma palavra em ingls que desconhecemos, ela nos responder que desconhece tambm significados de palavras em geral, mas que apenas entende ... nmeros binrios! Aps um determinado tempo de dilogo, Eliza parece esgotar seu repertrio e tende a repetir as mesmas perguntas inicialmente propostas. Mesmo assim, o programa fascina pelas possibilidades que abre. Outros programas clebres, .como Eliza, tambm foram escritos em Lisp. Entre muitos, poderemos citar Parry, o esquizofrnico que dialoga com o psicanalista usurio, Mycin, que auxilia (banco de dados) no diagnstico de doenas infecciosas; ou 'Q Prospector, um programa que descobriu uma mina de molibdnio no valor de milhes de dlares. A facilidade de programao em L1SP e a sua grande extenso em recursos fizeram com que L1SP sasse dos computadores de grande porte para os micros. Assim, existem, compiladores disponveis para o TRS-OO e verses do Elisa para o Apple 11.Com estes compiladores possvel se montar uma base de dados de geografia informando, por exemplo, ao micro que a Bahia fica ao norte de So Paulo; em seguida, se per-

"Na verdade o computador um ser incapaz de raciocinar por si s. Ele no pensa, apenas faz aquilo que o mandamos fazer. O computador no morde ningum." Johannes Zantwyk Quando tentamos explicar o que um computador a uma pessoa que nunca o viu de perto, que no sabe como funciona e nem o que faz, deparamonos com esta realidade. At agora, foi essa a imagem do computador, vendido pelos meios de comunicao, um monstro capaz de pensar por seus prprios meios e de dominar o homem e a sociedade. Ironicamente, no entanto, o panorama comea a mudar para um estado geral de coisas inverso ao atual. O que pode nos chocar, discutindo o tema Inteligncia Artificial a idia de que algum construa uma coisa que "pense" por si mesma, no possuindo a mesma natureza humana de quem a criou. A idia desta "coisa pensante" que abrange todo o repertrio cultural humano, mas que no humana, pertamente uma idia que rIOScausa estranheza, talvez pelo curto instante de tempo que levamos para assimil.ar e deglutir as inovaes tecnolgicas que surgem a cada momento. Em 1982, os japoneses lanaram o Institute for New Generation Computer Technology (ICOT), que se constitue na base de lanamento do chamado Computador de &. Gerao. Eles prometem uma mquina capaz de dialogar com o usurio em Linguagem Natural, ou seja, sem que seja necessrio aprender qualquer linguagem de programao; algo prximo de um supercrebro eletrnico porttil, capaz de tomar decises com o mnimo de interferncia humana, e, de uma certa forma, simular algumas reaes emocionais humanas. Tudo isso entre 1988 e 1990, o que nos leva a crer que se o projeto vier a ser bem sucedido em todas as suas fases, causar uma revoluo sem limites, quer seja no campo da Informtica, quer seja nas outras cincias.

guntarmos ao micro qual a localizao de Salvador em relao a S Paulo, ele nos responder que Salvador fica ao norte de So Paulo. L1SP e PROLOG so as linguagens que se espera serem usadas pelo projeto japons do Computador de Quinta Gerao.

Usada primeiramente com objetivos educacionais, LOGO uma linguagem que saiu .do L1SP. Tem muito mais facilidade de aprendizado do que o BASIC e permite uma visualizao mais rpida do algo ritmo lgico utilizado na construo de um programa. Por outro lado, a reduo do conjunto de instrues LOGO fez com que o caminho levado do aprendizado prtica encurtasse bastante, o que quer dizer que aps pouco tempo de contato com a linguagem, a criana j se habilita a programar em LOGO. Sintaticamente, as estruturas do LOGO podem ser confundidas com L1SP, tamanha a semelhana entre as duas linguagens. A base da linguagem LOGO uma tartaruga capaz de fazer desenhos, obedecendo ordens quase conversacionais da criana. Existem verses de compiladores LOGO disponveis para micros compatveis com o Apple, com o TRSSO, ou para os que suportem o sistema operacional CP/M. No Brasil, os primeiros micros da ltautec tinham essa linguagem disponvel em seu sistema operacional. Vrios "compu ter camps" para crianas esto se utilizando dessa linguagem para promover um primeiro contato agradvel entre a criana e o computador. Das vrias outras linguagens de inteligncia artificial, que se seguiram <IPS o L1SP, somente PROLOG conseguiu unir as vantagens da linguagem me de uma maneira mais racional e flexvel. Estas duas continuam a ser as linguagens mais utilizadas, deixando-se entrever que, em pouco tempo, o aprendizado de BASIC ser quase que totalmente desnecessrio.

Conhecida desde 1970, PROLOG (PROgramming in LOGic) uma linguagem que tenta a sintese entre um aprofundamento em Linguagem Natural e a programao em lgica. Dado a essa grande flexibilidade, ela tem servido a objetivos diversos, como a pesquisa e criao de bancos de dados inteligentes assistida pelo programador, ou a concepo e realizao de sistemas tambm inteligentes. PROLOG uma linguagem que se distingue facilmente das outras por no ter padres pr-definidos, nem tampouco estruturas de controle como o BASIC (IF ... THEN ... ELSE, GOTO, GOSUBl. Um programa PROLOG se constitue somente de asser{Jes (fatos conhecidos) e de razes (fatos condicionais), como na Lgica formal. Isso d uma

grande flexibilidade e fora linguagem, alm de facilitar o programador na hora de construir o algoritmo lgico e de otimizar o tempo que se espera para que a mquina nos fornea a r~posta. Mais ainda, ao construirmos sistemas complexos onde o uso das linguagens de alto nvel se constitue numa dificuldade a mais na hora da concepo e posterior implantao: PROLOG se constitue numa grande ferramenta de apoio ao programador, pelo fato de aproximar-se em muito da linguagem natural. As caractersticas do PROLOG nos mostram que a linguagem se aplica mais naturalmente a um tipo de problema do que a outros. Desta maneira, os problemas que envolvem uma grande quantidade de dados sero favorecidos, pois a linguagem se adapta melhor a este tipo de problema do que aqueles cuja manipulao de dados pequena. O PROLOG tambm uma linguagem poderosa na manipulao de dados simblicos, restrio feita por muitos usurios s outras linguagems de IA, como o Lisp, Logo ou o Smalltalk. No que se refere aos campos de aplicao do PROLOG, esta linguagem est sendo utilizada tanto na compreenso da linguagem natural como na gesto dos chamados bancos de dados relacionais, ajudando a criar uma base de dados dedutiva, ou seja, um programa que pesquisa inteligentemente bancos de memria atravs de encadeamentos. O PROLOG tem recursos muito fortes, como a clusula de Horn, pela qual uma concluso C1 contm vrias premissas p1, p2, p3 ... pn encadeadas. Isso quer' dizer que C1 somente ser verdadeira se p1 e p2 e ... pn tambm forem verdadeiras. A clusula de Horn tem uma sintaxe mais restritiva do que as regras utilizadas pelas linguagens de sistemas inteligentes. Ela possibilita aplicaes do PROLOG como sendo uma linguagem com orientao voltada para demonstrao de teoremas. Assim como o Lisp, o PROLOG tambm disponvel para micros compatveis com o Apple e IBM-PC, ou micros que suportem os sistemas operacionais CP/M-SO, CP/M-86 ou ainda o Unix. De uma maneira geral, o interesse por PROLOG tem crescido consideravelmente e no h dvidas que a linguagem se torne, dentro de pouco tempo, to popular quanto o USP e LOGO.

mos, no entanto, qual a linguagem "Assembly" do crebro humano, nem tampouco se existe a possibilidade de termos esse estmulo eltrico trafegando em sentido contrrio, ou mesmo em dupla-mo. A despeito da diviso dos dois hemisfrios cerebrais e de sua conseqente associao com habilidades de natureza diametralmente opostas (lado esquerdo-racional, lado direito-emocional), sabemos que pode haver redundncia, ou seja, eventualmente este modelo pode j estar inclusive superado. No entanto, o trabalho em Inteligncia Artificial prossegue, sendo seus campos de meta-conhecimento ("conhecimento do conhecimento") cada vez mais delimitados e claros. Em 1964 a Rand Corporation contratou um filsofo, Herbert Dreyfus, com o objetivo-de revisar o trabalho em Inteligncia Artificial, desenvolvido pela Companhia, e de propo'r crticas. O trabalho desenvolvido por Dreyfus originou um livro, "What Computers can't do" (O que os computadores no podem fazer), no qual o autor expOe com firmeza suas observaes a respeito das limitaes humanas e das mquinas. A popularizao das linguagens vai fazendo com que o choque previsto para quando a mquina inteligente for lanada se atenue bastante, mas resta saber agora o quanto o impacto deste lanamento interferir nas outras reas de conhecimento humano. Mais ainda, o quanto estamos impotentes para conviver com um tipo de mquina que, quantitativamente, falha menos que ns, embora qualitativamente possa deixar muita coisa a desejar. Enquanto a discusso sobre Inteligncia Artificial prossegue, oscilando entre o pueril e o filosoficamente mais profundo, sempre tempo de parar um instante e rever o que fizemos, no s no territrio da Ciberntica e de outras cincias correlatas, mas tambm em outros campos. Para alcanar um estgio que nos permita efetivamente construir uma mquina inteligente, teremos que prosseguir ainda um longo caminho. Em todo o caso, a Inteligncia Artificial no ajudar apenas a tornar os computadores mais espertos, mas ajudar a nos tornar ainda mais inteligentes. O

Embora a Inteligncia Artificial esteja na ordem do dia e suas linguagens estejam vindo a tona e se tornando cada vez mais populares, podemos observar que no conhecemos profundamente o crebro humano o quanto poderamos conhecer. Por exemplo, aquilo que se chama por pensamento, sabemos que corresponde passagem de um estmulo eltrico provocado por uma reao eletroqumica, e que este estmulo tem um sentido que vai da ponta maior do neurnio sua ponta menor. No sabe-

Making Computers Smarter: A Look at the controversial field of artificial intelligence - John O. Green, Popular Computing, jan. 1984. Computadores e InteliglJncia - A.M. Turing in Ciberntica e Comunicao, org. lsaac Epstein. - Ed. Cultrix, 1973. Le Language PROLOG - Micro Systemas n~44 - agosto 1984. Podem as mquinas pensar? - Alvaro A.L. Domingues - Microhobby n~ 00. Carla (Freud Explica) - Roberto B. Renzetti - Microhobby n~ 12. What Computers can't do - Herbert Dreyfus - Harper & Rom, 1979.

MICROHOBBY

47

Recebemos uma fita, enviada pelo correio, contendo o programa Planilha Analtica, fabricado pela Informtica Dinmica Ltda., uma empresa localizada em Santa Rosa, Rio Grande do Sul. A embalagem simples, sem uma indicao muito visvel de seu contedo. A ttulo de "manual", acompanha duas pginas datilografadas, dando uma explanao ligeira sobre o funcionamento do programa. Acreditamos que isto pode ser melhorado, fazendo-se um manual mais completo e melhor apresentado. Ao carregarmos o programa, notamos que a gravao foi bem feita e no tivemos problema algum nesta operao.

O programa entrou rodando, mostrando logo no incio uma pgina de apresentao (figura 1). Aps uma pequena pausa pedido o nmero de estaes e o primeiro azimute (figura 2l. Estes dados so necessrios para os clculos com a Planilha Analtica. A seguir so pedidos os valores dos ngulos e distncia de cada estao. Em todas as fases oferecida a oportuni-

i:.:tU :t:l
~

Este ms, escolhemos para anlise uma fita bastante interessante para quem trabalha com agronomia. Trata-se da Planilha Analtica, um programa desenvolvido pela Informtica Dinmica para o TK 85 que facilita o trabalho do Agrimensor. Uma das maneiras usadas em agrimensura para medirse uma rea de terra qualquer o Levantamento Planimtrico. Neste mtodo, representamos a r~ a ser medida por meio de um polgono. O trabalho do agrimensor consiste em medir os ngulos entre cada lado e a distncia entre os lados. O primeiro dado a ser levantado o ngulo entre o primeim lado e a direo norte. A este ngulo d-se o nome de "primeiro azimute". Cada vrtice do polgono chamado de "estao" e so numerados de 1 em 1. E normal ter-se 30 ou mais estaes. Estes dados, levantados em campo, sero utilizados pelo tcnico para a elaborao da planilha de clculo analtico, que mostra, em colunas, os dados lidos e os dados obtidos por meio de clculos, tendo por base estes dados medidos. Sem computador, a elaborao da planilha um servio muito demorado, devdo quantidade de dados e clculos envolvidos. Geralmente uma planilha tem cerca de vinte colunas, que, no caso de termos 30 estaes, como costuma acontecer, teremos que preencher cerca de 600 campos. Isto justifica a elaborao de um programa especfico. A Informtica Dinmica, levando isso em considerao, elaborou o programa "Planilha Analtica", que estamos analisando este ms.

*********+*****+++++*+*+++**~**+ tiU1iii1lii:Wt:W'.ruX-l--t:itij ********************************

GF:AU5 t~1It"4UTCj5 5EGUN[:'DE

:32 0 G

48 MICROHOBBY

~::D

~++++++**+++++++++++++++++++++++

l:J',!I.Ul!iL~':II
._ ~'-" :J"7.,~

0_ 0_' :. 2 C :.~;:.::.'
. .,..

, ..__
.'._.'

:illJi~
1.0

o--:;.=: ::- ;J C

'22

='':='':' '-,:-

dade de correo. Aps a entrada de todos os dados, a tela mostra a soma dos ngulos, o erro angular total e a soma das distncias. Nesta fase temos, mais uma vez, a oportunidade de corrigir os dados. Se os resultados a mostrados apresentam discrepncias com os dados de campo, podemos digitar a tecla V, que volta ao incio, desta forma permitindo a digitao dos dados corretos. Qualquer outra tecla permitir ao programa realizar os clculos. Os clculos so relativamente rpidos. Ao termin-los, o programa oferece ao usurio trs opes: a) listar a planilha na tela, b) listar a planilha na impressora e c) calcular nova planilha. Quando optamos por listar a pianilha na impressora ou na tela, ela mostrada em vrias pginas, devido s limitaes de largura da tela ou do papel da impressora (figura 3).

Comentrios
Este programa bastante especfico, destinado apenas aos profissionais que lidam com agrimensura. De uma forma geral, o programa bom, apesar de lento. As telas de apresentao poderiam ser mais rpidas, talvez usando-se rotinas em linguagem de mquina. O programa feito todo em BASIC, com apenas uma pequena proteo contra "piratas". Esta proteo no muito eficiente, pois apenas faz com que o "pirata", momentaneamente, se confunda com a listagem ou perca algumas variveis. O manual poderia ser melhor apresentado, com mais detalhes sobre os mtodos de clculo empregados e com alguns exemplos prticos de forma a familiarizar o usurio com seu uso. Como sugesto aos fabricantes, sugiro uma simplificao das telas de apresentao e uma racionalizao da memria e, assim, poder ampliar a capacidade de clculo do programa, fornecendo outras funes e operaes aos agrimensores. O

++++++++++++++++7+++++++++++++++

~:D

-~-, .~.~~:~~~.~~_: C-.=

:~~:!-1; 5 f!3'.l
122

~!~1387'~ 2~98202 2.S~883 0:c~o~~

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~o~~~

r:J.-~
a
~ ,_, .~ c' .~

.. ~~~.iliJ~~.gm"""".~""'~"-'.-_
21
':'c. I: 4-8l .,;..,=,.,;.. ~ ~~;=;

o.

'= ,-.,- ,-,


I:

80

22,:

3'"I -riliI~-.~!l!~~":M~~;"~~J ~;~~;.M~


~ 57.~73
0''--'' .- ..- .-. ~ ,_: : .~ c

+++++*++++++++++++++++++++++++++
0.~C~
,_'o ,

l50: 4.:::,~.

'=

- - - --. c..'= 27';. 4-J.:~ .=, '~'-' ~~ ,. -...


c. ,_,
'-0

,-,

,-,

15 REM TENTE ESTA


20 HGR2

TK 2000

72:~;. 8

25 27 30 35

FOR H = HCOLOR FOR X = Y = INT

O TO 7 = H O TO 250 (160 * RND (1))


+

40 HPLOT X,Y TO X 50 NEXT X


.... : 5 E: 7

3,Y

:=..-,,-. -.

55 NEXT H

~l::::';l;,

52:::

60 GOrO 25

o INKEY$

NO TK 2000

Uma das perguntas que mais tem aparecido na Redao sobre como simular a funo INKEY$ no TK 2000. Embora tenhamos dada uma resposta conveniente na seo Desgrilando da revista 13, este pequeno artigo resolve, para alguns casos, o problema de uma maneira muito mais simples.

Este um programa "Pisca-Pisca Desenhista" de minha autoria para o TK-2000. O programa em si no tem nada de excepcional, e deve existir semelhantes s dezenas para os vrios tipos de computadores. O que tem de novo a.Iinha

100, onde o endereo 39 do TK-2000 faz a leitura de teclado. "Achei" este endereo quando comprei o TK-2000 e o mesmo veio sem o Manual Tcnico e o meu filho queria que os joguinhos ficassem mais animados (eu estava usando as funes GET e INPUT). Como no Apple existe o endereo (- 16384) que faz a leitura de teclado, bolei o programa da figura 1. E ficava movendo o JoystiCk para ver se o PRINT PEEK (N) se alterava. Como na verdade eu comecei experimentando do endereo 50000 para a frente, demorei um planto mdico inteiro para achar o PEEK (39). Valeu a pena. Podem explor-Io.

10 REM PISCA-PISCA DESENHISTA 12 REM PI ELSON EURIPES DELMUTTI 15 REM A GRANDE NOVIDADE E A LINHA 1 DO, ONDE TEMOS K = PEEK (39). O E NDERECO 39 DA A LEITURA DE TECLAD O, DE MODO SIMPLES E RAPIDO PARA JOGOS E PROGRAMAS EM BASIC. 20 REM PEEK(39) CORRESPONDE-AO PEEK( -16384) DOS APPLE E TEM A VANTAGE M DE NAO SE PRECISAR LIMPAR O STR OBE DE TECLADO.
-3D X = 19 40 Y = 19 50 N = 3 60 GR

70 75 80 90 100 105 110


A$)

COLOR = N G05UB 200 FOR I = O TO 100 PLOT X,Y K = PEEK (39) IF K = 48 GOTO 70 IF K = 46 THEN GET A~:N = VAL (

120 IF K = 40 THEN GOSU8 200

130 IF K = 18 THEN X = X - 1: IF O THEN X = 1: GOTO 70 ' 140 IF K = 24 THEN X = X + 1: IF 39 THEN X = 38: GOTO 70 150 IF K = 36 THEN Y = Y - 1: IF O THEN Y = 1: GOTO 70 160 IF K = 30 THEN Y = Y + 1: IF 39 THEN Y = 38: GOTO 70 170 PRINT N,X,Y 180 GOTO 70 200 REM MOVIMENTO DO PISCA-PISCA 205 IF N = O THEN GOTO 210 206 IF N ( ) O THEN RETURN 210 COLOR = 3 220 PLOT X,Y 230 COLOR = O 240 J = PEEK (39) 250 IF J = 18 THEN PLOT X + 1,Y 260 IF J = 24 THEN PLOT X - 1,Y 270 IF J = 36 THEN PLOT X,Y + 1 280 IF J = 30 THEN PLOT X,Y - 1 290 IF J = 46 THEN N = 3 300 IF N = 3 THEN RETURN 310 RETURN

X ~ X
=

Y = Y =
Aps digitar o programa da figura 2, digitar RUN. Aparecer um ponto branco central e os nmeros 3, 19, 19, no vdeo (parte de texto), que corresponde cor do ponto e as coordenadas que foram dadas na linha 170. Deve-se digitar os vrios comandos que posicionam o cursar (setas: para baixo, para cima, para a esquerda e para a direita). No vdeo ir-se- formando as linhas e desenhos que queremos. Pressionando o ponto (FIRE), uma ou duas vezes, o ponto do vdeo ficar piscando e nada desenhar, movendo-o apagar linhas. Basta praticar.

Nota: Embora o "macete" de usar-se PEEK(39)para ler o teclado gere um cdigo diferente para cada tecla pressionada, o valor deste cdigo diferente do valor ASCII desta tecla. Portanto, ateno quando for usar esta dica!

Curso Avancado de Assembly para o TK 83/85


I

Nesta aula, iremos brincar um pouco com a tela de TV.

Para comear, faamos um pequeno programa para encher a tela de asteriscos (normais e em vdeo reverso), usando "loop" dentro de "loop" (figura 1).
HL;(O-FILEI '2AOC40' ; carrega HL com endereo do inicio da tela que um NEW UNE ; incrementa HL para indicar 1. posio "real" da tela LO B,22 '0616' ; B =22 para contador de linhas 'OE1F' ; C = contador de colunas paralll LO C,~1 LOOP LO A,_ '3E17' ; coloca em A o cdigo de I!I '51' LO O,C ; coloca C em O para "preservar" o valor de C durante LOOP LO E,32 '1E29' ; E = contador de colunas para li! LOOP LOIHLJ,A ; coloca lina tela O vezes 'n' INCHL '23' '10' OECE '15' OECO 'C2' JP NZ,LOOP LOA,~ '3E97' ; coloca em A o cdigo de 11 LOOPC LOIHL),A 77' ; coloca * na tela (E-O)vezes INCHL '23' '10' OECE JP NZ, LOOPC 'C2' INCHL '23' '00' OEC L OJNZ POOPL '10E8' ; decrementa B e volta para "imprimir" a prxima linha LO

; usa A como contador pl as 22 linhas LOOP LO HL,(16396) '2A0C40 ; carrega HL com OFILE ; incrementa HL pl "apontar o LOOP INC HL '23' 51~caractere da tela LO O,H '54' ; transfere HL para DE '50' LO E,L '23' INC HL ; incrementa HL pl "apontar" o 2~caractere da tela LO BC,31 '011FOO ; carrega BC com 31 (n~de caracteres a serem deslocados pl esquerda) 'EOBO LOIR desloca os caracteres '2B' OEC HL lO (HLJ,O '3600' ; coloca "branco" na ltima coluna INC HL '23' OECA '3D' ; decrementa contador JP NZ,LOOP 'C23575' ; se no for zero repete pl a prxima linha RET

5 10 15 20 25 30

F:Et-l :::,CF:CrLL FA:=T FAHL' LET A$=;' FDF LET >:: = IjfT ("2-:i:';;:!

'* '*

'O.'

,"

Experimente execut-Io em FAST e em SLOW para ver a diferena. Procure fazer um programa equivalente em BASIC para comparar as velocidades. Voc deve ter notado que usamos o caractere * (sublinhado) para indicar que seu cdigo ser utilizado: LD A,*

35 LET R$=P$+CHP$ + ::-:: 12E;:: 4-'O tJ E:::: T .

'*

(I~lT

50

t=:.~: Ij"4T H $

significa: "carregue o acumulador com o cdigo do caractere B" e no" copie o registro B em A". O Scroll Horizontal Voc est lembrando do anti-SCROLL? Experimente agora, o programa da figura 2. Coloque-o a partir da memria 30000 usando HEXAExecute, ento, o seguinte programa em BASIC que demonstra o efeito de SCROLL para a esquerda. O inicio do programa, apesar de ser em FAST, um pouco demorado, pois ele deve gerar 704 caracteres aleatrios.

Que talo efeito? Antes de prosseguir, tente entender detalhada mente o SCROLL-HORIZONT AL. O programa transfere para a esquerda linha por linha da tela utilizando a instruo LDIR. Como transferir programas em linguagem de mquina do topo da RAM para dentro de um REM Caso voc deseje gravar, numa fita, este programa de SCROLL HORIZONTAL, basta transfer-Io para dentro de uma instruo REM. Voc pode inclusive retirar o HEXAMEM do computador usando NEW (desde que voc tenha se lembrado de reservar memria modificando RAMTOP). Assim, digite NEW e reserve espao num REM para que caiba o programa de SCROLL LATERAL.

1.5 !=~PIi)T 20 F:F It~T

t=:~:IHT
F:F:It~T

Execute o programa e coloque, ento, MEMRIAFONTE = 30000, MEMORIA-OESTINO = 16514 e TAMANHO DO PROGRAMA EM BYTES = 23. Agora voc pode retirar o programa "TRANSFEMEM" linha por linha (no use NEWl e, a seguir, pode salvar o REM que contm o programa SCROLL LATERAL:

Vamos agora implementar a sub-rotina para que ela imprima qualquer mensagem e no apenas um caractere; necesc sitaremos, para tanto, de um "cdigo" para indicar ao computador "fim de mensagem". Utilizaremos o nmero' 43", j que ele no cdigo de nenhum caractere. Vamos tambm adicionar ao nosso vocabulrio de mnemnicos mais duas "pseudo-instrues": OC = defina constante OM = defina mensagem Elas so chamadas de pseudo-nstrutJes, por no terem correspondente cdigo hexadecimal. Servem apenas para tornar mais clara a escrita de um programa. Observe ento o seguinte exemplo da figura 4.

Isto, logicamente, vlido para qualquer programa que estiver aps RAMTOP. (Obs.: Para executar o programa agora necessrio fazer RANO USR 16514 e no 30000), As sub-rotinas da ROM e a tela de TV; as pseudo instrues Como vimos na aula anterior, j existe na ROM uma sub-rotina que "imprime" um caractere na tela, cujo endereo '0808'; esta sub-rotina coloca na primeira posio livre que houver na tela o caractere cujo cdigo est no acumulador. Vamos chamar esta sub-rotina dePRINTC (PRINT CARACTERE), e faamos um pequeno programa para cham-Ia (figura 3). Usando HEXAMEM coloque-a a partir da memria 16514. Para isto, reserve espao no incio da memria do programa com uma instruo REM:

'408E' '4091'_ '409B' '409C'

CALL

OM OC
RET

PRINTM APOCALlPSE '43'

'C08240' 'APOCALI PSE' '43' 'C9'

1'3C' o cdigo do caractere W) poderia ser escrito como LD, A,Vi onde o trao indica "caractere

'408E' '408F' '4090' '4091' '4092' '4093' '4094' '4095' '4096' '4097' '4098' '4099' '409A' '409B' '409C' '4082' '4083' '4084' '4085' '4086' '4088' '4089' '408C'

'CO' '82' '40' A P O C A L I P S E 'AB' 'C9' POPHL 'E1' LO A,(HLl '7 E' INC HL '23' PUS H HL 'E5' CP '43' 'FE43' RET Z 'C8' CALL PRINT C 'C00308' JR PRINT M '18F4'

Execute-o em FAST e, a seguir, coloque o computador em SLOW e repita o programa fazendo RANO 16514. No se preocupe com a falta da instruo RET: nesse caso, o programa volta automaticamente ao BASIC ao terminar a tela. Repare na velocidade nos dois casos. A titulo de comparao, execute o seguinte programa BASIC em SLOW e FAST:

cando o endereo logo aps o nmero '43', no caso, um RET para o BASIC; em caso negativo, basta chamar a sub-rotina PRINTC para imprimir o caractere que est no acumulador. Vamos ento colocar este programa na memria atravs de uma instruo REM; faa:

I(

11

Primeiramente repare que as "pseudo-instrue5" DM e DC no tm correspondente cdigo hexadecirilal; na memria colocado apenas o cdigo dos caracteres da mensagem ou da constante. Voc est lembrado como funciona a instruo CALL? Ela faz um PUSH, ou seja, coloca no STACK no endereo de retorno da sub-rotina e, a seguir, ela carrega o PC com o endereo inicial da sub-rotina que est sendo chamada. Logo a seguir a letra A da mensagem APOCAUPSE, que est aps o CALL PRINT M, estar no endereo indicado pelo topo do STACK aps ser executado o CALL, pois ela corresponde ao endereo de retorno. Assim, se fizermos um POP HL, no pa'r HL teremos o endereo da letra A e basta, ento, fazer LD A (HU, para colocar o cdigo da mesma no acumulador. Ao incrementar HL e fazer um PUS H HL, o SP est agora apontando para a letra P. Basta ento repetir o processo at encontrar o nmero '43' que indica fim de mensagem, o que feito pela instruo CP '43' que testa a igualdade entre o ACUMULADOR e o nmero '43'. Em caso afirmativo, a subrotina PRINTM ir retornar, estando o "topo do STACK" indi-

para reservar os 27 bytes necessrios; a seguir, use HEXAMEM colocando 16514 ('4082') para endereo inicial; introduza os cdigos hexadecimais das instrues e, ao chegar em APOCAUPSE, basta introduzir os cdigos de cada letra e a palavra ser colocada na memria diretamente. Ao terminar de introduzir o programa ne memria NO digite XS ou XF, pois o incio do programa est, na realidade, na memria 16526. Assim, digite P e, a seguir, RAND USR 16526 (NEW UNE). Note que se colocarmos um cdigo de NEW UNE no meio da mensagem teremos um efeito de "pular linhas"; de fato digite: POKE 16533,118 (118 cdigo de NEW UNE) RAND USR 16526 Tente explicar o que aconteceu.

1. Modifique o programa de SCROLL HORIZONTAL para que ele faa um SCROLL para a direita. 2. Unindo os conceitos de SCROLL VERTICAL e SCROLL HORIZONTAL, faa um programa que realize o SCROLL em diagonal ... 3. Como voc faria um programa com o TRANSFMEM em linguagem de mquina?

cdigo de decifrao. Ele nos forneceu um cdigo de 3 algarismos, quando dissemos que o Sr. Nabor sempre utilizava cdigos de 4 algarismos. Embora o nmero que ele tenha fornecido tambm "abra" a mensagem, no a consideramos correta. A segunda soluo veio mais completa. O Sr. Fbio de Souza Freitas analisou o problema e descobriu a chave que o Sr. Nabor utilizou a resolver o problema: "Esta carta contm a soluo do quebra cabea "Criptoanagnose" que foi apresentado na revista 12. "1~) A chave utilizada pelo Sr. Nabor 1984. "~) A mensagem foi decodificada no programa da pgina 33 da revista 12 (TK-decriptgrafo) e est mostrada na figura 1.

Neste ms recebemos duas respostas ao quebra-cabea proposto na revista 12: Criptoanagnose. A primeira delas, enviada por Mrio M. Monteiro, apesar de correta a interpretao da mensagem, no acertou o

...

-..

. lJIll<

Rober(:J. Verzello, Joh" Re Coordenador: Jorge da Cunha Pereira Filho - Editora Campus
A obra "Computadores para Usurios" est dividida em quatro volumes e destina-se a profissionais, tanto da alta administrao, como dos nveis intermedirios e supervisores. So livros de cunho informativo abrangente, que cobrem desde a aplicao dos computadores nas principais reas, passando pela descrio dos equipamentos (hard/ ware) e dos programas (softwarel, at a metodologia de seleo de computadores, com o intuito de fornecer o maior nmero de informaes no menor espao possvel. , Para facilitar o aprofundamento nos assuntos de maior interesse do leitor, ou mesmo aqueles no tratados de forma satisfatria, os livros apresentam uma bibliografia para consulta. Alm de til aos profissionais da rea, os livros funcionam como fonte de pesquisa para estudantes cujo currculum escolar inclua processamento de dados. Para a elaborao da obra, o autor contou com o apoio de profissionais e professores com atuao em uma ou mais reas especficas, os quais descreveram um panorama geral de cada assunto. S.A.M.

,'lIvro iflicia-se com um pref~ciq, onde os autores, resumidamente; introduzem o I~itor, aO,Prqeessarnento d~, Dados; Neste,> . II'Mntato, o :flvfo fornece,'l'Iao,le.l :or.(na acerca: da ImPort{'lsiadoH:pr"ce~ da-informaes em-organizaes'm 8.rpask e os prinipis :cohceitos doProc~mento 1eDados~ F. , cqmq os anteriores, UJ'I1- guia;reducadores. e@p~Qfi~iOnaisd fea.l1!/Os ~tor~s afrrnah;-no prefcio que' dois volumes.<fo .Iivro,-destina ~ ~. "I, . .iwcerUj,Tl8 . cade, con "JILcm/foofe1Marti.n MoNft Stelien C:oo.e!! coloca tertigad~s c . -; temas, _da .qcessamento,. omp~h . "Bastante procurado pelQstador~ e feils dprogra,mao-,-4' !oApple, este guia traz todas ,e/!l pe!:spectlvasman~~vei~, indepen- . rpa6es n~tias .:Ie utillzamldentes de rli~dwareQU SQft- : crooIDPu,ador Apj:>le 11.Olvro possue- X"re? Dentr itivQsd~!!IiVro'~s+: oito caj:>itulm~/Os primeiros falafU4sobre tacam-se: Pfover o;luno c.om'Conceitos_ oil?rdwitre-dp/Appfe 11 eo~ de/!l8,i$pros~ bsicos para.,O.est\.loo1'doproceSSamen~l#0 -segueM jabOrdando-?1,;temas -tomo: Proc to dedadlSs;:equip:..Io com ferramentas 'gramando aro BASle; 09ravado.r: cas- que '" - - ,aplicaes_e-, COntigusete; Carre-gando e rodanlo Ul1Jprograo .. ~ ..e especificas; most{ , ma; Modo i.mediato eprgramaoo;:olfie ok~~/'lif~ca~,de tra.du-zirgrafica~e~ i/mapdos do"BA~IC; Fun'1S; ~Jia~dan. 't-a 10glsa.qQ~ pr-ocedlrpentos; preparac do. dados em ca~e; s!ster-n~ o~- .,;!o :pra~s flovas nfases,,"~ inqstriae ciOt em disco; Grficos"(ja'alta reSo~ InformariJi'5obre as tecnologlas comas l!Jo; M9nitor de linguage.mde,mlui-. quais,oaluf)tl certrnente ent1'ar m
o"
F

os"

o.'

O,~elo.

.,

'soQtai~;

.,

Você também pode gostar