Wikipedia:Reference desk/Archives/Computing/2015 March 24

Computing desk
< March 23 << Feb | March | Apr >> March 25 >
Welcome to the Wikipedia Computing Reference Desk Archives
The page you are currently viewing is an archive page. While you can leave answers for any questions shown below, please ask new questions on one of the current reference desk pages.


March 24

edit

Quest about jkflip flops and transition state diagramsg

edit

_____So there are four inputs QdQcQbQa. I did the Karnaugh maps. But now how do I find the controls required by flip flops Jd Kd Jc Kc Jb Kb Ja Ka so that it goes to the next state. Lets say for example if Qa is the ones and Qd is the eights and we need to make a state transition table that also shows the controls required for the flip flops. and the counter is to the Fibonacci sequence from1 to 13 such that QdQcQbQa= 0001(one) to 2 (0010) , to 3 (0011), to 5 (0101) to 8 (1000) to 13 (1101), then repeat to 0001. how would one then create a state transition diagram then.

Note I do not understand what the teacher teaches in class because he teaches us things in backwards, unlike how it is suppose to be abcd he tells us that a is not the 8s but the ones a d is not the ones but the 8s.

The counter only uses a JK flip flop and no other type of flip flop.

Help? Please?Doorknob747 (talk) 00:15, 24 March 2015 (UTC)[reply]

I'm not sure I understand your statement of the problem, so I'll paraphrase. You have four flipflops, whose values at a given moment are the four Q bits. I assume the flipflops are "clocked" (if that's the word I want – it's been a long time since I thought about flipflops) by the counter input, so their JK inputs have no effect except when the counter triggers.
Each J and each K then depends only on the four Q bits, but 10 of the 16 values never happen, so there are many don't-cares in the Karnaugh map, which makes your logic simpler! The state transition graph is simply a cycle of the six Fibonacci values.
Before we go any further, please confirm that my paraphrase is accurate, and tell us what you've done so far. —Tamfang (talk) 07:41, 24 March 2015 (UTC)[reply]
Yes it is correct the paraphrasing that you just said. Doorknob747 (talk) 17:43, 24 March 2015 (UTC)[reply]
I will just comment here that there is no "right" association between the various flip-flops and bit values. Back in the day where we used flip-flops that came two to a 14- or 16-pin DIP, which flip-flop in which package was used for which bit was dictated more by what would make for a convenient printed circuit layout than any "obviously correct" relationship. The electrons don't care. Don't know where you learned that Qa is "supposed" to be the 1-valued bit, but there is no such association. You may be generalizing too much from an example you saw somewhere. I agree with you that Qa being the least significant bit makes more sense (if only because if in the future you add more bits, you don't have to re-assign all the others), but it's really just arbitrary. Jeh (talk) 10:03, 24 March 2015 (UTC)[reply]
Taking the first transition as an example, to make state 0001 change to 0010, the four JK inputs must make the four Q outputs do this: 0→0, 0→0, 0→1, 1→0 (that's Qd, Qc, Qb, Qa, respectively). Therefore the JK inputs have to be: 0x, 0x, 1x, x1 (again, d to a, where x = don't care), and those values are the result of the current state (0001). Repeating this approach for each of the defined states produces a table of JK values, and the control circuit consists of logic found from eight separate Karnaugh maps. As has been said, it does not make any difference whether the Q values are labeled ABCD or DCBA. Johnuniq (talk) 22:53, 24 March 2015 (UTC)[reply]
Do you care what happens if Q is not a Fibonacci number, e.g. if it's randomly initialized? —Tamfang (talk) 05:37, 25 March 2015 (UTC)[reply]
Now it is asking if one were to do it via a multipxer for Jd and Kd thru Ja and Ka and each gerated by using a multiplexer that is a 8 to 1 line multiplexer for each J and K controll. it says to write down the 8 input lines of each multiplxer, including alternatives. It says the least significant address lines is the ones and is connected to Qa and the most significant the fours, adress line is for each multiplexer is Qc. It states that Qb is connected to the twos adress lines in each case.

please helpDoorknob747 (talk) 16:29, 25 March 2015 (UTC)[reply]

Doesn't including a copy of the GNU General Public License (whose text cannot be modified) in a program make the program non-free? --Ricordisamoa 11:22, 24 March 2015 (UTC)[reply]

How do you define "free"? If you follow the definition provided by the Free Software Foundation (the same people who wrote the GNU General Public License), then releasing software using the GPL license is free. Other people may choose to use different definitions. Many people find that it is difficult to comply with license requirements of the GPL: they may choose to describe the requirements as "restrictive" of their freedoms, but that is in opposition to the way that the license uses the term.
Also, simply including the license text with the distribution may be legally distinct from actually licensing the software using this license. You may wish to consult an attorney on that point.
Nimur (talk) 15:20, 24 March 2015 (UTC)[reply]
OP, is what is being asked: if a package which includes the full text of the GPL (either as a text file within the package, or embedded within an executable, so for instance the user can run MyProgram --license), then this is one part of the package which someone distributing a modified version isn't allowed to modify. Is this fact compatible with the GPL which requires that people are able to distribute modified versions? davidprior t/c 22:52, 25 March 2015 (UTC)[reply]
Exactly, thanks for clarifying. --Ricordisamoa 03:48, 26 March 2015 (UTC)[reply]

All OSS software is free?

edit

Is all open-source software freeware? I have seen some people sell OSS, but is this illegal? RocketMaster (talk) 13:38, 24 March 2015 (UTC)[reply]

Most common open source licences require that there are no restrictions on commercial usage of the source code, some would even suggest it's essential to be truly open source. So anyone is free to sell the software. However if it's a copyleft licence, then they would need to make their source code available, so anyone else is free to give it away for free, or sell it themselves. If it's not a copyleft licence, or if they otherwise include some proprietary code which is allowed by the licence, then it isn't completely open source any more. The more effective way to make money off truly open source software tends to be via offering support, which may include fixing bugs etc. Of course, since anyone is free to compete with you in doing so, you may need to make sure you offer value for money. (In practice, reputational inertia and luck, and other factors will likely still come in to play.) Nil Einne (talk) 13:45, 24 March 2015 (UTC)[reply]
One additional point I realised I forgot to mention. Even with copyleft licenced software, it may be possible for a proprietary version to exist. The copyleft licence will only affect those that need to obey the licence. Anyone who owns the copyright to the entire code can also licence it however they wish besides the copyleft licence. (I.E. the original programmers if they don't accept third party changes, or if they do but require copyright assignment.) So they could make a version which has additional stuff (or whatever) but is proprietary. But similar to the case of a non copyleft licence or other case where it was done in accordance with the licence, we aren't talking about selling an open source work any more, but instead selling a work which also has a version which is open source. Nil Einne (talk) 13:43, 28 March 2015 (UTC)[reply]
Richard Stallman's essay, Why Open Source misses the point of Free Software, explains the distinction from the perspective of the Free Software Foundation.
It is usually legal to sell free software and it is sometimes legal to sell open-source software. Among all the liabilities you must consider, you should carefully review the license terms for each piece of software. If you need more certainty about specific instances, you should consult an attorney. Nimur (talk) 15:25, 24 March 2015 (UTC)[reply]
See also Permissive_free_software_licence, MIT license, and BSD license. Have you heard people discuss "free as in freedom, not free as in beer?" If not, you could also read Gratis versus libre. Short answer: it is perfectly legal to sell many types of open source software. Each license works differently. Sometimes people sell support along with the software, other times they just charge a minimal fee for copying/distribution services. SemanticMantis (talk) 17:11, 24 March 2015 (UTC)[reply]
Almost all OSS licenses would allow someone to sell the software. However, many of those licenses generally require (or at least allow) that the source code for the software be available for use without restrictions - so the question is: Why anyone would buy software that they can get for free? Generally, they do that because they want convenience of packaging on DVD's or some simplified installation mechanism - or perhaps because after-sales service of some kind is offered.
The ikky grey area is when someone takes a piece of free software and modifies it in some manner before selling it.
With software licenses such as the GNU GPL, there is a requirement that someone who does this ALSO offers the source code with the modifications made to it to everyone who buys (or is given) that modified version. Clearly, the purchaser could then (perfectly legally) give the code away for free - so the guy who did the modifications might well only sell one or a few of that version before it would be 'out there' for people to get for free.
With other licenses, there is no such restriction - leaving open the possibility that an OSS package might be modified and slightly improved - and then sold commercially WITHOUT the source code and WITHOUT rights to redistribute. While the original version would still be available - a spiralling popularity of the modified version could become (in effect) "closed source". This has happened numerous times.
A good example of a company selling OSS code is with the Flightgear flight simulator package. It's free, you can just download it for Windows, Mac and Linux - it works great! Yet ProFlight is selling it for $49. There may be a few small changes made by the ProFlight people - but for sure, at least 99% of the code is OSS. They aren't breaking the law - but (IMHO), they are not playing nice with their customers.
SteveBaker (talk) 19:49, 24 March 2015 (UTC)[reply]

Simple GPS module

edit

Is there a minimalistic GPS that's reliable and sensitive? I am trying to find something with just a button that outputs two coordinates. No maps, no routes no extras. If it is something that can be plugged to an electronic device (preferably through USB), than even better. Fend 83 (talk) 18:50, 24 March 2015 (UTC)[reply]

Maybe a GPS watch? This one from Garmin has no maps, but it does allow for wireless data transfer to a computer [1]. SemanticMantis (talk) 19:03, 24 March 2015 (UTC)[reply]
(REVISED!) THIS is a GPS module (costs $40) and THIS is an interface (costs $15) that plugs into an Arduino board (costs $5 to $30 depending on what you need and where you buy it from)...there is doubtless some kind of example code for it that would allow you to output the coordinates to USB. You'll need some minimal software skills to hook that up to a push-button - but it's not rocket science. The whole thing could run on batteries or get power from the USB. SteveBaker (talk) 19:33, 24 March 2015 (UTC)[reply]
Yes that's what I wanted exactly. The watch recommendation above might be a fine product, but kind of pricey and let's you little flexibility to adapt it to your needs. Fend 83 (talk) 21:24, 24 March 2015 (UTC)[reply]